diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
new file mode 100644
index 000000000000..9690aae5f9d3
--- /dev/null
+++ b/.devcontainer/Dockerfile
@@ -0,0 +1,21 @@
+FROM mcr.microsoft.com/mirror/docker/library/ubuntu:22.04
+
+RUN apt-get -y update && apt upgrade -y && apt install curl -y
+RUN apt-get -y install git
+
+# install node and npm
+RUN curl -sL https://deb.nodesource.com/setup_16.x | bash -
+RUN apt -y install nodejs
+RUN npm install -g npm@9.5.0
+
+# install oav tool
+RUN npm install -g oav@latest
+
+# install powershell
+RUN apt-get update && apt-get install -y wget
+RUN wget -q https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
+RUN dpkg -i packages-microsoft-prod.deb
+RUN apt-get update
+RUN apt-get install -y powershell
+
+ENTRYPOINT ["/bin/bash"]
\ No newline at end of file
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
new file mode 100644
index 000000000000..40c62a85507f
--- /dev/null
+++ b/.devcontainer/devcontainer.json
@@ -0,0 +1,12 @@
+{
+ "name": "TypeSpec Dev Container",
+ "build": {
+ "dockerfile": "Dockerfile"
+ },
+ "remoteUser": "root"
+ /*,
+ update below source folder to your local sdk-repos folder
+ "mounts": [
+ "source=/home/rc/repos/tmp/sdk-repos,target=/workspaces/sdk-repos,type=bind,consistency=cached"
+ ]*/
+}
\ No newline at end of file
diff --git a/.gitattributes b/.gitattributes
index 4cab1f4d2676..6f1751c1ef3c 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,2 +1,2 @@
-# Set the default behavior, in case people don't have core.autocrlf set.
-* text=auto
+# Use unix line endings always, even on Windows
+* text=auto eol=lf
diff --git a/.github/PULL_REQUEST_TEMPLATE/ARM_spec_pr_review_workflow_diagram.png b/.github/PULL_REQUEST_TEMPLATE/ARM_spec_pr_review_workflow_diagram.png
new file mode 100644
index 000000000000..bc0b9ca30000
Binary files /dev/null and b/.github/PULL_REQUEST_TEMPLATE/ARM_spec_pr_review_workflow_diagram.png differ
diff --git a/.github/PULL_REQUEST_TEMPLATE/control_plane_template.md b/.github/PULL_REQUEST_TEMPLATE/control_plane_template.md
index b467bfe8173b..ce508575154b 100644
--- a/.github/PULL_REQUEST_TEMPLATE/control_plane_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/control_plane_template.md
@@ -1,5 +1,21 @@
# ARM (Control Plane) API Specification Update Pull Request
+## PR review workflow diagram
+
+Please understand this diagram before proceeding. It explains how to get your PR approved & merged.
+
+
+
+[1] [ARM review queue] (for **merge** queues, see [4])
+The PRs are processed by time opened, ascending. Your PR may show up on 2nd or later page.
+If you addressed Step 1 from the diagram and your PR is not showing up in the queue, ensure the label `ARMChangesRequested`
+is removed from your PR. This should cause the label `WaitForARMFeedback` to be added.
+[2] https://aka.ms/azsdk/support/specreview-channel
+[3] [List of SDK breaking changes approvers] in pinned Teams announcement
+[4] [public repo merge queue], [private repo merge queue] (for **ARM review** queue, [1])
+
+If you need further help with anything, see `Getting help` section below.
+
## Purpose of this PR
What's the purpose of this PR? Check all that apply. This is **mandatory**!
@@ -15,27 +31,47 @@ What's the purpose of this PR? Check all that apply. This is **mandatory**!
To merge this PR, you **must** go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:
-- [ ] I have reviewed the general guidance on the spec PR review process: https://aka.ms/specprreview.
-- [ ] I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data-plane related specifications.
-- [ ] I commit to follow the [Breaking Change Policy](https://aka.ms/AzBreakingChangesPolicy).
+- [ ] I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
- [ ] I have reviewed following [Resource Provider guidelines](https://aka.ms/rpguidelines), including
[ARM resource provider contract](https://github.com/Azure/azure-resource-manager-rpc) and
[REST guidelines](https://github.com/microsoft/api-guidelines/blob/vNext/azure/Guidelines.md) (estimated time: 4 hours).
- I understand this is required before I can request review from an ARM API Review board.
+ I understand this is required before I can proceed to Step 2, "ARM Review", for this PR.
+
+### Breaking changes review (Step 1)
-### ARM API changes review
+- If the automation determines you have breaking changes, i.e. Step 1 from the diagram applies to you,
+ you must follow the [breaking changes process].
+ **IMPORTANT** This applies even if:
+ - The tool fails while it shouldn't, e.g. due to runtime exception, or incorrect detection of breaking changes.
+ - You believe there is no need for you to request breaking change approval, for any reason.
+ Such claims must be reviewed, and the process is the same.
-- If you want for the ARM team to review this PR, you must add the `ARMReview` label.
-- The automation may automatically add the `ARMReview` label, if appropriate.
- If this happens, proceed according to guidance given in GitHub comments also added by the automation.
+### ARM API changes review (Step 2)
-### Breaking change review
+- If this PR is in purview of ARM review then automation will add the `ARMReview` label.
+- If you want to force ARM review, add the label yourself.
+- Proceed according to the diagram at the top of this comment.
+
+## Viewing API changes
+
+For convenient view of the API changes made by this PR, refer to the URLs provided in the table
+in the `Generated ApiView` comment added to this PR. You can use ApiView to show API versions diff.
+
+## Suppressing failures
+
+If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
+[Swagger-Suppression-Process](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/85/Swagger-Suppression-Process)
+to get approval.
-If you have any breaking changes as defined in the [Breaking Change Policy](https://aka.ms/AzBreakingChangesPolicy/),
-follow the process outlined in the [High-level Breaking Change Process doc](https://aka.ms/breakingchangesprocess#high-level-breaking-change-process).
-
## Getting help
+- For general PR approval workflow, see the diagram at the top of this comment.
- For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
and https://aka.ms/ci-fix.
-- For additional help, see https://aka.ms/azsdk/support/spectools.
+- If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.
+
+[ARM review queue]: https://github.com/search?q=org%3AAzure+is%3Apr+is%3Aopen+label%3AWaitForARMFeedback+-label%3AIDCDevDiv++draft%3Afalse+sort%3Acreated-asc+&type=pullrequests
+[List of SDK breaking changes approvers]: https://teams.microsoft.com/l/message/19:0351f5f9404446e4b4fd4eaf2c27448d@thread.skype/1689115217750?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&parentMessageId=1689115217750&teamName=Azure%20SDK&channelName=API%20Spec%20Review&createdTime=1689115217750
+[public repo merge queue]: https://github.com/Azure/azure-rest-api-specs/pulls?q=is%3Aopen+is%3Apr+label%3AMergeRequested+draft%3Afalse+sort%3Acreated-asc
+[private repo merge queue]: https://github.com/Azure/azure-rest-api-specs-pr/pulls?q=is%3Aopen+is%3Apr+label%3AMergeRequested+-label%3AApproved-OkToMerge+draft%3Afalse+sort%3Acreated-asc
+[breaking changes process]: https://eng.ms/docs/cloud-ai-platform/azure-core/azure-core-pm-and-design/trusted-platform-pm-karimb/service-lifecycle-and-actions-team/service-lifecycle-actions-team/apex/media/launchingproductbreakingchanges#breaking-change-process-1
diff --git a/.github/PULL_REQUEST_TEMPLATE/data_plane_template.md b/.github/PULL_REQUEST_TEMPLATE/data_plane_template.md
index 6ad825ad7687..ab83cfdaf7a2 100644
--- a/.github/PULL_REQUEST_TEMPLATE/data_plane_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/data_plane_template.md
@@ -13,11 +13,23 @@ Is this review for (select one):
- [ ] GA release
### Change Scope
+
This section will help us focus on the specific parts of your API that are new or have been modified.
Please share a link to the design document for the new APIs, a link to the previous API Spec document (if applicable), and the root paths that have been updated.
* Design Document:
* Previous API Spec Doc:
* Updated paths:
+### Viewing API changes
+
+For convenient view of the API changes made by this PR, refer to the URLs provided in the table
+in the `Generated ApiView` comment added to this PR. You can use ApiView to show API versions diff.
+
+### Suppressing failures
+
+If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
+[Swagger-Suppression-Process](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/85/Swagger-Suppression-Process)
+to get approval.
+
## ❔Got questions? Need additional info?? We are here to help!
@@ -33,16 +45,19 @@ The [Azure API Review Board](https://aka.ms/azsdk/onboarding/restapischedule) is
Click here for links to tools, specs, guidelines & other good stuff
### Tooling
+
* [Open API validation tools](https://aka.ms/swaggertools) were run on this PR. Go here to see [how to fix errors](https://aka.ms/ci-fix)
* [Spectral Linting](https://aka.ms/style)
* [Open API Hub](https://aka.ms/openapiportal)
### Guidelines & Specifications
+
* [Azure REST API Guidelines](https://aka.ms/guidelines)
* [OpenAPI Style Guidelines](https://aka.ms/style)
* [Azure Breaking Change Policy](https://aka.ms/AzBreakingChangesPolicy)
### Helpful Links
+
* [Azure DevTools Wiki](https://aka.ms/azapi)
diff --git a/.github/comment.yml b/.github/comment.yml
index 8aa186e561e8..68f003c1d535 100644
--- a/.github/comment.yml
+++ b/.github/comment.yml
@@ -1,61 +1,4 @@
---
-- rule:
- type: label
- label: BreakingChangeReviewRequired
- booleanFilterExpression: "!(Approved-OkToMerge)"
- onLabeledComments: >-
- Hi @${PRAuthor}! The automation detected breaking changes in this pull request.
- As a result, it added the `BreakingChangeReviewRequired` label.
-
- You cannot proceed with merging this PR until you complete one of the following action items:
-
- **ACTION ITEM ALTERNATIVE A**: Fix the breaking change.
- Please consult the documentation provided in the relevant validation failures.
-
- **ACTION ITEM ALTERNATIVE B**: Request approval.
- Alternatively, if you cannot fix the breaking changes, then you can request an approval for them.
- Please follow the process described in the
- [High-level Breaking Change Process doc](https://aka.ms/breakingchangesprocess#high-level-breaking-change-process).
-
- **ACTION ITEM ALTERNATIVE C**: Report false positive.
- If you think there are no breaking changes,
- i.e. the validation should pass yet it fails,
- then please explain why in a PR comment and @ the PR assignee.
-
-- rule:
- type: label
- label: NewApiVersionRequired
- booleanFilterExpression: "!(Approved-OkToMerge)"
- onLabeledComments: >-
- Hi @${PRAuthor}! The automation detected this pull request introduces changes
- to at least one existing API version that violate Azure's versioning policy.
- To comply with the policy, these changes must be made in a new API version.
- As a result, the automation added the `NewApiVersionRequired` label.
-
- You cannot proceed with merging this PR until you complete one of the following action items:
-
- **ACTION ITEM ALTERNATIVE A**: Introduce a new API version.
- Submit a new PR instead of this one, or modify this PR,
- so that it adds a new API version instead of introducing changes to existing API versions.
-
- **ACTION ITEM ALTERNATIVE B**: Request approval.
- Alternatively, if you cannot avoid modifying existing API versions,
- then you can request an approval for them.
- Please follow the process described in the
- [High-level Breaking Change Process doc](https://aka.ms/breakingchangesprocess#high-level-breaking-change-process).
-
- **ACTION ITEM ALTERNATIVE C**: Report false positive.
- If you think there are no changes in existing API version,
- i.e. there should be no `NewApiVersionRequired` label,
- then please explain why in a PR comment and @ the PR assignee.
-
- For additional guidance, please see https://aka.ms/NewApiVersionRequired
-
-- rule:
- type: label
- label: SuppressionReviewRequired
- onLabeledComments: "Hi @${PRAuthor}, one or multiple validation error/warning suppression(s) is detected in your PR. Please follow the [Swagger-Suppression-Process](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/85/Swagger-Suppression-Process) to get approval."
-
- rule:
type: label
label: "CI-MissingBaseCommit"
@@ -76,11 +19,14 @@
label: Approved-OkToMerge
onLabeledComments: >-
Hi @${PRAuthor}! Your PR is approved. Congratulations. :partying_face::rocket:
-
If this PR is targeting 'main' branch, then it cannot be merged, as azure-rest-api-specs-pr repo 'main' branch is mirrored from azure-rest-api-specs 'main' branch.
- If you want to publish the PR to the public repo (Azure/azure-rest-api-specs) 'main' branch,
+
+ If this PR is targeting `main` branch, then it cannot be merged, as `azure-rest-api-specs-pr` repo `main` branch
+ is mirrored from `azure-rest-api-specs` `main`` branch.
+ If you want to publish the PR to the public repo (`Azure/azure-rest-api-specs`) `main` branch,
please use [OpenAPIHub Publish PR](${openapiHub}/tools/publishpullrequest?pr=${owner}/${repo}/${PRNumber}&to=${to}).
-
- For further guidance on how to proceed please refer to this [wiki doc](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/205/RP-Scenarios-to-Contribute-to-Swagger?anchor=**public-repository-vs.-private-repository**).
+
+ For further guidance on how to proceed please refer to this
+ [wiki article](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/205/RP-Scenarios-to-Contribute-to-Swagger?anchor=**public-repository-vs.-private-repository**).
- rule:
@@ -98,36 +44,11 @@
label: ArcReview
onLabeledComments: "Hi @${PRAuthor} and @arcboard, one or more change(s) have been detected in your Arc enabled VM's or Arc enabled Server's RPs. Please review the changes and ensure that no gaps have been introduced with respect to the ARM API modeling consistency across Azure Arc and Azure Compute. For further details, see guidelines at [Consistency in ARM Modeling](https://msazure.visualstudio.com/One/_wiki/wikis/One.wiki/377428/Consistency-in-ARM-Modeling?anchor=general-design-guidance). To approve the change(s), set the label to ArcSignedOff. If you have any questions, please mail to arcboard@microsoft.com."
-- rule:
- type: label
- label: CI-FixRequiredOnFailure
- onLabeledComments: >-
- Hi @${PRAuthor}! Your PR has some issues. Please fix the CI issues, **if present**, in following order: `Avocado, SemanticValidation, ModelValidation, Breaking Change, LintDiff`.
-
- | Task | How to fix | Priority |
- | Avocado | [Fix-Avocado](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/ci-fix.md#avocado) | High |
- | Semantic Validation | [Fix-SemanticValidation-Error](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/ci-fix.md#semantic-validation) | High |
- | Model Validation | [Fix-ModelValidation-Error](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/ci-fix.md#model-validation) | High |
- | LintDiff | [Fix-LintDiff](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/ci-fix.md#lintdiff-validation) | High |
-
- If you need further help, please reach out on the Teams channel [aka.ms/azsdk/support/specreview-channel](https://aka.ms/azsdk/support/specreview-channel).
-
- rule:
type: label
label: new-rp-namespace
onLabeledComments: "Hi, @${PRAuthor}, our workflow has detected that there is no management SDK ever released for your RP, to further process SDK onboard for your RP, you should have the SDK client library name of your RP reviewed and approved. Action Required: Follow this guidance [Naming for new initial management or client libraries (new SDKs) - Overview (azure.com)](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/821/Naming-for-new-initial-management-or-client-libraries-(new-SDKs)) to create an issue for management client library name arch board review. Paste the issue link that you created in step 1 in this PR Impact: SDK release owner will take the approved management client library name to release SDK. No client library name approval will leads to SDK release delayed."
-- rule:
- type: PROpen
- variables:
- openapiHub: https://aka.ms/openapihub
- onOpenedComments: >-
- Hi, @${PRAuthor}! Thank you for your pull request. To help get your PR merged:
- - Ensure you reviewed the checklists in the PR description.
- - Know that PR assignee is the person auto-assigned and responsible for your current PR review and approval.
- - For convenient view of the API changes made by this PR, refer to the URLs provided in the table in
- the `Generated ApiView` comment added to this PR. You can use ApiView to show API versions diff.
-
- rule:
type: checkbox
keywords:
@@ -160,13 +81,12 @@
type: label
label: ARMChangesRequested
onLabeledComments: >-
- Please address or respond to feedback from the ARM API reviewer.
- When you are ready to continue the ARM API review, please remove the `ARMChangesRequested` label.
+ Please address or respond to feedback from the ARM API reviewer.
+ When you are ready to continue the ARM API review, please remove the `ARMChangesRequested` label.
This will notify the reviewer to have another look.
If the feedback provided needs further discussion, please use this Teams channel to post your questions -
- https://aka.ms/azsdk/support/specreview-channel.
- Please indicate that this is an ARM-related question in the title of your post by including "[ARM Query]"
- in the title.
+ [aka.ms/azsdk/support/specreview-channel](https://aka.ms/azsdk/support/specreview-channel).
+ Please include `[ARM Query]` in the title of your question to indicate that it is ARM-related.
onLabeledRemoveLabels:
- WaitForARMFeedback
diff --git a/.github/fabricbot.json b/.github/fabricbot.json
deleted file mode 100644
index 924817095779..000000000000
--- a/.github/fabricbot.json
+++ /dev/null
@@ -1,4976 +0,0 @@
-{
- "version": "1.0",
- "tasks": [
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "taskName": "Add needs triage label to new issues",
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "opened"
- }
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "isPartOfProject",
- "parameters": {}
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "isAssignedToSomeone",
- "parameters": {}
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "isLabeled",
- "parameters": {}
- }
- ]
- }
- ]
- },
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "needs-triage"
- }
- }
- ],
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ]
- },
- "disabled": false
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssueCommentResponder",
- "version": "1.0",
- "config": {
- "taskName": "Replace needs author feedback label with needs attention label when the author comments on an issue",
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "created"
- }
- },
- {
- "name": "isActivitySender",
- "parameters": {
- "user": {
- "type": "author"
- }
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "needs-author-feedback"
- }
- },
- {
- "name": "isOpen",
- "parameters": {}
- }
- ]
- },
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "needs-team-attention"
- }
- },
- {
- "name": "removeLabel",
- "parameters": {
- "label": "needs-author-feedback"
- }
- }
- ],
- "eventType": "issue",
- "eventNames": [
- "issue_comment"
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "taskName": "Remove no recent activity label from issues",
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "operator": "not",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "closed"
- }
- }
- ]
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ]
- },
- "actions": [
- {
- "name": "removeLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ],
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssueCommentResponder",
- "version": "1.0",
- "config": {
- "taskName": "Remove no recent activity label when an issue is commented on",
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ]
- },
- "actions": [
- {
- "name": "removeLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ],
- "eventType": "issue",
- "eventNames": [
- "issue_comment"
- ]
- }
- },
- {
- "taskType": "scheduled",
- "capabilityId": "ScheduledSearch",
- "subCapability": "ScheduledSearch",
- "version": "1.1",
- "config": {
- "taskName": "Close stale issues",
- "frequency": [
- {
- "weekDay": 0,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 1,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 2,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 3,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 4,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 5,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 6,
- "hours": [
- 1
- ],
- "timezoneOffset": -7
- }
- ],
- "searchTerms": [
- {
- "name": "isIssue",
- "parameters": {}
- },
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "needs-author-feedback"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "noActivitySince",
- "parameters": {
- "days": 14
- }
- }
- ],
- "actions": [
- {
- "name": "closeIssue",
- "parameters": {}
- }
- ]
- }
- },
- {
- "taskType": "scheduled",
- "capabilityId": "ScheduledSearch",
- "subCapability": "ScheduledSearch",
- "version": "1.1",
- "config": {
- "taskName": "Add no recent activity label to issues",
- "frequency": [
- {
- "weekDay": 0,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 1,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 2,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 3,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 4,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 5,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 6,
- "hours": [
- 1,
- 7,
- 13,
- 19
- ],
- "timezoneOffset": -7
- }
- ],
- "searchTerms": [
- {
- "name": "isIssue",
- "parameters": {}
- },
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "needs-author-feedback"
- }
- },
- {
- "name": "noActivitySince",
- "parameters": {
- "days": 7
- }
- },
- {
- "name": "noLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ],
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "addReply",
- "parameters": {
- "comment": "Hi, we're sending this friendly reminder because we haven't heard back from you in a while. We need more information about this issue to help address it. Please be sure to give us your input within the next **7 days**. If we don't hear back from you within **14 days** of this comment the issue will be automatically closed. Thank you!"
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "labeled"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "needs-triage"
- }
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "labelAdded",
- "parameters": {
- "label": "needs-triage"
- }
- }
- ]
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ],
- "taskName": "Remove needs-triage label on issues once they are labeled",
- "actions": [
- {
- "name": "removeLabel",
- "parameters": {
- "label": "needs-triage"
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssueCommentResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "operator": "not",
- "operands": [
- {
- "name": "isOpen",
- "parameters": {}
- }
- ]
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "created"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "needs-author-feedback"
- }
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "noActivitySince",
- "parameters": {
- "days": 7
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "isCloseAndComment",
- "parameters": {}
- }
- ]
- },
- {
- "name": "isActivitySender",
- "parameters": {
- "user": {
- "type": "author"
- }
- }
- },
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "permissions": "none"
- }
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issue_comment"
- ],
- "taskName": "For issues closed due to inactivity, re-open an issue if issue author posts a reply within 7 days.",
- "actions": [
- {
- "name": "reopenIssue",
- "parameters": {}
- },
- {
- "name": "removeLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "removeLabel",
- "parameters": {
- "label": "needs-author-feedback"
- }
- },
- {
- "name": "addLabel",
- "parameters": {
- "label": "needs-team-attention"
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssueCommentResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "created"
- }
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "isOpen",
- "parameters": {}
- }
- ]
- },
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "permissions": "none"
- }
- },
- {
- "name": "noActivitySince",
- "parameters": {
- "days": 7
- }
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "isCloseAndComment",
- "parameters": {}
- }
- ]
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issue_comment"
- ],
- "taskName": "For issues closed with no activity over 7 days, ask non-contributor to consider opening a new issue instead.",
- "actions": [
- {
- "name": "addReply",
- "parameters": {
- "comment": "Thank you for your interest in this issue! Because it has been closed for a period of time, we strongly advise that you open a new issue linking to this to ensure better visibility of your comment. "
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "customer-reported"
- }
- },
- {
- "name": "labelRemoved",
- "parameters": {
- "label": "Service Attention"
- }
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ],
- "taskName": "Add label after \"Service Attention\" is removed",
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "needs-team-triage"
- }
- }
- ]
- }
- },
- {
- "taskType": "scheduled",
- "capabilityId": "ScheduledSearch",
- "subCapability": "ScheduledSearch",
- "version": "1.1",
- "config": {
- "frequency": [
- {
- "weekDay": 0,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 1,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 2,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 3,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 4,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 5,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 6,
- "hours": [
- 1,
- 4,
- 7,
- 10,
- 13,
- 16,
- 19,
- 22
- ],
- "timezoneOffset": -7
- }
- ],
- "searchTerms": [
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "MySQL"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "Service Attention"
- }
- },
- {
- "name": "noAssignees",
- "parameters": {}
- }
- ],
- "taskName": "Assign service attention issues to mentionees for MySQL (requested by service team)",
- "actions": [
- {
- "name": "assignToGitHubUserGroup",
- "parameters": {
- "groupId": "5f074b894200c210c870e0fd"
- }
- }
- ]
- }
- },
- {
- "taskType": "scheduled",
- "capabilityId": "ScheduledSearch",
- "subCapability": "ScheduledSearch",
- "version": "1.1",
- "config": {
- "frequency": [
- {
- "weekDay": 0,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 1,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 2,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 3,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 4,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 5,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- },
- {
- "weekDay": 6,
- "hours": [
- 2,
- 5,
- 8,
- 11,
- 14,
- 17,
- 20,
- 23
- ],
- "timezoneOffset": -7
- }
- ],
- "searchTerms": [
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "MariaDB"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "Service Attention"
- }
- },
- {
- "name": "noAssignees",
- "parameters": {}
- }
- ],
- "taskName": "Assign service attention issues to mentionees for MariaDB (requested by service team)",
- "actions": [
- {
- "name": "assignToGitHubUserGroup",
- "parameters": {
- "groupId": "5f074b894200c210c870e0fd"
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "opened"
- }
- },
- {
- "operator": "and",
- "operands": [
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "association": "MEMBER",
- "permissions": "write"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasAssociation",
- "parameters": {
- "association": "MEMBER"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasAssociation",
- "parameters": {
- "association": "COLLABORATOR"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "permissions": "admin"
- }
- }
- ]
- }
- ]
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ],
- "taskName": "Add question label to new issues ",
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "question"
- }
- }
- ]
- }
- },
- {
- "taskType": "scheduledAndTrigger",
- "capabilityId": "IssueRouting",
- "subCapability": "@Mention",
- "version": "1.0",
- "config": {
- "labelsAndMentions": [
- {
- "labels": [
- "Service Attention",
- "AKS"
- ],
- "mentionees": [
- "Azure/aks-pm"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Alerts Management"
- ],
- "mentionees": [
- "liadtal",
- "yairgil"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM"
- ],
- "mentionees": [
- "josephkwchan",
- "jennyhunter-msft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM - Templates"
- ],
- "mentionees": [
- "Azure/deployments-owners"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM - Tags"
- ],
- "mentionees": [
- "rthorn17"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM - Core"
- ],
- "mentionees": [
- "josephkwchan",
- "jennyhunter-msft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM - Managed Applications"
- ],
- "mentionees": [
- "MSEvanhi"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM - Service Catalog"
- ],
- "mentionees": [
- "MSEvanhi"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARM - RBAC"
- ],
- "mentionees": [
- "LizMS",
- "cbrooksmsft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Advisor"
- ],
- "mentionees": [
- "mojayara",
- "Prasanna-Padmanabhan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Analysis Services"
- ],
- "mentionees": [
- "athipp",
- "taiwu",
- "minghan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "API Management"
- ],
- "mentionees": [
- "adrianhall",
- "KedarJoshi"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Application Insights"
- ],
- "mentionees": [
- "azmonapplicationinsights"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "App Services"
- ],
- "mentionees": [
- "antcp",
- "AzureAppServiceCLI"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "App Configuration"
- ],
- "mentionees": [
- "jiayi11",
- "avanigupta"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ARO"
- ],
- "mentionees": [
- "mjudeikis",
- "jim-minter",
- "julienstroheker",
- "amanohar"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Attestation"
- ],
- "mentionees": [
- "anilba06"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Authorization"
- ],
- "mentionees": [
- "darshanhs90",
- "AshishGargMicrosoft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Automation"
- ],
- "mentionees": [
- "jaspkaur28"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "AVS"
- ],
- "mentionees": [
- "divka78",
- "amitchat",
- "aishu"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Azure Stack"
- ],
- "mentionees": [
- "sijuman",
- "sarathys",
- "bganapa",
- "rakku-ms"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Batch"
- ],
- "mentionees": [
- "cRui861",
- "paterasMSFT",
- "gingi",
- "dpwatrous",
- "mksuni",
- "bgklein",
- "mscurrell"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "BatchAI"
- ],
- "mentionees": [
- "matthchr"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Billing"
- ],
- "mentionees": [
- "cabbpt"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Blueprint"
- ],
- "mentionees": [
- "alex-frankel",
- "filizt"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Bot Service"
- ],
- "mentionees": [
- "sgellock"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cloud Shell"
- ],
- "mentionees": [
- "maertendMSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Text Analytics"
- ],
- "mentionees": [
- "assafi"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Form Recognizer"
- ],
- "mentionees": [
- "ctstone",
- "anrothMSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Anomaly Detector"
- ],
- "mentionees": [
- "yingqunpku",
- "bowgong"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Custom Vision"
- ],
- "mentionees": [
- "areddish",
- "tburns10"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Computer Vision"
- ],
- "mentionees": [
- "ryogok",
- "TFR258",
- "tburns10"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Face"
- ],
- "mentionees": [
- "JinyuID",
- "dipidoo",
- "SteveMSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - QnA Maker"
- ],
- "mentionees": [
- "bingisbestest",
- "nerajput1607"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Translator"
- ],
- "mentionees": [
- "swmachan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Speech"
- ],
- "mentionees": [
- "robch",
- "oscholz"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - LUIS"
- ],
- "mentionees": [
- "cahann",
- "kayousef"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Content Moderator"
- ],
- "mentionees": [
- "swiftarrow11"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Personalizer"
- ],
- "mentionees": [
- "dwaijam"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Immersive Reader"
- ],
- "mentionees": [
- "metanMSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Ink Recognizer"
- ],
- "mentionees": [
- "olduroja"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Bing"
- ],
- "mentionees": [
- "jaggerbodas-ms",
- "arwong"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cognitive - Mgmt"
- ],
- "mentionees": [
- "yangyuan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Commerce"
- ],
- "mentionees": [
- "ms-premp",
- "qiaozha"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute"
- ],
- "mentionees": [
- "Drewm3",
- "TravisCragg-MSFT",
- "nikhilpatel909",
- "sandeepraichura",
- "hilaryw29",
- "GabstaMSFT",
- "ramankumarlive",
- "ushnaarshadkhan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute - Extensions"
- ],
- "mentionees": [
- "TravisCragg-MSFT",
- "GabstaMSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute - Images"
- ],
- "mentionees": [
- "TravisCragg-MSFT",
- "sandeepraichura"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute - Managed Disks"
- ],
- "mentionees": [
- "TravisCragg-MSFT",
- "ramankumarlive",
- "ushnaarshadkhan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute - RDFE"
- ],
- "mentionees": [
- "Drewm3",
- "TravisCragg-MSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute - VM"
- ],
- "mentionees": [
- "Drewm3",
- "TravisCragg-MSFT",
- "nikhilpatel909",
- "sandeepraichura",
- "hilaryw29",
- "GabstaMSFT"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Compute - VMSS"
- ],
- "mentionees": [
- "TravisCragg-MSFT",
- "hilaryw29"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Connected Kubernetes"
- ],
- "mentionees": [
- "akashkeshari"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Container Instances"
- ],
- "mentionees": [
- "macolso"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Container Registry"
- ],
- "mentionees": [
- "toddysm",
- "luisdlp",
- "northtyphoon"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Container Service"
- ],
- "mentionees": [
- "qike-ms",
- "jwilder",
- "thomas1206",
- "seanmck"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cosmos"
- ],
- "mentionees": [
- "pjohari-ms",
- "MehaKaushik",
- "zfoster",
- "kushagraThapar",
- "simorenoh",
- "simplynaveen20",
- "abinav2307"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Customer Insights"
- ],
- "mentionees": [
- "shefymk"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Custom Providers"
- ],
- "mentionees": [
- "manoharp",
- "MSEvanhi"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "CycleCloud"
- ],
- "mentionees": [
- "adriankjohnson"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Bricks"
- ],
- "mentionees": [
- "arindamc"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "DataBox"
- ],
- "mentionees": [
- "tmvishwajit",
- "matdickson",
- "manuaery",
- "madhurinms"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "DataBox Edge"
- ],
- "mentionees": [
- "a-t-mason",
- "ganzee",
- "manuaery"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Catalog"
- ],
- "mentionees": [
- "ingave"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Factory"
- ],
- "mentionees": [
- "Jingshu923",
- "zhangyd2015",
- "Frey-Wang"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Lake"
- ],
- "mentionees": [
- "sumantmehtams"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Lake Storage Gen1"
- ],
- "mentionees": [
- "sumantmehtams"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Lake Storage Gen2"
- ],
- "mentionees": [
- "sumantmehtams"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Lake Analytics"
- ],
- "mentionees": [
- "idear1203"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Lake Store"
- ],
- "mentionees": [
- "sumantmehtams"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Migration"
- ],
- "mentionees": [
- "radjaram",
- "kavitham10"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Data Share"
- ],
- "mentionees": [
- "raedJarrar",
- "jifems"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "DevOps"
- ],
- "mentionees": [
- "v-anvashist",
- "V-hmusukula"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Dev Spaces"
- ],
- "mentionees": [
- "yuzorMa",
- "johnsta",
- "greenie-msft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Devtestlab"
- ],
- "mentionees": [
- "Tanmayeekamath"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Device Provisioning Service"
- ],
- "mentionees": [
- "nberdy"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Digital Twins"
- ],
- "mentionees": [
- "sourabhguha",
- "inesk-vt"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Event Grid"
- ],
- "mentionees": [
- "jfggdl"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Event Hubs"
- ],
- "mentionees": [
- "Saglodha"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Functions"
- ],
- "mentionees": [
- "Stefanus Hinardi",
- "Francisco-Gamino"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Graph.Microsoft"
- ],
- "mentionees": [
- "dkershaw10",
- "baywet"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Guest Configuration"
- ],
- "mentionees": [
- "mgreenegit",
- "vivlingaiah"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "HDInsight"
- ],
- "mentionees": [
- "aim-for-better",
- "idear1203",
- "deshriva"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "HPC Cache"
- ],
- "mentionees": [
- "romahamu",
- "omzevall"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Import Export"
- ],
- "mentionees": [
- "madhurinms"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "KeyVault"
- ],
- "mentionees": [
- "RandalliLama",
- "schaabs",
- "jlichwa"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Kubernetes Configuration"
- ],
- "mentionees": [
- "NarayanThiru"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Azure Data Explorer"
- ],
- "mentionees": [
- "ilayrn",
- "orhasban",
- "zoharHenMicrosoft",
- "sagivf",
- "Aviv-Yaniv"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Lab Services"
- ],
- "mentionees": [
- "Tanmayeekamath"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Logic App"
- ],
- "mentionees": [
- "Azure/azure-logicapps-team"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "LOUIS"
- ],
- "mentionees": [
- "minamnmik"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Machine Learning"
- ],
- "mentionees": [
- "azureml-github"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Machine Learning Compute"
- ],
- "mentionees": [
- "azureml-github"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Machine Learning Experimentation"
- ],
- "mentionees": [
- "aashishb"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Managed Services"
- ],
- "mentionees": [
- "Lighthouse-Azure"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "MariaDB"
- ],
- "mentionees": [
- "ambhatna",
- "savjani"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Marketplace Ordering"
- ],
- "mentionees": [
- "prbansa"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Media Services"
- ],
- "mentionees": [
- "akucer"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Migrate"
- ],
- "mentionees": [
- "shijojoy"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Mobile Engagement"
- ],
- "mentionees": [
- "kpiteira"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor"
- ],
- "mentionees": [
- "SameergMS",
- "dadunl"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - Autoscale"
- ],
- "mentionees": [
- "AzMonEssential"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - ActivityLogs"
- ],
- "mentionees": [
- "AzMonEssential"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - Metrics"
- ],
- "mentionees": [
- "AzMonEssential"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - Diagnostic Settings"
- ],
- "mentionees": [
- "AzMonEssential"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - Alerts"
- ],
- "mentionees": [
- "AzmonAlerts"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - ActionGroups"
- ],
- "mentionees": [
- "AzmonActionG"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - LogAnalytics"
- ],
- "mentionees": [
- "AzmonLogA"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Monitor - ApplicationInsights"
- ],
- "mentionees": [
- "azmonapplicationinsights"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "MySQL"
- ],
- "mentionees": [
- "ambhatna",
- "savjani"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network"
- ],
- "mentionees": [
- "aznetsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Application Gateway"
- ],
- "mentionees": [
- "appgwsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - CDN"
- ],
- "mentionees": [
- "t-bzhan",
- "gxue"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - DDOS Protection"
- ],
- "mentionees": [
- "ddossuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - ExpressRoute"
- ],
- "mentionees": [
- "exrsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Firewall"
- ],
- "mentionees": [
- "fwsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Front Door"
- ],
- "mentionees": [
- "cdnfdsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Load Balancer"
- ],
- "mentionees": [
- "slbsupportgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Virtual Network NAT"
- ],
- "mentionees": [
- "vnetsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Network Watcher"
- ],
- "mentionees": [
- "netwatchsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - DNS"
- ],
- "mentionees": [
- "dnssuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Traffic Manager"
- ],
- "mentionees": [
- "tmsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - VPN Gateway"
- ],
- "mentionees": [
- "vpngwsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Notification Hub"
- ],
- "mentionees": [
- "tjsomasundaram"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Operational Insights"
- ],
- "mentionees": [
- "AzmonLogA"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Policy"
- ],
- "mentionees": [
- "aperezcloud",
- "kenieva"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Policy Insights"
- ],
- "mentionees": [
- "kenieva"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "PostgreSQL"
- ],
- "mentionees": [
- "sunilagarwal",
- "lfittl-msft",
- "sr-msft",
- "niklarin"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Recovery Services Backup"
- ],
- "mentionees": [
- "pvrk",
- "adityabalaji-msft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Recovery Services Site-Recovery"
- ],
- "mentionees": [
- "Sharmistha-Rai"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Redis Cache"
- ],
- "mentionees": [
- "yegu-ms"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Relay"
- ],
- "mentionees": [
- "jfggdl"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Reservations"
- ],
- "mentionees": [
- "Rkapso"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Resource Authorization"
- ],
- "mentionees": [
- "darshanhs90",
- "AshishGargMicrosoft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Resource Graph"
- ],
- "mentionees": [
- "chiragg4u"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Resource Health"
- ],
- "mentionees": [
- "stephbaron"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Scheduler"
- ],
- "mentionees": [
- "derek1ee"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Search"
- ],
- "mentionees": [
- "bleroy",
- "tjacobhi",
- "markheff",
- "miwelsh"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Security"
- ],
- "mentionees": [
- "chlahav"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Service Bus"
- ],
- "mentionees": [
- "Saglodha"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Service Fabric"
- ],
- "mentionees": [
- "QingChenmsft",
- "vaishnavk",
- "juhacket"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Schema Registry"
- ],
- "mentionees": [
- "arerlend",
- "alzimmermsft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SignalR"
- ],
- "mentionees": [
- "sffamily",
- "chenkennt"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL - VM"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL - Backup & Restore"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL - Data Security"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL - Elastic Jobs"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL - Managed Instance"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SQL - Replication & Failover"
- ],
- "mentionees": [
- "azureSQLGitHub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Storage"
- ],
- "mentionees": [
- "xgithubtriage"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Storsimple"
- ],
- "mentionees": [
- "anoobbacker",
- "ganzee",
- "manuaery",
- "patelkunal"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Stream Analytics"
- ],
- "mentionees": [
- "atpham256"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Subscription"
- ],
- "mentionees": [
- "anuragdalmia",
- "shilpigautam",
- "ramaganesan-rg"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Support"
- ],
- "mentionees": [
- "shahbj79",
- "mit2nil",
- "aygoya",
- "ganganarayanan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Synapse"
- ],
- "mentionees": [
- "wonner",
- "yanjungao718"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Tables"
- ],
- "mentionees": [
- "klaaslanghout"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "TimeseriesInsights"
- ],
- "mentionees": [
- "Shipra1Mishra"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "vFXT"
- ],
- "mentionees": [
- "zhusijia26"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Web Apps"
- ],
- "mentionees": [
- "AzureAppServiceCLI",
- "antcp"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Virtual Network"
- ],
- "mentionees": [
- "vnetsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Virtual WAN"
- ],
- "mentionees": [
- "vwansuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Network Virtual Appliance"
- ],
- "mentionees": [
- "nvasuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Bastion"
- ],
- "mentionees": [
- "bastionsuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "IoT/CLI"
- ],
- "mentionees": [
- "Azure/azure-iot-cli-triage"
- ]
- },
- {
- "labels": [
- "Azure.Spring - Cosmos"
- ],
- "mentionees": [
- "kushagraThapur"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Network - Private Link"
- ],
- "mentionees": [
- "privlinksuppgithub"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Azure arc enabled servers"
- ],
- "mentionees": [
- "rpsqrd",
- "edyoung"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "SecurityInsights"
- ],
- "mentionees": [
- "amirkeren"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Azure Data Explorer"
- ],
- "mentionees": [
- "Ilayrn",
- "orhasban",
- "zoharHenMicrosoft",
- "sagivf",
- "Aviv-Yaniv"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Communication"
- ],
- "mentionees": [
- "acsdevx-msft"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cost Management and Consumption"
- ],
- "mentionees": [
- "ccmaxpcrew"
- ]
- },
- {
- "labels": [
- "ML-AutoML",
- "Service Attention"
- ],
- "mentionees": [
- "Aniththa"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Hyperdrive"
- ],
- "mentionees": [
- "Aniththa"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Compute"
- ],
- "mentionees": [
- "nishankgu"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Core UI"
- ],
- "mentionees": [
- "abeomor"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Data4ML"
- ],
- "mentionees": [
- "SturgeonMi"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Designer"
- ],
- "mentionees": [
- "alainli0928"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Data Labeling"
- ],
- "mentionees": [
- "kvijaykannan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-Inference"
- ],
- "mentionees": [
- "shivanissambare"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ML-MLOps"
- ],
- "mentionees": [
- "lostmygithubaccount"
- ]
- },
- {
- "labels": [
- "ML-Pipelines",
- "Service Attention"
- ],
- "mentionees": [
- "shbijlan"
- ]
- },
- {
- "labels": [
- "ML-Responsible AI",
- "Service Attention"
- ],
- "mentionees": [
- "minthigpen"
- ]
- },
- {
- "labels": [
- "ML-Reinforcement Learning",
- "Service Attention"
- ],
- "mentionees": [
- "keijik"
- ]
- },
- {
- "labels": [
- "ML-Training",
- "Service Attention"
- ],
- "mentionees": [
- "lostmygithubaccount"
- ]
- },
- {
- "labels": [
- "ML-Workspace Management",
- "Service Attention"
- ],
- "mentionees": [
- "rastala"
- ]
- },
- {
- "labels": [
- "Spring Cloud",
- "Service Attention"
- ],
- "mentionees": [
- "ShichaoQiu",
- "yuwzho",
- "yucwan"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cost Management-Budget"
- ],
- "mentionees": [
- "ccmaxpcrew"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Consumption-Budget"
- ],
- "mentionees": [
- "ccmaxpcrew"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cost Management-Query"
- ],
- "mentionees": [
- "ccmixpdevs"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Consumption-Query"
- ],
- "mentionees": [
- "ccmixpdevs"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cost Management-Billing"
- ],
- "mentionees": [
- "ccmbpxpcrew"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Consumption-Billing"
- ],
- "mentionees": [
- "ccmbpxpcrew"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cost Management-UsageDetailsAndExport"
- ],
- "mentionees": [
- "TiagoCrewGitHubIssues"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Consumption-UsageDetailsandExport"
- ],
- "mentionees": [
- "TiagoCrewGitHubIssues"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Consumption- RIandShowBack"
- ],
- "mentionees": [
- "ccmshowbackdevs"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Serial Console"
- ],
- "mentionees": [
- "CraigWiand"
- ]
- },
- {
- "mentionees": [
- "cijothomas",
- "reyang",
- "rajkumar-rangaraj",
- "TimothyMothra",
- "vishweshbankwar"
- ],
- "labels": [
- "Monitor - Exporter",
- "Service Attention"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "Cost Management-RIandShowBack"
- ],
- "mentionees": [
- "ccmshowbackdevs"
- ]
- },
- {
- "labels": [
- "Service Attention",
- "ContainerApp"
- ],
- "mentionees": [
- "calvinsID"
- ]
- }
- ],
- "replyTemplate": "Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.",
- "taskName": "Triage issues to the service team"
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "PullRequestResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "opened"
- }
- },
- {
- "operator": "and",
- "operands": [
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "permissions": "write"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasAssociation",
- "parameters": {
- "association": "MEMBER"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasAssociation",
- "parameters": {
- "association": "COLLABORATOR"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "permissions": "admin"
- }
- }
- ]
- }
- ]
- }
- ]
- },
- "eventType": "pull_request",
- "eventNames": [
- "pull_request",
- "issues",
- "project_card"
- ],
- "taskName": "Add customer-reported label to PRs from customers ",
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "customer-reported"
- }
- },
- {
- "name": "addReply",
- "parameters": {
- "comment": "Thank you for your contribution ${issueAuthor}! We will review the pull request and get back to you soon."
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "PullRequestCommentResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "commentContains",
- "parameters": {
- "commentPattern": "/help"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "created"
- }
- }
- ]
- },
- "eventType": "pull_request",
- "eventNames": [
- "issue_comment"
- ],
- "taskName": "Help comments.",
- "actions": [
- {
- "name": "addReply",
- "parameters": {
- "comment": "Hi, ${issueAuthor}. command list:\n\n+ `/removeLabel ` remove label. E.g, If you want to refresh PR and don't mark PR with `no-recent-activity` label, pls comment `/removeLabel no-recent-activity` "
- }
- }
- ],
- "dangerZone": {
- "respondToBotActions": false
- }
- },
- "disabled": true
- },
- {
- "taskType": "scheduled",
- "capabilityId": "ScheduledSearch",
- "subCapability": "ScheduledSearch",
- "version": "1.1",
- "config": {
- "frequency": [
- {
- "weekDay": 1,
- "hours": [
- 0
- ],
- "timezoneOffset": 8
- }
- ],
- "searchTerms": [
- {
- "name": "noActivitySince",
- "parameters": {
- "days": 14
- }
- },
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "noLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "noLabel",
- "parameters": {
- "label": "customer-reported"
- }
- },
- {
- "name": "isPr",
- "parameters": {}
- },
- {
- "name": "isDraftPr",
- "parameters": {
- "value": "false"
- }
- }
- ],
- "actions": [
- {
- "name": "addReply",
- "parameters": {
- "comment": "Hi, @${issueAuthor}. Your PR has no update for 14 days and it is marked as stale PR. If no further update for over 14 days, the bot will close the PR. If you want to refresh the PR, please remove `no-recent-activity` label. "
- }
- },
- {
- "name": "addLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ],
- "taskName": "Stale PR 14 days reminder and add stale label"
- },
- "disabled": false
- },
- {
- "taskType": "scheduled",
- "capabilityId": "ScheduledSearch",
- "subCapability": "ScheduledSearch",
- "version": "1.1",
- "config": {
- "frequency": [
- {
- "weekDay": 0,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- },
- {
- "weekDay": 1,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- },
- {
- "weekDay": 2,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- },
- {
- "weekDay": 3,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- },
- {
- "weekDay": 4,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- },
- {
- "weekDay": 5,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- },
- {
- "weekDay": 6,
- "hours": [
- 13
- ],
- "timezoneOffset": 8
- }
- ],
- "searchTerms": [
- {
- "name": "isOpen",
- "parameters": {}
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "noActivitySince",
- "parameters": {
- "days": 14
- }
- },
- {
- "name": "noLabel",
- "parameters": {
- "label": "customer-reported"
- }
- }
- ],
- "taskName": "Close stale PR (no update for 30 days)",
- "actions": [
- {
- "name": "closeIssue",
- "parameters": {}
- },
- {
- "name": "addReply",
- "parameters": {
- "comment": "Hi, @${issueAuthor}. The PR will be closed since the PR has no update for 28 days. If you still need the PR review to proceed, please reopen it and @ mention PR assignee."
- }
- }
- ]
- },
- "disabled": false
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "PullRequestCommentResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "created"
- }
- },
- {
- "name": "commentContains",
- "parameters": {
- "isRegex": false,
- "commentPattern": "/removeLabel no-recent-activity"
- }
- },
- {
- "name": "isOpen",
- "parameters": {}
- }
- ]
- },
- "eventType": "pull_request",
- "eventNames": [
- "issue_comment"
- ],
- "taskName": "Auto remove no-recent-activity label",
- "actions": [
- {
- "name": "removeLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ]
- },
- "disabled": true
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "PullRequestResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "operator": "or",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "synchronize"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "review_requested"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "unlabeled"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "edited"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "merged"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "reopened"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "labeled"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "edited"
- }
- }
- ]
- }
- ]
- },
- "eventType": "pull_request",
- "eventNames": [
- "pull_request",
- "issues",
- "project_card"
- ],
- "taskName": "remove no-recent-activity when update PR trigger",
- "actions": [
- {
- "name": "removeLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ]
- },
- "disabled": false
- },
- {
- "taskType": "trigger",
- "capabilityId": "PrAutoLabel",
- "subCapability": "Path",
- "version": "1.0",
- "config": {
- "taskName": "Auto label by file paths",
- "configs": [
- {
- "label": "API Management",
- "pathFilter": [
- "specification/apimanagement/resource-manager"
- ]
- },
- {
- "label": "Compute",
- "pathFilter": [
- "specification/compute/resource-manager"
- ]
- },
- {
- "label": "Network",
- "pathFilter": [
- "specification/network/resource-manager"
- ]
- },
- {
- "label": "SQL",
- "pathFilter": [
- "specification/sql/resource-manager"
- ]
- },
- {
- "label": "Storage",
- "pathFilter": [
- "specification/storage/resource-manager"
- ]
- },
- {
- "label": "Synapses",
- "pathFilter": [
- "specification/synapse"
- ]
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "PullRequestCommentResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "hasLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- },
- {
- "name": "isOpen",
- "parameters": {}
- }
- ]
- },
- "eventType": "pull_request",
- "eventNames": [
- "issue_comment"
- ],
- "taskName": "remove no-recent-activity when update PR trigger",
- "actions": [
- {
- "name": "removeLabel",
- "parameters": {
- "label": "no-recent-activity"
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "isAction",
- "parameters": {
- "action": "opened"
- }
- },
- {
- "operator": "and",
- "operands": [
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "association": "MEMBER",
- "permissions": "write"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasAssociation",
- "parameters": {
- "association": "MEMBER"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasAssociation",
- "parameters": {
- "association": "COLLABORATOR"
- }
- }
- ]
- },
- {
- "operator": "not",
- "operands": [
- {
- "name": "activitySenderHasPermissions",
- "parameters": {
- "permissions": "admin"
- }
- }
- ]
- }
- ]
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ],
- "taskName": "Add customer-reported label to issues coming from non-collaborators",
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "customer-reported"
- }
- },
- {
- "name": "addLabel",
- "parameters": {
- "label": "question"
- }
- }
- ]
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "PrAutoLabel",
- "subCapability": "Path",
- "version": "1.0",
- "config": {
- "configs": [
- {
- "label": "Cognitive Services",
- "pathFilter": [
- "dev/cognitiveservices/data-plane/Language/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Analysis Services",
- "pathFilter": [
- "specification/analysisservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Alerts Management",
- "pathFilter": [
- "specification/alertsmanagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "API Management",
- "pathFilter": [
- "specification/apimanagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Insights",
- "pathFilter": [
- "specification/applicationinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Monitor - Exporter",
- "pathFilter": [
- "specification/applicationinsights/data-plane/Monitor.Exporters/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Authorization",
- "pathFilter": [
- "specification/authorization/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Automation",
- "pathFilter": [
- "specification/automation/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Batch",
- "pathFilter": [
- "specification/batch/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "BatchAI",
- "pathFilter": [
- "specification/batchai/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Billing",
- "pathFilter": [
- "specification/billing/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network - CDN",
- "pathFilter": [
- "specification/cdn/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Cognitive Services",
- "pathFilter": [
- "specification/cognitiveservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Cognitive - Language",
- "pathFilter": [
- "specification/cognitiveservices/data-plane/Language/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Compute",
- "pathFilter": [
- "specification/compute/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Container Instances",
- "pathFilter": [
- "specification/containerinstance/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Container Registry",
- "pathFilter": [
- "specification/containerregistry/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Container Service",
- "pathFilter": [
- "specification/containerservice/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Cosmos",
- "pathFilter": [
- "specification/cosmos-db/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Customer Insights",
- "pathFilter": [
- "specification/customer-insights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Factory",
- "pathFilter": [
- "specification/datafactory/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Lake Analytics",
- "pathFilter": [
- "specification/datalake-analytics/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Lake Store",
- "pathFilter": [
- "specification/datalake-store/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Migration",
- "pathFilter": [
- "specification/datamigration/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Device Update",
- "pathFilter": [
- "specification/deviceupdate/data-plane/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Devtestlab",
- "pathFilter": [
- "specification/devtestlabs/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network - DNS",
- "pathFilter": [
- "specification/dns/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Event Grid",
- "pathFilter": [
- "specification/eventgrid/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Event Hubs",
- "pathFilter": [
- "specification/eventhub/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "HDInsight",
- "pathFilter": [
- "specification/hdinsight/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Intune",
- "pathFilter": [
- "specification/intune/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "IotHub",
- "pathFilter": [
- "specification/iothub/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "KeyVault",
- "pathFilter": [
- "specification/keyvault/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Logic App",
- "pathFilter": [
- "specification/logic/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Machine Learning",
- "pathFilter": [
- "specification/machinelearning/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Machine Learning Compute",
- "pathFilter": [
- "specification/machinelearningcompute/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Media Services",
- "pathFilter": [
- "specification/mediaservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Mobile Engagement",
- "pathFilter": [
- "specification/mobileengagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Monitor",
- "pathFilter": [
- "specification/monitor/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "MySQL",
- "pathFilter": [
- "specification/mysql/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network",
- "pathFilter": [
- "specification/network/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Notification Hub",
- "pathFilter": [
- "specification/notificationhubs/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Monitor - Operational Insights",
- "pathFilter": [
- "specification/operationalinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Operations Management",
- "pathFilter": [
- "specification/operationsmanagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Peering",
- "pathFilter": [
- "specification/peering/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Policy Insights",
- "pathFilter": [
- "specification/policyinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "PostgreSQL",
- "pathFilter": [
- "specification/postgresql/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "PostgreSQL",
- "pathFilter": [
- "specification/provisioningservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "RecoveryServices",
- "pathFilter": [
- "specification/recoveryservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Recovery Services Backup",
- "pathFilter": [
- "specification/recoveryservicesbackup/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Recovery Services Site-Recovery",
- "pathFilter": [
- "specification/recoveryservicessiterecovery/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Redis Cache",
- "pathFilter": [
- "specification/redis/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Relay",
- "pathFilter": [
- "specification/relay/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Scheduler",
- "pathFilter": [
- "specification/scheduler/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Search",
- "pathFilter": [
- "specification/search/data-plane/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Search",
- "pathFilter": [
- "specification/search/resource-manager/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Service Map",
- "pathFilter": [
- "specification/service-map/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Service Bus",
- "pathFilter": [
- "specification/servicebus/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Service Fabric",
- "pathFilter": [
- "specification/servicefabric/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "SQL",
- "pathFilter": [
- "specification/sql/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Storage",
- "pathFilter": [
- "specification/storage/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Import Export",
- "pathFilter": [
- "specification/storageimportexport/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "StorageSync",
- "pathFilter": [
- "specification/storagesync/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Storsimple",
- "pathFilter": [
- "specification/storsimple8000series/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Stream Analytics",
- "pathFilter": [
- "specification/streamanalytics/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Subscription",
- "pathFilter": [
- "specification/subscriptions/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Synapses",
- "pathFilter": [
- "specification/synapse/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Load Test Service",
- "pathFilter": [
- "specification/loadtestservice/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Maps",
- "pathFilter": [
- "specification/maps/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Purview",
- "pathFilter": [
- "specification/purview/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "TimeseriesInsights",
- "pathFilter": [
- "specification/timeseriesinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network - Traffic Manager",
- "pathFilter": [
- "specification/trafficmanager/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Web Apps",
- "pathFilter": [
- "specification/web/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Profile",
- "pathFilter": [
- "profile/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "ArcReview",
- "pathFilter": [
- "specification/hybridcompute/resource-manager/",
- "specification/connectedvmware/resource-manager/",
- "specification/azurestackhci/resource-manager/",
- "specification/scvmm/resource-manager/"
- ]
- }
- ],
- "taskName": "Auto PR based on folder paths "
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "PrAutoLabel",
- "subCapability": "Path",
- "version": "1.0",
- "config": {
- "configs": [
- {
- "label": "Cognitive Services",
- "pathFilter": [
- "dev/cognitiveservices/data-plane/Language/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Analysis Services",
- "pathFilter": [
- "specification/analysisservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Alerts Management",
- "pathFilter": [
- "specification/alertsmanagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "API Management",
- "pathFilter": [
- "specification/apimanagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Insights",
- "pathFilter": [
- "specification/applicationinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Monitor - Exporter",
- "pathFilter": [
- "specification/applicationinsights/data-plane/Monitor.Exporters/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Authorization",
- "pathFilter": [
- "specification/authorization/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Automation",
- "pathFilter": [
- "specification/automation/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Batch",
- "pathFilter": [
- "specification/batch/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "BatchAI",
- "pathFilter": [
- "specification/batchai/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Billing",
- "pathFilter": [
- "specification/billing/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network - CDN",
- "pathFilter": [
- "specification/cdn/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Cognitive Services",
- "pathFilter": [
- "specification/cognitiveservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Cognitive - Language",
- "pathFilter": [
- "specification/cognitiveservices/data-plane/Language/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Compute",
- "pathFilter": [
- "specification/compute/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Container Instances",
- "pathFilter": [
- "specification/containerinstance/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Container Registry",
- "pathFilter": [
- "specification/containerregistry/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Container Service",
- "pathFilter": [
- "specification/containerservice/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Cosmos",
- "pathFilter": [
- "specification/cosmos-db/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Customer Insights",
- "pathFilter": [
- "specification/customer-insights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Factory",
- "pathFilter": [
- "specification/datafactory/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Lake Analytics",
- "pathFilter": [
- "specification/datalake-analytics/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Lake Store",
- "pathFilter": [
- "specification/datalake-store/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Data Migration",
- "pathFilter": [
- "specification/datamigration/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Device Update",
- "pathFilter": [
- "specification/deviceupdate/data-plane/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Devtestlab",
- "pathFilter": [
- "specification/devtestlabs/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network - DNS",
- "pathFilter": [
- "specification/dns/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Event Grid",
- "pathFilter": [
- "specification/eventgrid/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Event Hubs",
- "pathFilter": [
- "specification/eventhub/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "HDInsight",
- "pathFilter": [
- "specification/hdinsight/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Intune",
- "pathFilter": [
- "specification/intune/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "IotHub",
- "pathFilter": [
- "specification/iothub/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "KeyVault",
- "pathFilter": [
- "specification/keyvault/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Logic App",
- "pathFilter": [
- "specification/logic/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Machine Learning",
- "pathFilter": [
- "specification/machinelearning/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Machine Learning Compute",
- "pathFilter": [
- "specification/machinelearningcompute/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Media Services",
- "pathFilter": [
- "specification/mediaservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Mobile Engagement",
- "pathFilter": [
- "specification/mobileengagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Monitor",
- "pathFilter": [
- "specification/monitor/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "MySQL",
- "pathFilter": [
- "specification/mysql/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network",
- "pathFilter": [
- "specification/network/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Notification Hub",
- "pathFilter": [
- "specification/notificationhubs/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Monitor - Operational Insights",
- "pathFilter": [
- "specification/operationalinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Operations Management",
- "pathFilter": [
- "specification/operationsmanagement/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Peering",
- "pathFilter": [
- "specification/peering/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Policy Insights",
- "pathFilter": [
- "specification/policyinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "PostgreSQL",
- "pathFilter": [
- "specification/postgresql/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "PostgreSQL",
- "pathFilter": [
- "specification/provisioningservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "RecoveryServices",
- "pathFilter": [
- "specification/recoveryservices/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Recovery Services Backup",
- "pathFilter": [
- "specification/recoveryservicesbackup/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Recovery Services Site-Recovery",
- "pathFilter": [
- "specification/recoveryservicessiterecovery/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Redis Cache",
- "pathFilter": [
- "specification/redis/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Relay",
- "pathFilter": [
- "specification/relay/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Scheduler",
- "pathFilter": [
- "specification/scheduler/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Search",
- "pathFilter": [
- "specification/search/data-plane/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Search",
- "pathFilter": [
- "specification/search/resource-manager/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Service Map",
- "pathFilter": [
- "specification/service-map/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Service Bus",
- "pathFilter": [
- "specification/servicebus/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Service Fabric",
- "pathFilter": [
- "specification/servicefabric/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "SQL",
- "pathFilter": [
- "specification/sql/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Storage",
- "pathFilter": [
- "specification/storage/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Import Export",
- "pathFilter": [
- "specification/storageimportexport/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "StorageSync",
- "pathFilter": [
- "specification/storagesync/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Storsimple",
- "pathFilter": [
- "specification/storsimple8000series/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Stream Analytics",
- "pathFilter": [
- "specification/streamanalytics/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Subscription",
- "pathFilter": [
- "specification/subscriptions/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Synapses",
- "pathFilter": [
- "specification/synapse/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "TimeseriesInsights",
- "pathFilter": [
- "specification/timeseriesinsights/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Network - Traffic Manager",
- "pathFilter": [
- "specification/trafficmanager/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Web Apps",
- "pathFilter": [
- "specification/web/"
- ],
- "exclude": [
- ""
- ]
- },
- {
- "label": "Profile",
- "pathFilter": [
- "profile/"
- ],
- "exclude": [
- ""
- ]
- }
- ],
- "taskName": "Auto PR based on folder paths "
- }
- },
- {
- "taskType": "trigger",
- "capabilityId": "IssueResponder",
- "subCapability": "IssuesOnlyResponder",
- "version": "1.0",
- "config": {
- "conditions": {
- "operator": "and",
- "operands": [
- {
- "name": "hasLabel",
- "parameters": {
- "label": "customer-reported"
- }
- },
- {
- "name": "hasLabel",
- "parameters": {
- "label": "needs-triage"
- }
- },
- {
- "name": "isAction",
- "parameters": {
- "action": "labeled"
- }
- }
- ]
- },
- "eventType": "issue",
- "eventNames": [
- "issues",
- "project_card"
- ],
- "taskName": "CXP attention",
- "actions": [
- {
- "name": "addLabel",
- "parameters": {
- "label": "CXP Attention"
- }
- }
- ]
- }
- }
- ],
- "userGroups": [
- {
- "_id": "5f074b894200c210c870e0fd",
- "groupType": "GitHub",
- "name": "MariaDB and MySQL Contacts",
- "githubUserNames": [
- "ambhatna",
- "savjani",
- "mksuni",
- "Bashar-MSFT"
- ],
- "assignmentSchemes": [
- {
- "target": "All",
- "lastAssignedIndex": 7
- }
- ]
- }
- ]
-}
diff --git a/.github/policies/resourceManagement.yml b/.github/policies/resourceManagement.yml
new file mode 100644
index 000000000000..7717446efda4
--- /dev/null
+++ b/.github/policies/resourceManagement.yml
@@ -0,0 +1,3947 @@
+id:
+name: GitOps.PullRequestIssueManagement
+description: GitOps.PullRequestIssueManagement primitive
+owner:
+resource: repository
+disabled: false
+where:
+configuration:
+ resourceManagementConfiguration:
+ scheduledSearches:
+ - description:
+ frequencies:
+ - daily:
+ time: 1:0
+ filters:
+ - isIssue
+ - isOpen
+ - hasLabel:
+ label: needs-author-feedback
+ - hasLabel:
+ label: no-recent-activity
+ - noActivitySince:
+ days: 14
+ actions:
+ - closeIssue
+ - description:
+ frequencies:
+ - hourly:
+ hour: 6
+ filters:
+ - isIssue
+ - isOpen
+ - hasLabel:
+ label: needs-author-feedback
+ - noActivitySince:
+ days: 7
+ - isNotLabeledWith:
+ label: no-recent-activity
+ actions:
+ - addLabel:
+ label: no-recent-activity
+ - addReply:
+ reply: Hi, we're sending this friendly reminder because we haven't heard back from you in a while. We need more information about this issue to help address it. Please be sure to give us your input within the next **7 days**. If we don't hear back from you within **14 days** of this comment the issue will be automatically closed. Thank you!
+ - description:
+ frequencies:
+ - weekday:
+ day: Monday
+ time: 0:0
+ filters:
+ - noActivitySince:
+ days: 14
+ - isOpen
+ - isNotLabeledWith:
+ label: no-recent-activity
+ - isNotLabeledWith:
+ label: customer-reported
+ - isPullRequest
+ - isNotDraftPullRequest
+ actions:
+ - addReply:
+ reply: 'Hi, @${issueAuthor}. Your PR has no update for 14 days and it is marked as stale PR. If no further update for over 14 days, the bot will close the PR. If you want to refresh the PR, please remove `no-recent-activity` label. '
+ - addLabel:
+ label: no-recent-activity
+ - description:
+ frequencies:
+ - daily:
+ time: 13:0
+ filters:
+ - isOpen
+ - hasLabel:
+ label: no-recent-activity
+ - noActivitySince:
+ days: 14
+ - isNotLabeledWith:
+ label: customer-reported
+ actions:
+ - closeIssue
+ - addReply:
+ reply: Hi, @${issueAuthor}. The PR will be closed since the PR has no update for 28 days. If you still need the PR review to proceed, please reopen it and @ mention PR assignee.
+ eventResponderTasks:
+ - if:
+ - payloadType: Issue_Comment
+ - isAction:
+ action: Created
+ - isActivitySender:
+ issueAuthor: True
+ - hasLabel:
+ label: needs-author-feedback
+ - isOpen
+ then:
+ - addLabel:
+ label: needs-team-attention
+ - removeLabel:
+ label: needs-author-feedback
+ description:
+ - if:
+ - payloadType: Issues
+ - not:
+ isAction:
+ action: Closed
+ - hasLabel:
+ label: no-recent-activity
+ then:
+ - removeLabel:
+ label: no-recent-activity
+ description:
+ - if:
+ - payloadType: Issue_Comment
+ - hasLabel:
+ label: no-recent-activity
+ then:
+ - removeLabel:
+ label: no-recent-activity
+ description:
+ - if:
+ - payloadType: Issues
+ - isAction:
+ action: Labeled
+ - hasLabel:
+ label: needs-triage
+ - not:
+ labelAdded:
+ label: needs-triage
+ then:
+ - removeLabel:
+ label: needs-triage
+ description:
+ - if:
+ - payloadType: Issues
+ - isOpen
+ - hasLabel:
+ label: customer-reported
+ - labelRemoved:
+ label: Service Attention
+ then:
+ - addLabel:
+ label: needs-team-triage
+ description:
+ - if:
+ - payloadType: Issues
+ - isAction:
+ action: Opened
+ - and:
+ - not:
+ activitySenderHasPermission:
+ permission: Write
+ - not:
+ activitySenderHasAssociation:
+ association: Member
+ - not:
+ activitySenderHasAssociation:
+ association: Collaborator
+ - not:
+ activitySenderHasPermission:
+ permission: Admin
+ then:
+ - addLabel:
+ label: question
+ description:
+ - if:
+ - or:
+ - payloadType: Issues
+ - isAction:
+ action: Opened
+ then:
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: AKS
+ then:
+ - mentionUsers:
+ mentionees:
+ - Azure/aks-pm
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Alerts Management
+ then:
+ - mentionUsers:
+ mentionees:
+ - liadtal
+ - yairgil
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM
+ then:
+ - mentionUsers:
+ mentionees:
+ - josephkwchan
+ - jennyhunter-msft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM - Templates
+ then:
+ - mentionUsers:
+ mentionees:
+ - Azure/deployments-owners
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM - Tags
+ then:
+ - mentionUsers:
+ mentionees:
+ - rthorn17
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM - Core
+ then:
+ - mentionUsers:
+ mentionees:
+ - josephkwchan
+ - jennyhunter-msft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM - Managed Applications
+ then:
+ - mentionUsers:
+ mentionees:
+ - MSEvanhi
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM - Service Catalog
+ then:
+ - mentionUsers:
+ mentionees:
+ - MSEvanhi
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARM - RBAC
+ then:
+ - mentionUsers:
+ mentionees:
+ - LizMS
+ - cbrooksmsft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Advisor
+ then:
+ - mentionUsers:
+ mentionees:
+ - mojayara
+ - Prasanna-Padmanabhan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Analysis Services
+ then:
+ - mentionUsers:
+ mentionees:
+ - athipp
+ - taiwu
+ - minghan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: API Management
+ then:
+ - mentionUsers:
+ mentionees:
+ - adrianhall
+ - KedarJoshi
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Application Insights
+ then:
+ - mentionUsers:
+ mentionees:
+ - azmonapplicationinsights
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: App Services
+ then:
+ - mentionUsers:
+ mentionees:
+ - antcp
+ - AzureAppServiceCLI
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: App Configuration
+ then:
+ - mentionUsers:
+ mentionees:
+ - jiayi11
+ - avanigupta
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ARO
+ then:
+ - mentionUsers:
+ mentionees:
+ - mjudeikis
+ - jim-minter
+ - julienstroheker
+ - amanohar
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Attestation
+ then:
+ - mentionUsers:
+ mentionees:
+ - anilba06
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Authorization
+ then:
+ - mentionUsers:
+ mentionees:
+ - darshanhs90
+ - AshishGargMicrosoft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Automation
+ then:
+ - mentionUsers:
+ mentionees:
+ - jaspkaur28
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: AVS
+ then:
+ - mentionUsers:
+ mentionees:
+ - divka78
+ - amitchat
+ - aishu
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Azure Stack
+ then:
+ - mentionUsers:
+ mentionees:
+ - sijuman
+ - sarathys
+ - bganapa
+ - rakku-ms
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Batch
+ then:
+ - mentionUsers:
+ mentionees:
+ - cRui861
+ - paterasMSFT
+ - gingi
+ - dpwatrous
+ - mksuni
+ - bgklein
+ - mscurrell
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: BatchAI
+ then:
+ - mentionUsers:
+ mentionees:
+ - matthchr
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Billing
+ then:
+ - mentionUsers:
+ mentionees:
+ - cabbpt
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Blueprint
+ then:
+ - mentionUsers:
+ mentionees:
+ - alex-frankel
+ - filizt
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Bot Service
+ then:
+ - mentionUsers:
+ mentionees:
+ - sgellock
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cloud Shell
+ then:
+ - mentionUsers:
+ mentionees:
+ - maertendMSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Text Analytics
+ then:
+ - mentionUsers:
+ mentionees:
+ - assafi
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Form Recognizer
+ then:
+ - mentionUsers:
+ mentionees:
+ - ctstone
+ - anrothMSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Anomaly Detector
+ then:
+ - mentionUsers:
+ mentionees:
+ - yingqunpku
+ - bowgong
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Custom Vision
+ then:
+ - mentionUsers:
+ mentionees:
+ - areddish
+ - tburns10
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Computer Vision
+ then:
+ - mentionUsers:
+ mentionees:
+ - ryogok
+ - TFR258
+ - tburns10
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Face
+ then:
+ - mentionUsers:
+ mentionees:
+ - JinyuID
+ - dipidoo
+ - SteveMSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - QnA Maker
+ then:
+ - mentionUsers:
+ mentionees:
+ - bingisbestest
+ - nerajput1607
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Translator
+ then:
+ - mentionUsers:
+ mentionees:
+ - swmachan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Speech
+ then:
+ - mentionUsers:
+ mentionees:
+ - robch
+ - oscholz
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - LUIS
+ then:
+ - mentionUsers:
+ mentionees:
+ - cahann
+ - kayousef
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Content Moderator
+ then:
+ - mentionUsers:
+ mentionees:
+ - swiftarrow11
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Personalizer
+ then:
+ - mentionUsers:
+ mentionees:
+ - dwaijam
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Immersive Reader
+ then:
+ - mentionUsers:
+ mentionees:
+ - metanMSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Ink Recognizer
+ then:
+ - mentionUsers:
+ mentionees:
+ - olduroja
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Bing
+ then:
+ - mentionUsers:
+ mentionees:
+ - jaggerbodas-ms
+ - arwong
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cognitive - Mgmt
+ then:
+ - mentionUsers:
+ mentionees:
+ - yangyuan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Commerce
+ then:
+ - mentionUsers:
+ mentionees:
+ - ms-premp
+ - qiaozha
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute
+ then:
+ - mentionUsers:
+ mentionees:
+ - Drewm3
+ - TravisCragg-MSFT
+ - nikhilpatel909
+ - sandeepraichura
+ - hilaryw29
+ - GabstaMSFT
+ - ramankumarlive
+ - ushnaarshadkhan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute - Extensions
+ then:
+ - mentionUsers:
+ mentionees:
+ - TravisCragg-MSFT
+ - GabstaMSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute - Images
+ then:
+ - mentionUsers:
+ mentionees:
+ - TravisCragg-MSFT
+ - sandeepraichura
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute - Managed Disks
+ then:
+ - mentionUsers:
+ mentionees:
+ - TravisCragg-MSFT
+ - ramankumarlive
+ - ushnaarshadkhan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute - RDFE
+ then:
+ - mentionUsers:
+ mentionees:
+ - Drewm3
+ - TravisCragg-MSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute - VM
+ then:
+ - mentionUsers:
+ mentionees:
+ - Drewm3
+ - TravisCragg-MSFT
+ - nikhilpatel909
+ - sandeepraichura
+ - hilaryw29
+ - GabstaMSFT
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Compute - VMSS
+ then:
+ - mentionUsers:
+ mentionees:
+ - TravisCragg-MSFT
+ - hilaryw29
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Connected Kubernetes
+ then:
+ - mentionUsers:
+ mentionees:
+ - akashkeshari
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Container Instances
+ then:
+ - mentionUsers:
+ mentionees:
+ - macolso
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Container Registry
+ then:
+ - mentionUsers:
+ mentionees:
+ - toddysm
+ - luisdlp
+ - northtyphoon
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Container Service
+ then:
+ - mentionUsers:
+ mentionees:
+ - qike-ms
+ - jwilder
+ - thomas1206
+ - seanmck
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cosmos
+ then:
+ - mentionUsers:
+ mentionees:
+ - pjohari-ms
+ - MehaKaushik
+ - zfoster
+ - kushagraThapar
+ - simorenoh
+ - simplynaveen20
+ - abinav2307
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Customer Insights
+ then:
+ - mentionUsers:
+ mentionees:
+ - shefymk
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Custom Providers
+ then:
+ - mentionUsers:
+ mentionees:
+ - manoharp
+ - MSEvanhi
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: CycleCloud
+ then:
+ - mentionUsers:
+ mentionees:
+ - adriankjohnson
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Bricks
+ then:
+ - mentionUsers:
+ mentionees:
+ - arindamc
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: DataBox
+ then:
+ - mentionUsers:
+ mentionees:
+ - tmvishwajit
+ - matdickson
+ - manuaery
+ - madhurinms
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: DataBox Edge
+ then:
+ - mentionUsers:
+ mentionees:
+ - a-t-mason
+ - ganzee
+ - manuaery
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Catalog
+ then:
+ - mentionUsers:
+ mentionees:
+ - ingave
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Factory
+ then:
+ - mentionUsers:
+ mentionees:
+ - Jingshu923
+ - zhangyd2015
+ - Frey-Wang
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Lake
+ then:
+ - mentionUsers:
+ mentionees:
+ - sumantmehtams
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Lake Storage Gen1
+ then:
+ - mentionUsers:
+ mentionees:
+ - sumantmehtams
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Lake Storage Gen2
+ then:
+ - mentionUsers:
+ mentionees:
+ - sumantmehtams
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Lake Analytics
+ then:
+ - mentionUsers:
+ mentionees:
+ - idear1203
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Lake Store
+ then:
+ - mentionUsers:
+ mentionees:
+ - sumantmehtams
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Migration
+ then:
+ - mentionUsers:
+ mentionees:
+ - radjaram
+ - kavitham10
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Data Share
+ then:
+ - mentionUsers:
+ mentionees:
+ - raedJarrar
+ - jifems
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: DevOps
+ then:
+ - mentionUsers:
+ mentionees:
+ - v-anvashist
+ - V-hmusukula
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Dev Spaces
+ then:
+ - mentionUsers:
+ mentionees:
+ - yuzorMa
+ - johnsta
+ - greenie-msft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Devtestlab
+ then:
+ - mentionUsers:
+ mentionees:
+ - Tanmayeekamath
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Device Provisioning Service
+ then:
+ - mentionUsers:
+ mentionees:
+ - nberdy
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Digital Twins
+ then:
+ - mentionUsers:
+ mentionees:
+ - sourabhguha
+ - inesk-vt
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Event Grid
+ then:
+ - mentionUsers:
+ mentionees:
+ - jfggdl
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Event Hubs
+ then:
+ - mentionUsers:
+ mentionees:
+ - Saglodha
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Functions
+ then:
+ - mentionUsers:
+ mentionees:
+ - Stefanus Hinardi
+ - Francisco-Gamino
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Graph.Microsoft
+ then:
+ - mentionUsers:
+ mentionees:
+ - dkershaw10
+ - baywet
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Guest Configuration
+ then:
+ - mentionUsers:
+ mentionees:
+ - mgreenegit
+ - vivlingaiah
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: HDInsight
+ then:
+ - mentionUsers:
+ mentionees:
+ - aim-for-better
+ - idear1203
+ - deshriva
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: HPC Cache
+ then:
+ - mentionUsers:
+ mentionees:
+ - romahamu
+ - omzevall
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Import Export
+ then:
+ - mentionUsers:
+ mentionees:
+ - madhurinms
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: KeyVault
+ then:
+ - mentionUsers:
+ mentionees:
+ - RandalliLama
+ - schaabs
+ - jlichwa
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Kubernetes Configuration
+ then:
+ - mentionUsers:
+ mentionees:
+ - NarayanThiru
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Azure Data Explorer
+ then:
+ - mentionUsers:
+ mentionees:
+ - ilayrn
+ - orhasban
+ - zoharHenMicrosoft
+ - sagivf
+ - Aviv-Yaniv
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Lab Services
+ then:
+ - mentionUsers:
+ mentionees:
+ - Tanmayeekamath
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Logic App
+ then:
+ - mentionUsers:
+ mentionees:
+ - Azure/azure-logicapps-team
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: LOUIS
+ then:
+ - mentionUsers:
+ mentionees:
+ - minamnmik
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Machine Learning
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureml-github
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Machine Learning Compute
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureml-github
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Machine Learning Experimentation
+ then:
+ - mentionUsers:
+ mentionees:
+ - aashishb
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Managed Services
+ then:
+ - mentionUsers:
+ mentionees:
+ - Lighthouse-Azure
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: MariaDB
+ then:
+ - mentionUsers:
+ mentionees:
+ - ambhatna
+ - savjani
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Marketplace Ordering
+ then:
+ - mentionUsers:
+ mentionees:
+ - prbansa
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Media Services
+ then:
+ - mentionUsers:
+ mentionees:
+ - akucer
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Migrate
+ then:
+ - mentionUsers:
+ mentionees:
+ - shijojoy
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Mobile Engagement
+ then:
+ - mentionUsers:
+ mentionees:
+ - kpiteira
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor
+ then:
+ - mentionUsers:
+ mentionees:
+ - SameergMS
+ - dadunl
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - Autoscale
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzMonEssential
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - ActivityLogs
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzMonEssential
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - Metrics
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzMonEssential
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - Diagnostic Settings
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzMonEssential
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - Alerts
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzmonAlerts
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - ActionGroups
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzmonActionG
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - LogAnalytics
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzmonLogA
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Monitor - ApplicationInsights
+ then:
+ - mentionUsers:
+ mentionees:
+ - azmonapplicationinsights
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: MySQL
+ then:
+ - mentionUsers:
+ mentionees:
+ - ambhatna
+ - savjani
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network
+ then:
+ - mentionUsers:
+ mentionees:
+ - aznetsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Application Gateway
+ then:
+ - mentionUsers:
+ mentionees:
+ - appgwsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - CDN
+ then:
+ - mentionUsers:
+ mentionees:
+ - t-bzhan
+ - gxue
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - DDOS Protection
+ then:
+ - mentionUsers:
+ mentionees:
+ - ddossuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - ExpressRoute
+ then:
+ - mentionUsers:
+ mentionees:
+ - exrsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Firewall
+ then:
+ - mentionUsers:
+ mentionees:
+ - fwsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Front Door
+ then:
+ - mentionUsers:
+ mentionees:
+ - cdnfdsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Load Balancer
+ then:
+ - mentionUsers:
+ mentionees:
+ - slbsupportgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Virtual Network NAT
+ then:
+ - mentionUsers:
+ mentionees:
+ - vnetsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Network Watcher
+ then:
+ - mentionUsers:
+ mentionees:
+ - netwatchsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - DNS
+ then:
+ - mentionUsers:
+ mentionees:
+ - dnssuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Traffic Manager
+ then:
+ - mentionUsers:
+ mentionees:
+ - tmsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - VPN Gateway
+ then:
+ - mentionUsers:
+ mentionees:
+ - vpngwsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Notification Hub
+ then:
+ - mentionUsers:
+ mentionees:
+ - tjsomasundaram
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Operational Insights
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzmonLogA
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Policy
+ then:
+ - mentionUsers:
+ mentionees:
+ - aperezcloud
+ - kenieva
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Policy Insights
+ then:
+ - mentionUsers:
+ mentionees:
+ - kenieva
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: PostgreSQL
+ then:
+ - mentionUsers:
+ mentionees:
+ - sunilagarwal
+ - lfittl-msft
+ - sr-msft
+ - niklarin
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Recovery Services Backup
+ then:
+ - mentionUsers:
+ mentionees:
+ - pvrk
+ - adityabalaji-msft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Recovery Services Site-Recovery
+ then:
+ - mentionUsers:
+ mentionees:
+ - Sharmistha-Rai
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Redis Cache
+ then:
+ - mentionUsers:
+ mentionees:
+ - yegu-ms
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Relay
+ then:
+ - mentionUsers:
+ mentionees:
+ - jfggdl
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Reservations
+ then:
+ - mentionUsers:
+ mentionees:
+ - Rkapso
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Resource Authorization
+ then:
+ - mentionUsers:
+ mentionees:
+ - darshanhs90
+ - AshishGargMicrosoft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Resource Graph
+ then:
+ - mentionUsers:
+ mentionees:
+ - chiragg4u
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Resource Health
+ then:
+ - mentionUsers:
+ mentionees:
+ - stephbaron
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Scheduler
+ then:
+ - mentionUsers:
+ mentionees:
+ - derek1ee
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Search
+ then:
+ - mentionUsers:
+ mentionees:
+ - bleroy
+ - tjacobhi
+ - markheff
+ - miwelsh
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Security
+ then:
+ - mentionUsers:
+ mentionees:
+ - chlahav
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Service Bus
+ then:
+ - mentionUsers:
+ mentionees:
+ - Saglodha
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Service Fabric
+ then:
+ - mentionUsers:
+ mentionees:
+ - QingChenmsft
+ - vaishnavk
+ - juhacket
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Schema Registry
+ then:
+ - mentionUsers:
+ mentionees:
+ - arerlend
+ - alzimmermsft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SignalR
+ then:
+ - mentionUsers:
+ mentionees:
+ - sffamily
+ - chenkennt
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL - VM
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL - Backup & Restore
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL - Data Security
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL - Elastic Jobs
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL - Managed Instance
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SQL - Replication & Failover
+ then:
+ - mentionUsers:
+ mentionees:
+ - azureSQLGitHub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Storage
+ then:
+ - mentionUsers:
+ mentionees:
+ - xgithubtriage
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Storsimple
+ then:
+ - mentionUsers:
+ mentionees:
+ - anoobbacker
+ - ganzee
+ - manuaery
+ - patelkunal
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Stream Analytics
+ then:
+ - mentionUsers:
+ mentionees:
+ - atpham256
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Subscription
+ then:
+ - mentionUsers:
+ mentionees:
+ - anuragdalmia
+ - shilpigautam
+ - ramaganesan-rg
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Support
+ then:
+ - mentionUsers:
+ mentionees:
+ - shahbj79
+ - mit2nil
+ - aygoya
+ - ganganarayanan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Synapse
+ then:
+ - mentionUsers:
+ mentionees:
+ - wonner
+ - yanjungao718
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Tables
+ then:
+ - mentionUsers:
+ mentionees:
+ - klaaslanghout
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: TimeseriesInsights
+ then:
+ - mentionUsers:
+ mentionees:
+ - Shipra1Mishra
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: vFXT
+ then:
+ - mentionUsers:
+ mentionees:
+ - zhusijia26
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Web Apps
+ then:
+ - mentionUsers:
+ mentionees:
+ - AzureAppServiceCLI
+ - antcp
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Virtual Network
+ then:
+ - mentionUsers:
+ mentionees:
+ - vnetsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Virtual WAN
+ then:
+ - mentionUsers:
+ mentionees:
+ - vwansuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Network Virtual Appliance
+ then:
+ - mentionUsers:
+ mentionees:
+ - nvasuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Bastion
+ then:
+ - mentionUsers:
+ mentionees:
+ - bastionsuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: IoT/CLI
+ then:
+ - mentionUsers:
+ mentionees:
+ - Azure/azure-iot-cli-triage
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Azure.Spring - Cosmos
+ then:
+ - mentionUsers:
+ mentionees:
+ - kushagraThapur
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Network - Private Link
+ then:
+ - mentionUsers:
+ mentionees:
+ - privlinksuppgithub
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Azure arc enabled servers
+ then:
+ - mentionUsers:
+ mentionees:
+ - rpsqrd
+ - edyoung
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: SecurityInsights
+ then:
+ - mentionUsers:
+ mentionees:
+ - amirkeren
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Azure Data Explorer
+ then:
+ - mentionUsers:
+ mentionees:
+ - Ilayrn
+ - orhasban
+ - zoharHenMicrosoft
+ - sagivf
+ - Aviv-Yaniv
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Communication
+ then:
+ - mentionUsers:
+ mentionees:
+ - acsdevx-msft
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cost Management and Consumption
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmaxpcrew
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: ML-AutoML
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - Aniththa
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Hyperdrive
+ then:
+ - mentionUsers:
+ mentionees:
+ - Aniththa
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Compute
+ then:
+ - mentionUsers:
+ mentionees:
+ - nishankgu
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Core UI
+ then:
+ - mentionUsers:
+ mentionees:
+ - abeomor
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Data4ML
+ then:
+ - mentionUsers:
+ mentionees:
+ - SturgeonMi
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Designer
+ then:
+ - mentionUsers:
+ mentionees:
+ - alainli0928
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Data Labeling
+ then:
+ - mentionUsers:
+ mentionees:
+ - kvijaykannan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-Inference
+ then:
+ - mentionUsers:
+ mentionees:
+ - shivanissambare
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ML-MLOps
+ then:
+ - mentionUsers:
+ mentionees:
+ - lostmygithubaccount
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: ML-Pipelines
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - shbijlan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: ML-Responsible AI
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - minthigpen
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: ML-Reinforcement Learning
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - keijik
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: ML-Training
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - lostmygithubaccount
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: ML-Workspace Management
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - rastala
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Spring Cloud
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - ShichaoQiu
+ - yuwzho
+ - yucwan
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cost Management-Budget
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmaxpcrew
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Consumption-Budget
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmaxpcrew
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cost Management-Query
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmixpdevs
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Consumption-Query
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmixpdevs
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cost Management-Billing
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmbpxpcrew
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Consumption-Billing
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmbpxpcrew
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cost Management-UsageDetailsAndExport
+ then:
+ - mentionUsers:
+ mentionees:
+ - TiagoCrewGitHubIssues
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Consumption-UsageDetailsandExport
+ then:
+ - mentionUsers:
+ mentionees:
+ - TiagoCrewGitHubIssues
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Consumption- RIandShowBack
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmshowbackdevs
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Serial Console
+ then:
+ - mentionUsers:
+ mentionees:
+ - CraigWiand
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Monitor - Exporter
+ - hasLabel:
+ label: Service Attention
+ then:
+ - mentionUsers:
+ mentionees:
+ - cijothomas
+ - reyang
+ - rajkumar-rangaraj
+ - TimothyMothra
+ - vishweshbankwar
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: Cost Management-RIandShowBack
+ then:
+ - mentionUsers:
+ mentionees:
+ - ccmshowbackdevs
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ - if:
+ - hasLabel:
+ label: Service Attention
+ - hasLabel:
+ label: ContainerApp
+ then:
+ - mentionUsers:
+ mentionees:
+ - calvinsID
+ replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
+ assignMentionees: False
+ description:
+ - if:
+ - payloadType: Pull_Request
+ - isAction:
+ action: Opened
+ - and:
+ - not:
+ activitySenderHasPermission:
+ permission: Write
+ - not:
+ activitySenderHasAssociation:
+ association: Member
+ - not:
+ activitySenderHasAssociation:
+ association: Collaborator
+ - not:
+ activitySenderHasPermission:
+ permission: Admin
+ then:
+ - addLabel:
+ label: customer-reported
+ - addReply:
+ reply: Thank you for your contribution ${issueAuthor}! We will review the pull request and get back to you soon.
+ description:
+ - if:
+ - payloadType: Pull_Request
+ - hasLabel:
+ label: no-recent-activity
+ - or:
+ - isAction:
+ action: Synchronize
+ - isAction:
+ action: Null
+ - isAction:
+ action: Unlabeled
+ - isAction:
+ action: Edited
+ - isAction:
+ action: Null
+ - isAction:
+ action: Reopened
+ - isAction:
+ action: Labeled
+ - isAction:
+ action: Edited
+ then:
+ - removeLabel:
+ label: no-recent-activity
+ description:
+ - if:
+ - payloadType: Pull_Request
+ then:
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/apimanagement/resource-manager
+ then:
+ - addLabel:
+ label: API Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/compute/resource-manager
+ then:
+ - addLabel:
+ label: Compute
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/network/resource-manager
+ then:
+ - addLabel:
+ label: Network
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/sql/resource-manager
+ then:
+ - addLabel:
+ label: SQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storage/resource-manager
+ then:
+ - addLabel:
+ label: Storage
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/synapse
+ then:
+ - addLabel:
+ label: Synapses
+ description:
+ - if:
+ - payloadType: Issue_Comment
+ - hasLabel:
+ label: no-recent-activity
+ - isOpen
+ then:
+ - removeLabel:
+ label: no-recent-activity
+ description:
+ - if:
+ - payloadType: Issues
+ - isAction:
+ action: Opened
+ - and:
+ - not:
+ activitySenderHasPermission:
+ permission: Write
+ - not:
+ activitySenderHasAssociation:
+ association: Member
+ - not:
+ activitySenderHasAssociation:
+ association: Collaborator
+ - not:
+ activitySenderHasPermission:
+ permission: Admin
+ then:
+ - addLabel:
+ label: customer-reported
+ - addLabel:
+ label: question
+ description:
+ - if:
+ - payloadType: Pull_Request
+ then:
+ - if:
+ - includesModifiedFiles:
+ files:
+ - dev/cognitiveservices/data-plane/Language/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cognitive Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/analysisservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Analysis Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/alertsmanagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Alerts Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/apimanagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: API Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/applicationinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/applicationinsights/data-plane/Monitor.Exporters/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Monitor - Exporter
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/authorization/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Authorization
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/automation/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Automation
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/batch/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Batch
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/batchai/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: BatchAI
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/billing/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Billing
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cdn/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network - CDN
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cognitiveservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cognitive Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cognitiveservices/data-plane/Language/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cognitive - Language
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/compute/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Compute
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/containerinstance/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Container Instances
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/containerregistry/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Container Registry
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/containerservice/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Container Service
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cosmos-db/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cosmos
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/customer-insights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Customer Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datafactory/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Factory
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datalake-analytics/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Lake Analytics
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datalake-store/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Lake Store
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datamigration/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Migration
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/deviceupdate/data-plane/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Device Update
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/devtestlabs/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Devtestlab
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/dns/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network - DNS
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/eventgrid/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Event Grid
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/eventhub/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Event Hubs
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/hdinsight/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: HDInsight
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/intune/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Intune
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/iothub/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: IotHub
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/keyvault/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: KeyVault
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/logic/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Logic App
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/machinelearning/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Machine Learning
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/machinelearningcompute/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Machine Learning Compute
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/mediaservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Media Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/mobileengagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Mobile Engagement
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/monitor/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Monitor
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/mysql/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: MySQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/network/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/notificationhubs/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Notification Hub
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/operationalinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Monitor - Operational Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/operationsmanagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Operations Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/peering/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Peering
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/policyinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Policy Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/postgresql/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: PostgreSQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/provisioningservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: PostgreSQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/recoveryservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: RecoveryServices
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/recoveryservicesbackup/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Recovery Services Backup
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/recoveryservicessiterecovery/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Recovery Services Site-Recovery
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/redis/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Redis Cache
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/relay/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Relay
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/scheduler/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Scheduler
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/search/data-plane/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Search
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/search/resource-manager/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Search
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/service-map/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Service Map
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/servicebus/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Service Bus
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/servicefabric/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Service Fabric
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/sql/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: SQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storage/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Storage
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storageimportexport/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Import Export
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storagesync/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: StorageSync
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storsimple8000series/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Storsimple
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/streamanalytics/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Stream Analytics
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/subscriptions/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Subscription
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/synapse/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Synapses
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/loadtestservice/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Load Test Service
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/maps/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Maps
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/purview/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Purview
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/timeseriesinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: TimeseriesInsights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/trafficmanager/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network - Traffic Manager
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/web/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Web Apps
+ - if:
+ - includesModifiedFiles:
+ files:
+ - profile/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Profile
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/hybridcompute/resource-manager/
+ - specification/connectedvmware/resource-manager/
+ - specification/azurestackhci/resource-manager/
+ - specification/scvmm/resource-manager/
+ then:
+ - addLabel:
+ label: ArcReview
+ description:
+ - if:
+ - payloadType: Pull_Request
+ then:
+ - if:
+ - includesModifiedFiles:
+ files:
+ - dev/cognitiveservices/data-plane/Language/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cognitive Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/analysisservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Analysis Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/alertsmanagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Alerts Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/apimanagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: API Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/applicationinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/applicationinsights/data-plane/Monitor.Exporters/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Monitor - Exporter
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/authorization/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Authorization
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/automation/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Automation
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/batch/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Batch
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/batchai/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: BatchAI
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/billing/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Billing
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cdn/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network - CDN
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cognitiveservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cognitive Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cognitiveservices/data-plane/Language/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cognitive - Language
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/compute/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Compute
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/containerinstance/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Container Instances
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/containerregistry/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Container Registry
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/containerservice/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Container Service
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/cosmos-db/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Cosmos
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/customer-insights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Customer Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datafactory/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Factory
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datalake-analytics/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Lake Analytics
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datalake-store/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Lake Store
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/datamigration/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Data Migration
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/deviceupdate/data-plane/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Device Update
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/devtestlabs/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Devtestlab
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/dns/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network - DNS
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/eventgrid/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Event Grid
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/eventhub/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Event Hubs
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/hdinsight/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: HDInsight
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/intune/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Intune
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/iothub/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: IotHub
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/keyvault/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: KeyVault
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/logic/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Logic App
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/machinelearning/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Machine Learning
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/machinelearningcompute/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Machine Learning Compute
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/mediaservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Media Services
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/mobileengagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Mobile Engagement
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/monitor/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Monitor
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/mysql/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: MySQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/network/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/notificationhubs/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Notification Hub
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/operationalinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Monitor - Operational Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/operationsmanagement/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Operations Management
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/peering/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Peering
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/policyinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Policy Insights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/postgresql/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: PostgreSQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/provisioningservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: PostgreSQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/recoveryservices/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: RecoveryServices
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/recoveryservicesbackup/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Recovery Services Backup
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/recoveryservicessiterecovery/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Recovery Services Site-Recovery
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/redis/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Redis Cache
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/relay/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Relay
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/scheduler/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Scheduler
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/search/data-plane/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Search
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/search/resource-manager/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Search
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/service-map/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Service Map
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/servicebus/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Service Bus
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/servicefabric/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Service Fabric
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/sql/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: SQL
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storage/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Storage
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storageimportexport/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Import Export
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storagesync/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: StorageSync
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/storsimple8000series/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Storsimple
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/streamanalytics/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Stream Analytics
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/subscriptions/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Subscription
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/synapse/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Synapses
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/timeseriesinsights/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: TimeseriesInsights
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/trafficmanager/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Network - Traffic Manager
+ - if:
+ - includesModifiedFiles:
+ files:
+ - specification/web/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Web Apps
+ - if:
+ - includesModifiedFiles:
+ files:
+ - profile/
+ excludedFiles:
+ - ''
+ then:
+ - addLabel:
+ label: Profile
+ description:
+ - if:
+ - payloadType: Issues
+ - hasLabel:
+ label: customer-reported
+ - hasLabel:
+ label: needs-triage
+ - isAction:
+ action: Labeled
+ then:
+ - addLabel:
+ label: CXP Attention
+ description:
+onFailure:
+onSuccess:
diff --git a/.github/pull_request_assignment.yml b/.github/pull_request_assignment.yml
index b01d4ea1f053..495d46dca2ea 100644
--- a/.github/pull_request_assignment.yml
+++ b/.github/pull_request_assignment.yml
@@ -10,6 +10,7 @@
# OpenAI data-plane PR
paths:
- "specification/cognitiveservices/data-plane/AzureOpenAI/**"
+ - "specification/cognitiveservices/OpenAI.Inference/**"
reviewers:
- lmazuel
diff --git a/.github/workflows/comment.yml b/.github/workflows/comment.yml
new file mode 100644
index 000000000000..db695baba900
--- /dev/null
+++ b/.github/workflows/comment.yml
@@ -0,0 +1,41 @@
+name: Comment Processor
+
+on:
+ issue_comment:
+ types: [created]
+
+permissions: {}
+
+jobs:
+ comment-handler:
+ permissions:
+ pull-requests: write # to read pull requests and write comments
+ name: Handle ${{ github.event_name }} ${{ github.event.action }} event
+ runs-on: ubuntu-latest
+ steps:
+ - name: Process comment
+ shell: pwsh
+ run: |
+ $payload = echo $env:PAYLOAD | ConvertFrom-Json -AsHashtable
+ if (!$payload.comment -or !$payload.comment.body) {
+ Write-Host "Empty comment, returning..."
+ return
+ }
+ $body = $payload.comment.body.Trim().ToLowerInvariant()
+ $expected = '/pr requestmerge'
+ if ($body -ne $expected) {
+ Write-Host "Comment did not equal '$expected', skipping..."
+ return
+ }
+ $label = 'MergeRequested'
+ Write-Host "gh pr edit $($payload.issue.number) --add-label `"$label`""
+ gh pr edit $payload.issue.html_url --add-label "$label"
+ if ($LASTEXITCODE) {
+ Write-Warning "Failed to add label"
+ exit $LASTEXITCODE
+ }
+ env:
+ PAYLOAD: ${{ toJson(github.event) }}
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+
diff --git a/.npmrc b/.npmrc
new file mode 100644
index 000000000000..b6f27f135954
--- /dev/null
+++ b/.npmrc
@@ -0,0 +1 @@
+engine-strict=true
diff --git a/.prettierrc.json b/.prettierrc.json
index 9915262a5721..878026f924c8 100644
--- a/.prettierrc.json
+++ b/.prettierrc.json
@@ -27,6 +27,20 @@
"excludeFiles": [
"specification/**/*.json"
]
+ },
+ {
+ "files": [
+ "**/*.ts"
+ ],
+ "options": {
+ "arrowParens": "always",
+ "bracketSpacing": true,
+ "endOfLine": "lf",
+ "printWidth": 100,
+ "semi": true,
+ "singleQuote": false,
+ "tabWidth": 2
+ }
}
]
}
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 76eab4509993..1a0c3175c426 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -22,6 +22,10 @@
],
"typescript.tsdk": "node_modules\\typescript\\lib",
"[json]": {
- "editor.defaultFormatter": "esbenp.prettier-vscode"
+ "editor.defaultFormatter": "vscode.json-language-features"
+ },
+ "[typescript]": {
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
+ "editor.formatOnSave": true
}
}
diff --git a/CODEOWNERS b/CODEOWNERS
index b1881de545a0..5d8559c95842 100644
--- a/CODEOWNERS
+++ b/CODEOWNERS
@@ -71,7 +71,7 @@
/specification/cognitiveservices/data-plane/Language/ @assafi @rokulka @ChongTang @annatisch @heaths @deyaaeldeen @kristapratico @mssfang @joseharriaga @minhanh-phan @Azure/api-stewardship-board
# PRLabel: %Compute
-/specification/compute/ @bilaakpan-ms @sandido @dkulkarni-ms @haagha @madewithsmiles @MS-syh2qs @grizzlytheodore @hyonholee @mabhard @danielli90 @smotwani @ppatwa @vikramd-ms @yunusm @ZhidongPeng @nkuchta @maheshnemichand @najams @changov
+/specification/compute/ @bilaakpan-ms @sandido @dkulkarni-ms @haagha @MS-syh2qs @grizzlytheodore @mabhard @danielli90 @smotwani @ppatwa @vikramd-ms @yunusm @ZhidongPeng @nkuchta @maheshnemichand @najams @changov
/specification/consumption/ @kjeur @panda-wang
@@ -156,7 +156,7 @@
/specification/monitor/ @gucalder
# PRLabel: %Network
-/specification/network/ @MikhailTryakhov
+/specification/network/ @Joanna-Yang-Art
# PRLabel: %Notification Hub
/specification/notificationhubs/ @amolr @smithab
@@ -179,6 +179,8 @@
/specification/purview/data-plane @mikekistler @Azure/api-stewardship-board
# PRLabel: %PostgreSQL
+/specification/postgresql/** @Azure/azure-sdk-write-postgresql
+
/specification/provisioningservices/ @kvish
# PRLabel: %RecoveryServices
@@ -261,5 +263,19 @@
/specification/**/resource-manager/**/readme.typescript.md @qiaozha
/specification/**/resource-manager/**/readme.az.md @jsntcy @qiaozha
/specification/**/resource-manager/**/readme.cli.md @jsntcy @qiaozha
-/specification/**/resource-manager/**/readme.go.md @ArcturusZhang
-/specification/**/resource-manager/**/readme.python.md @msyyc @Wzb123456789
+/specification/**/resource-manager/**/readme.go.md @tadelesh
+/specification/**/resource-manager/**/readme.python.md @msyyc
+
+###########
+# Eng Sys
+###########
+/.gitattributes @weshaggard @mikeharder @konrad-jamrozik
+/.gitignore @weshaggard @mikeharder @konrad-jamrozik
+/.prettierrc.json @weshaggard @mikeharder @konrad-jamrozik
+/package-lock.json @weshaggard @mikeharder @konrad-jamrozik
+/package.json @weshaggard @mikeharder @konrad-jamrozik
+/tsconfig.json @weshaggard @mikeharder @konrad-jamrozik
+/.azure-pipelines/ @weshaggard @mikeharder @konrad-jamrozik
+/.github/ @weshaggard @mikeharder @konrad-jamrozik
+/eng/ @weshaggard @mikeharder @konrad-jamrozik
+/scripts/ @weshaggard @mikeharder @konrad-jamrozik
diff --git a/custom-words.txt b/custom-words.txt
index e2538ccab8d3..aba954a49658 100644
--- a/custom-words.txt
+++ b/custom-words.txt
@@ -417,6 +417,7 @@ centralindia
centralus
centraluseuap
certchain
+certificateprofiles
certificatescreateorupdate
certificatesdelete
certificatethumbprint
@@ -495,9 +496,14 @@ codemirror
codepackage
codespace
codespaces
+codesign
+codesigning
+codesigningaccounts
+Code
coffeelake
cognitiveservices
collectiondetails
+cogservice
colls
colocation
cololocation
@@ -532,6 +538,7 @@ continuationtoken
continuousdataexports
continuouswebjobs
contoso
+Contoso's
contosodataset
contosomedia
contributer
@@ -560,6 +567,7 @@ createorupdate
createpreview
credativ
creds
+criterias
crossdomain
cscf
cscfg
@@ -582,6 +590,7 @@ customimagesearch
customizability
customizer
custommpi
+customermanagedkeys
customprebuiltdomains
customprebuiltentities
customprebuiltintents
@@ -1177,6 +1186,7 @@ illumos
iloveyou
imageanalysis
imagebuilder
+imagecomposition
imagelist
imagelists
imagesearch
@@ -1959,6 +1969,8 @@ piqd
pitr
pixelated
pkcs
+planogram
+planogramcompliance
pkis
playready
plex
@@ -2038,10 +2050,12 @@ privatelinks
privatelinkscopes
privatelinkservice
privatepreview
+productrecognition
projecthilo
propagations
propogation
protectable
+protobuf
providerhub
providerport
provisioner
@@ -2175,6 +2189,7 @@ removeaclentries
removedefaultacl
removenodes
removex
+reoffer
reparent
replicationdetails
replicationstatus
@@ -2252,6 +2267,7 @@ rollouts
rolloverdetails
rollupby
rootfs
+rootcert
rosettanetprocessconfigurations
rotatediskencryptionkey
rotationpolicy
@@ -2775,6 +2791,7 @@ unarchive
unassign
unassignment
unassigns
+unassigning
unattend
unbilled
unclaim
@@ -2859,6 +2876,7 @@ usagescenarios
useast
useraccount
userargs
+userassignedidentities
userdata
userdelegationkey
usererror
@@ -2985,6 +3003,7 @@ wandisco
wans
wargs
wasb
+wasbs
wasm
wasserstein
watchlist
@@ -3355,6 +3374,306 @@ Metadatas
Gtid
GTID
gtid
+Wifi
+Nwfs
+Hnsw
+Piqd
+Reranked
+Reranking
+contentsafety
+availiable
+xiaomi
+msapi
+msapiddl
+partitioninfo
+ddls
+serde
+onetoone
+onetomany
+manytoone
+manytomany
+stransparent
+forceencryption
+tlsciphers
+tlsprotocols
+nocopy
+xcool
+noAddressPrefixes
+serviceTagChangeNumber
+NodePool
+hnsonmigration
+aborthnsonmigration
+telemetryconfig
+UpgradingKVAIO
+WaitingForKVAIO
+lsilogic
+buslogic
+pvscsi
+lsilogicsas
+ipsettings
+linklayer
+Ctlr
+pmem
+actuals
+Actuals
+rawphysical
+rawvirtual
+sesparse
+blobstorage
+dataexplorer
+servicebusqueue
+servicebustopic
+dataexports
+stackset
+CSPM
+autoprovisioning
+videoanalyzer
+Unsecure
+linkconnections
+edittables
+detailedstatus
+linktables
+querytablestatus
+loadtestservice
+appcomponents
+vusers
+clientmetric
+testruns
+testrun
+yvalue
+IAASVM
+Picometer
+Petabit
+questionanswering
+napt
+Napt
+NAPT
+Plmn
+IMSI
+UE's
+Preemptable
+Ambr
+AMBR
+rfsp
+Rfsp
+snssai
+Snssai
+NSSAI
+Tbps
+Vuln
+Quickbase
+Smartsheet
+valn
+adamw
+hflip
+nesterov
+yolo
+CUDA
+xlarge
+Sobol
+Seasonality
+Wargs
+featurizers
+Spearman's
+Qualys
+primingjob
+operatorconnect
+getent
+useraccount
+businessmetadata
+usermetadata
+Relaytype
+Deboards
+Deregisters
+Dataworld
+Asana
+AppFigures
+Twilio
+getazresiliencystatus
+providerport
+unassignment
+unassign
+Unassigns
+enrollmentgroups
+scheduledjobs
+getdevices
+unmodeled
+getx
+setx
+verifyx
+removex
+generateverificationcodex
+favorited
+datawarehousequeries
+Dataware
+SIMIDs
+ICCID
+unversioned
+RANs
+azuresqldbkeyrotation
+DBCMK
+DTCs
+Angika
+Awadhi
+Bagheli
+Balkar
+Bhojpuri
+Bodo
+Brajbha
+Bundeli
+Chamling
+Chhattisgarhi
+Dari
+Devanagiri
+Dhimal
+Dogri
+Erzya
+Faroese
+Frulian
+Gagauz
+Gurung
+Halbi
+Haryanvi
+Inari
+Jaunsari
+K'iche
+Kangri
+Karachay
+Khaling
+Korku
+Koryak
+Kosraean
+Kumyk
+Kurukh
+Lule
+Mahasu
+Malto
+Niuean
+Nogay
+Sadri
+Sami
+Santali
+Sirmauri
+Skolt
+Gondor
+Thangmi
+Tuvan
+Uyghur
+occured
+Occured
+Paramter
+metallb
+kubevirt
+vmip
+xlargerc
+largerc
+mediumrc
+smallrc
+Autotune
+multiadsample
+Showmount
+autogrid
+IPVS
+taginheritance
+Satya
+Nadella
+Telangana
+servicehealth
+metricstaticthreshold
+metricsdynamicthreshold
+logalert
+logalertv2
+smartalert
+webtestalert
+logalertv1numresult
+logalertv1metricmeasurement
+activitylog
+budget
+actualcostbudget
+forecastedbudget
+syncsets
+Syncsets
+openshiftclusters
+openshiftversions
+PaloAltoNetworks
+Cloudngfw
+galleryimage
+networkinterfaces
+storagecontainers
+virtualharddisks
+vippool
+vwan
+Vwan
+VWAN
+routeset
+routesets
+wayfind
+wayfinding
+Securitytypes
+seccomp
+leadgen
+dryruns
+Dryrun
+dryrun
+Discoverability
+Precheck
+logbase
+Ueba
+Untrust
+Untrusted
+hotpatching
+Offersby
+Versionswithin
+generatesastoken
+updation
+interactivequery
+tmpfs
+npipe
+Tmpfs
+widget's
+BGP
+DPDK
+IPVLAN
+MACVLAN
+SRIOV
+Uncordoned
+Uncordon
+uncordon
+MAC
+PXE
+SHA
+TPM
+Tcpdump
+tcpdump
+SATA
+CNI
+Traceroute
+Kubectl
+Numastat
+Numactl
+Virsh
+Lldp
+lldp
+Virtio
+virtio
+Mebibytes
+UTURN
+Isochrone
+Ochestrator
+remediatable
+Overprovisioning
+Unprepares
+Unpreparing
+Pearsons
+Smirnov
+Kolmogorov
+Wasserstein
+DSPM
+Dspm
+Metadatas
+Gtid
+GTID
+gtid
Acks
safeuint
JWTs
@@ -3374,6 +3693,7 @@ onetoone
onetomany
manytoone
manytomany
+ssml
stransparent
forceencryption
tlsciphers
@@ -3381,3 +3701,6 @@ tlsprotocols
windowsserver
centos
ulimits
+vnetblock
+usedCPUMHz
+totalCPUMHz
\ No newline at end of file
diff --git a/dev/cognitiveservices/data-plane/Language/readme.md b/dev/cognitiveservices/data-plane/Language/readme.md
index c6228f0dc392..4ad066a416f5 100644
--- a/dev/cognitiveservices/data-plane/Language/readme.md
+++ b/dev/cognitiveservices/data-plane/Language/readme.md
@@ -46,11 +46,3 @@ swagger-to-sdk:
- repo: azure-sdk-for-net-track2
- repo: azure-sdk-for-python
```
-
-## Suppression
-
-``` yaml
-directive:
- - suppress: MISSING_APIS_IN_DEFAULT_TAG
- reason: Not every service will ship new versions within the Language pillar.
-```
diff --git a/documentation/Getting started with OpenAPI specifications.md b/documentation/Getting started with OpenAPI specifications.md
index 9c7b7e746cbf..05f3308ebda0 100644
--- a/documentation/Getting started with OpenAPI specifications.md
+++ b/documentation/Getting started with OpenAPI specifications.md
@@ -8,14 +8,16 @@ OpenAPI Specification (formerly known as Swagger Specification) is an API descri
Currently, we only support `OpenAPI Specification 2.0` or `Swagger V2.0`.
### Helpful Resources
+
* **[`Understanding the GitHub flow`](https://guides.github.com/introduction/flow/)**
-* **[`Microsoft REST-API guidelines`](https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md)**]
+* **[`CONTRIBUTING.md`](https://github.com/Azure/azure-rest-api-specs/blob/main/CONTRIBUTING.md)**
+* **[`Azure REST API guidelines`](https://github.com/microsoft/api-guidelines/blob/vNext/azure/Guidelines.md)**
+* **[`Azure OpenAPI Style Guide`](https://github.com/Azure/azure-api-style-guide/blob/main/openapi-style-guide.md)**
* **[`Resource Provider Guidelines`](https://aka.ms/rpguidelines)**
-* **[`Sample directory structure for swagger`](https://github.com/Azure/azure-rest-api-specs/wiki#directory-structure)**
+* **[`Directory structure`](https://github.com/Azure/azure-rest-api-specs/blob/main/README.md#directory-structure)**
* **[`Structure of a Swagger specification`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/creating-swagger.md)**
* **[`Sample Swagger specification`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/samplefiles/Microsoft.YourServiceName/stable/YYYY-MM-DD/YourServiceName.json)**
* **[`Sample Readme.md`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/samplefiles/samplereadme.md)**
-* **[`Swagger style guide`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-style-cheatsheet.md)**
* **[`Authoring good Swagger descriptions`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-authoring-descriptions.md)**
* **[`Validation tools`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/SwaggerValidationTools.md)**
* [`Validation checks through automated tools`](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md)
diff --git a/documentation/Getting-started-with-TypeSpec-specifications.md b/documentation/Getting-started-with-TypeSpec-specifications.md
new file mode 100644
index 000000000000..91f38fedd303
--- /dev/null
+++ b/documentation/Getting-started-with-TypeSpec-specifications.md
@@ -0,0 +1,29 @@
+## What is a TypeSpec Specification?
+
+TypeSpec is a versatile language used for describing cloud service APIs and generating various API description languages, client and service code, documentation, and other related assets. It provides highly extensible core language primitives that can describe API structures common among REST, GraphQL, gRPC, and other protocols.
+
+Within the azure-rest-api-specs repository, the TypeSpec specification serves as the source to generate corresponding OpenAPI 2.0 (swagger) API documentation. By utilizing the model and operation patterns found in the standard Azure typespec-core and typespec-resource-manager libraries, TypeSpec offers a much simpler way to express service APIs and ensures compliance with the Azure REST API guidelines for swagger specifications.
+
+**Please note** TypeSpec specification is REQUIRED for all new ARM services.
+
+### TLDR: Key checklist for TypeSpec PR in azure-rest-api-spec repos
+
+#### General:
+- :white_check_mark: Do include `tspconfig.yaml`.
+- :white_check_mark: Do include examples folder.
+- :x: Do NOT include package.json.
+- :x: Do NOT modify any generated files under `resource-manager` or `data-plane`.
+
+#### 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.
+
+#### 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.
+
+### 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
diff --git a/documentation/ci-fix.md b/documentation/ci-fix.md
index c39f48e63217..c65ccb876f7e 100644
--- a/documentation/ci-fix.md
+++ b/documentation/ci-fix.md
@@ -73,17 +73,20 @@ Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/st
Refer to [Semantic and Model Violations Reference](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/Semantic-and-Model-Violations-Reference.md) for detailed description of validations and how-to-fix guidance.
## Breaking Change Check
+
- An API contract is identified by its api-version value. Once published, no changes to this API contract are allowed. This applies regardless of whether the API contract is for private preview, public preview, or GA (stable).
- The same-version breaking change linter rules check for changes to an existing api-version swagger.
-- When introducing a new API contract (preview or not), the new API contract must be backwards compatible with the previous GA’s API contract.
- - However, during a (private or public) preview cycle, a new preview API contract does not have to be backwards compatible with the previous preview API contract although it must still be backwards compatible with the latest GA API contract.
- - The cross version breaking change linter rules checks for this by comparing the new swagger with the latest GA swagger. If there is no latest GA swagger, then the latest preview if it > 1 year old. If nether a GA or preview > 1 year old exists, then the swagger is considered good.
+ - When introducing a new API contract (preview or not), the new API contract must be backwards compatible with the previous GA’s API contract.
+ - However, during a (private or public) preview cycle, a new preview API contract does not have to be backwards compatible with the previous preview API contract although it must still be backwards compatible with the latest GA API contract.
+ - The cross version breaking change linter rules checks for this by comparing the new swagger with the latest GA swagger. If there is no latest GA swagger, then the latest preview if it > 1 year old. If nether a GA or preview > 1 year old exists, then the swagger is considered good.
+
+### Adding label on PR automatically
-### adding label on PR automatically
The breaking change check has two types of violations: one is breaking change in the same version but not breaking change in a new version, the other is breaking change even in a new version.
-For the former, a label 'NewApiVersionRequired' will be added automatically; For the latter , a label 'BreakingChangeReviewRequired' will be added automatically. Adding each label will trigger a github comment with guildance on how to fix.
+For the former, a label 'NewApiVersionRequired' will be added automatically; For the latter, a label 'BreakingChangeReviewRequired' will be added automatically. Adding each label will trigger a github comment with guildance on how to fix.
+
+### Run locally
-### run locally
run oad locally (the breaking change is reported by oad tool):
```
npm install -g @azure/oad
@@ -129,6 +132,15 @@ To fix this CI check failure, if you haven't got ARM signed off, pls get ARM sig
NOTE: If your RP is RPaaS RP, since RPaaS requires swagger merge first. In this case, you could ignore this CI check.
+## API Doc Preview
+
+If you see `Swagger ApiDocPreview ` check fail with a failure [like this one](https://github.com/Azure/azure-rest-api-specs/pull/24841/checks?check_run_id=15056283615):
+
+| Rule | Message |
+|-|-|
+| ❌ RestBuild error | "logUrl":"https://apidrop.visualstudio.com/Content%20CI/_build/results?buildId=373646&view=logs&j=fd490c07-0b22-5182-fac9-6d67fe1e939b",
"detail":"Run.ps1 failed with exit code 1 " |
+
+Then refer to [this TSG](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/79/Generation-of-docs-on-learn.microsoft.com?anchor=%22swagger-apidocpreview%22-build-is-failing).
## Service API Readiness Test
@@ -142,25 +154,29 @@ Note: Currently only applicable to management plane APIs, and target ARM region
To fix the check, download the artifact `api_scenario_test_output` from Azure pipeline where you can find the report.html and auto generated API Scenario file as baseline, then refer to [API Scenario documentation](./api-scenario/readme.md) to run and debug it locally. After local debug, commit the API Scenario file and `readme.test.md` file into your working branch and then the CI check will use the committed API Scenario file to re-run the test.
-## Cadl Validation
+## TypeSpec Validation
-This validator is to ensure the cadl & swagger files in PR are consistent and the 'cadl' folder contains 'examples' and 'package.json'
+This validator is to ensure the TypeSpec & swagger files in PR are consistent and passing validation.
### How to fix
+
| Error Code |Severity |Solution |
|---|---|---|
-|MissingCadlFile| Error |Adding the related cadl project into {RP-Name} folder, like [Qumulo.Manaement](https://github.com/Azure/azure-rest-api-specs/tree/main/specification/liftrqumulo/Qumulo.Management)|
-|MissingExamplesDirectory| Error |The example files should be kept in the 'examples' folder under the cadl project,the cadl-autorest emitter will copy them into the output folder and create corresponding 'x-ms-examples' in the swagger automatically when geneates the swagger, you should also check in it in PR. See [cadl-autorest](https://github.com/Azure/cadl-azure/blob/main/packages/cadl-autorest/README.md#examples-directory)|
-|InConsistentSwagger| Error |The generated swagger is inconsistent with the swagger in PR, so you need to re-generate swagger from cadl project and check in it. For how to generate swagger from cadl project, you can refer to [Complete Example and Generate OpenApi 2.0 spec](https://azure.github.io/cadl-azure/docs/getstarted/azure-resource-manager/step05) |
-|SwaggerNotExistInPR| Error |It occurs when there is a cadl file in the PR but the generated swagger is not present in the PR, so you need to add the swagger to the PR. For how to generate swagger from cadl project, you can refer to [Complete Example and Generate OpenApi 2.0 spec](https://azure.github.io/cadl-azure/docs/getstarted/azure-resource-manager/step05) |
-|GeneratedSwaggerNotFound| Error | It occurs when there is a cadl file in the PR but there is no swagger produced by the cadl-autorest emitter, so you need to check the cadl-project.yaml to see if it has the wrong configuration,like 'output-dir' or 'azure-resource-provider-folder'. |
-|MissingCadlProjectConfig| Warning |The configuration of '@azure-tools/cadl-autorest' including 'output-file','azure-resource-provider-folder' are used to customize the generated swagger file name and folder structure, it's recommended to use them in the 'cadl-project.yaml', here is a [sample cadl-project](https://github.com/Azure/azure-rest-api-specs/blob/c91eca4e2081703002581da6f58f9d9332e1afd1/documentation/cadl-sample-project/specification/contosowidgetmanager/Contoso.WidgetManager/cadl-project.yaml#L15). |
+|MissingTypeSpecFile| Error |Adding the related TypeSpec project into {RP-Name} folder, like [Qumulo.Manaement](https://github.com/Azure/azure-rest-api-specs/tree/main/specification/liftrqumulo/Qumulo.Management)|
+|MissingExamplesDirectory| Error |The example files should be kept in the 'examples' folder under the TypeSpec project,the typespec-autorest emitter will copy them into the output folder and create corresponding 'x-ms-examples' in the swagger automatically when geneates the swagger, you should also check in it in PR.
+|InConsistentSwagger| Error |The generated swagger is inconsistent with the swagger in PR, so you need to re-generate swagger from TypeSpec project and check in it. |
+|SwaggerNotExistInPR| Error |It occurs when there is a TypeSpec file in the PR but the generated swagger is not present in the PR, so you need to add the swagger to the PR. |
+|GeneratedSwaggerNotFound| Error | It occurs when there is a TypeSpec file in the PR but there is no swagger produced by the typespec-autorest emitter, so you need to check the tspconfig.yaml to see if it has the wrong configuration, like 'output-dir' or 'azure-resource-provider-folder'. |
+|MissingTypeSpecProjectConfig| Warning |The configuration of '@azure-tools/typespec-autorest' including 'output-file','azure-resource-provider-folder' are used to customize the generated swagger file name and folder structure, it's recommended to use them in the 'tspconfig.yaml', here is a [sample tspconfig.yaml ](https://github.com/Azure/azure-rest-api-specs/blob/main/specification/contosowidgetmanager/Contoso.WidgetManager/tspconfig.yaml#L11). |
+
+See [typespec-autorest](https://azure.github.io/typespec-azure/docs/emitters/typespec-autorest) for more information about how the swagger is generated from the TypeSpec project.
## Traffic Validation
This validator generates traffic for all operations defined in Swagger files under default tag of readme.md by using [RESTler](https://github.com/microsoft/restler-fuzzer). Then, it validates the request and response pairs from the traffic against the corresponding Swagger definitions. Finally, it provides an html report that reports the Swagger accuracy.
### How to understand and improve the report
+
Please refer to [swagger-accuracy-report](./swagger-accuracy-report.md).
## Suppression Process
diff --git a/documentation/swagger-style-cheatsheet.md b/documentation/swagger-style-cheatsheet.md
deleted file mode 100644
index f129862a048c..000000000000
--- a/documentation/swagger-style-cheatsheet.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# Swagger spec style guide
-
-Less style guide and more "cheat sheet," the following sections describe which fields or content are currently supported by [docs.microsoft.com](http://docs.microsoft.com), the toolchain, and the [Swagger/OpenAPI specification](http://swagger.io/specification/).
-
-This document will be updated as features and support are added to the toolchain and docs.microsoft.com. As more features and support are added, this will become more of a style guide.
-
-## Documentation field support by object type
-
-Not all Swagger documentation fields (summary, description, title) are supported by all Swagger object types. This is an [OpenAPI](http://swagger.io/specification/) specification restriction, not a docs.ms.com or toolchain restriction. The following table specifies which fields can be used for which object types in a Swagger *.json.
-
-| Object type | summary | description | title |
-|-------------:|:-----------:|:-----------:|:-----------:|
-| [operation](http://swagger.io/specification/#operationObject) | X | X | |
-| [parameter](http://swagger.io/specification/#parameterObject) | | X | |
-| [schema object](http://swagger.io/specification/#schemaObject) | | X | X |
-
-* `summary` and `title` fields are appropriate for short-form documentation of 120 characters or less.
-* `description` is for long-form content, and can contain examples of use ("examples" in this context should not to be confused with the [examples](#examples-field) field).
-
-## GitHub-flavored Markdown (GFM)
-
-[GitHub-flavored Markdown](https://help.github.com/articles/github-flavored-markdown) (GFM) is not yet fully* supported in the `description` field.
-
-\* The Swagger specification itself supports GFM in the `description` field of several object types, as does OPS. However, AutoRest currently passes through GFM formatting tags directly, so `**my bolded text**` (*including* the asterisks) will end up in your generated clients' docs. Don't use GFM in Swagger spec descriptions **yet**.
-
-## HTML
-
-Do **not** put HTML tags in any of the documentation fields.
-
-## `examples` field
-
-You *should* populate the [examples](http://swagger.io/specification/#exampleObject) field for operation responses.
-
-Format it as valid JSON (i.e. *don't* stuff it all into a string with `\n`s) and it'll be rendered as the raw JSON response object on docs. For an example, see the Monitor REST API reference
-
-* Rendered: [Monitor > AlertRules_Get](https://docs.microsoft.com/rest/api/monitor/alertrules#AlertRules_Get) (see Returns section)
-* Source: [insightsManagementClient_AlertRules.json](https://github.com/Azure/azure-rest-api-specs/blob/master/arm-insights/2016-03-01/swagger/insightsManagementClient_AlertRules.json#L184) line 184
-
-## Overwrites
-
-Not all fields support overwrites. For example, only the `summary` and `description` fields of a Swagger spec can be overwritten in REST API documentation. See the DocFx documentation for lists of which fields can be overwritten:
-
-* [REST API](https://dotnet.github.io/docfx/tutorial/intro_overwrite_files.html#rest-api-model)
-* [Managed reference](https://dotnet.github.io/docfx/tutorial/intro_overwrite_files.html#managed-reference-model)
\ No newline at end of file
diff --git a/documentation/typespec-rest-api-dev-process.md b/documentation/typespec-rest-api-dev-process.md
index 3bc25325be22..afeba7ceb609 100644
--- a/documentation/typespec-rest-api-dev-process.md
+++ b/documentation/typespec-rest-api-dev-process.md
@@ -4,32 +4,21 @@
1. Introduction
2. Repo setup & prerequisites
-3. Setting up
-4.
+3. Creating a new TypeSpec project
+4. Prepare and submit a Pull Request for reviewing
+5. Generate or Refresh SDK code from a TypeSpec project
### 1. Introduction
-This document describes the processes of developing Azure Rest APIs and SDKs with TypeSpec language. The steps below assumes that you are developing TypeSpec API specifications in the `azure-rest-api-specs` repos.
+This document describes the processes of developing Azure Rest APIs and SDKs with TypeSpec language. The steps below assumes that you are developing TypeSpec API specifications in the `azure-rest-api-specs` and `azure-rest-api-specs-pr`repos.
-If you are developing within your own ADO repo first and then submitting into `azure-rest-api-specs` repos for review and release, you will need to copy the files over.
+If you are developing within your own ADO repo first and then submitting into `azure-rest-api-specs` repos for review and release, you will need to copy the TypeSpec files over.
### 2. Repo setup & prerequisites
- The main repos for Azure rest-api are [azure-rest-api-specs](https://github.com/azure/azure-rest-api-specs) and [azure-rest-api-specs-pr](https://github.com/azure/azure-rest-api-specs-pr) repos. The `-pr` repo contains `RPSaaSMaster` and `RPSaaSDev` branches for ProviderHub based ARM service specs.
-#### 2.1 With VSCode docker .devcontainer
-
-All prerequisites have been installed in the dev container. You should to have `Docker Desktop` and `WSL2` running if you are on Windows machine.
-
-To start, you just need to install `Dev Containers` VS code extension, then open the repo path.
-
-- VSCode will detect the .devcontainer and prompt you to reopen the workspace.
-
-- Alternatively, you can use Command Palette -> Dev Containers: Reopen in Container.
-
-Once VSCode reopened in Container, you can run any of the program below in the VSCode integrated terminal.
-
-#### 2.2 With local machine development
+#### 2.1 With local machine development
- [Node.js LTS](https://nodejs.org/en) version 16 or above. Ensure you can run the npm command in a command prompt:
```
@@ -45,20 +34,39 @@ Once VSCode reopened in Container, you can run any of the program below in the V
- Ensure you can run TypeSpec command within the repo folders.
```
- tsp --version
+ npx tsp --version
```
-- Install TypeSpec VisualStudio or VSCode extensions to get syntex highlighting, tool tips in IDE:
+- One-time set up: Install TypeSpec VisualStudio or VSCode extensions to get syntex highlighting, tool tips in IDE:
```
- tsp code install
+ npx tsp code install
```
OR
```
- tsp vs install
+ npx tsp vs install
```
-### 3. Creating a TypeSpec project
+#### 2.2 VSCode with local docker .devcontainer
+
+All prerequisites have been installed in the dev container. You should to have `Docker Desktop` and `WSL2` running if you are on Windows machine.
+
+To start, you just need to install `Dev Containers` VS code extension, then open the repo path.
+
+- VSCode will detect the .devcontainer and prompt you to reopen the workspace.
+
+- Alternatively, you can use Command Palette -> Dev Containers: Reopen in Container.
+
+Once VSCode reopened in Container, you can run any of the program below in the VSCode integrated terminal.
+
+#### 2.2 VSCode in browser via github codespaces
+
+Github codespaces leverage the same dev container in the repo. The difference is it is hosted in cloud with VSCode in browser.
+
+To start, you just need to browse to the `azure-rest-api-specs` repo, select `<> Code` drop down and follow `Codespaces` instructions.
+
+
+### 3. Creating a new TypeSpec project
Please first review recommended folder structure detailed in [this document](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/typespec-structure-guidelines.md).
@@ -67,33 +75,94 @@ Please first review recommended folder structure detailed in [this document](htt
3. Create a new TypeSpec project based on Azure template with command:
```cli
- tsp init https://aka.ms/typespec/azure-init
+ npx tsp init https://aka.ms/typespec/azure-init
```
-
-4. Compile the TypeSpec project with command:
+4. Select `(rest-api-spec repo) ARM` or `(rest-api-spec repo) Data-plane` and answer appropriate naming questions.
+5. Compile the generated TypeSpec project with command:
```cli
- tsp compile .
+ npx tsp compile .
```
The generated swagger files should be correctly placed in `data-plane` or `resource-manager` folders follwoing the naming conventions.
5. Now the project has been set up. You can modify the sample and develop your own APIs with TypeSpec
+### 4. Prepare and submit a Pull Request for reviewing
+
+1. Create a branch in your local repository for your changes.
+
+2. Create or update the TypeSpec files for your service.
+
+3. Add or update 'examples' files for each operation of your OpenAPI file.
+
+ The [oav](https://github.com/Azure/oav) provides two ways to generate Swagger examples:
+
+ 1. Generating basic examples and then manually modify the values. It will generate two examples for each operation: one contains minimal properties set, the other contains the maximal properties set. Since the auto-generated examples consist of random values for most types, you need replace them with meaningful values.
+
+ ```bash
+ oav generate-examples openapi.json
+ ```
+
+ 2. (**Recommended**) Generating high quality examples from API Scenario test. Refer to [API Test section](getstarted/providerhub/step03-api-testing.md). It will validate the API quality and generate Swagger examples from live traffic in API Scenario test.
-### 4. Generate or Refresh SDK code from a TypeSpec project
+ ```bash
+ oav run --spec --generateExample
+ ```
-The section describe the process for data-plane SDKs. Management-plane SDKs still follow the `autorest` process.
+ Note, latest OAV tool should automatically generate the following. However, if you are generating the examples manually, please ensure you have:
+ - include `title` field and make sure it is descriptive and unique for each operation.
+ - include `operationId`. This is used to match with declared operations in TypeSpec and correctly output in swagger.
-#### 4.1 With VSCode docker .devcontainer
+4. Add/update the `readme.md` file in either the 'resource-manager' or 'data-plane' folder to specify the version and location of the OpenAPI files. The `readme.md` is needed for both management-plane and data-plane services for REST API Docs generation. For management-plane services, the `readme.md` is also needed for SDK generation -- see [generating client with autorest](https://github.com/Azure/autorest/blob/main/docs/generate/readme.md#keeping-your-options-in-one-place-the-preferred-option). The `readme.md` may contain generation options for multiple languages, separated into high-level sections.
+ Example:[sample-readme](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/samplefiles/samplereadme.md)
-#### 4.2 With local machine development
+5. Generate swagger files:
+ - sync with the target branch in the azure-rest-api-specs repo
+ ```
+ git pull upstream
+ ```
+ - in the root directory, run `npm install`
+ - in the project directory, `npx tsp compile`. This will generate swagger files under `resource-manager` or `data-plane` folders.
+
+6. Ensure all generated files under `resource-manager` or `data-plane` have been added to PR.
+
+7. Send a pull request .
+
+ - commit all your changes.
+ - push your branch to your fork of the repo.
+ - send a pull request to the original repo from your forked repo.
+
+ See the ARM Wiki for information on the [supported repos and branches for management-plane services](https://armwiki.azurewebsites.net/rpaas/swaggeronboarding.html#supported-github-reposbranches).
+
+#### 4.1 Fix the errors of PR reviewing CI checks
+
+The CI checks result will be commented on the PR. you can refer to the [CI fix Guide](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/ci-fix.md).
+
+Note:
+Since the OpenAPI is generated from TypeSpec, to change the OpenAPI, you must update the TypeSpec file and regenerate the OpenAPI and avoid updating OpenAPI directly to keep the consistency between OpenAPI and TypeSpec.
+For support & help, you can post a message to [TypeSpec parters - teams channel](https://teams.microsoft.com/l/channel/19%3a2d4efc54d99e4d00a568da7cf0643c1b%40thread.skype/TypeSpec%2520Partners?groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47).
+
+### 5. Generate or Refresh SDK code from a TypeSpec project
+
+The section describe the process for data-plane SDKs. Management-plane SDKs still follow separate existing `autorest` process.
+
+This assumes you have cloned language SDKs into your local folder at same level of `azure-rest-api-spec`.
+```
+ \-
+ azure-rest-api-specs/
+ azure-rest-api-specs-pr/
+ azure-sdk-for-java/
+ azure-sdk-for-js/
+ azure-sdk-for-net/
+ azure-sdk-for-python/
+``````
-This assumes you have cloned language SDKs into your local folder. `./eng/script/TypeSpec-Generate-Sdk.ps1` script will generate the necessary SDK folder and project structure if it does not already exist, and then regenerate the SDK source code.
+ You can then run `./eng/script/TypeSpec-Generate-Sdk.ps1` script to generate the necessary SDK folder and project structure if it does not already exist, and then regenerate the SDK source code.
Scenarios:
-1. Test generation of SDK project and code with local TypeSpec changes in your `rest-api-specs` repo. Please note this cannot be used to submit a SDK PR as it does not contain a valid commit id for the TypeSpec file.
+1. Test generation of SDK project and code with local TypeSpec changes in your `azure-rest-api-specs` repo. Please note this cannot be used to submit a SDK PR as it does not contain a valid commit id for the TypeSpec file.
```cli
cd specifications/contoso/contoso.widgetmanager
diff --git a/eng/pipelines/templates/steps/typespec-ci.yml b/eng/pipelines/templates/steps/typespec-ci.yml
deleted file mode 100644
index de04728f74b0..000000000000
--- a/eng/pipelines/templates/steps/typespec-ci.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-parameters:
-- name: Folder
- type: string
-- name: DisplayName
- type: string
-
-steps:
-- script: npx --no tsv ${{parameters.Folder}}
- displayName: ${{parameters.DisplayName}}
- condition: succeededOrFailed()
diff --git a/eng/pipelines/typespec-ci.yml b/eng/pipelines/typespec-ci.yml
deleted file mode 100644
index 0469c9289791..000000000000
--- a/eng/pipelines/typespec-ci.yml
+++ /dev/null
@@ -1,104 +0,0 @@
-trigger:
- branches:
- include:
- - main
- - typespec-next
-
-pr:
- branches:
- include:
- - main
- - typespec-next
- paths:
- include:
- - package.json
- - package-lock.json
- - eng/pipelines/typespec-ci.yml
- - eng/pipelines/templates/steps/typespec-ci.yml
- - specification/contosowidgetmanager
- - specification/cognitiveservices
- - specification/confidentialledger
- - specification/containerservice
- - specification/containerstorage
- - specification/servicenetworking
- - specification/sphere
- - specification/translation
-
-jobs:
-- job: TypeSpecCI
- pool:
- name: azsdk-pool-mms-ubuntu-2204-general
- vmImage: ubuntu-22.04
-
- steps:
- - script: npm ci
- displayName: npm ci
-
- - script: npm ls -a
- displayName: npm ls -a
- condition: succeededOrFailed()
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/contosowidgetmanager/Contoso.WidgetManager
- DisplayName: Contoso.WidgetManager
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/cognitiveservices/AnomalyDetector
- DisplayName: AnomalyDetector
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/cognitiveservices/ContentSafety
- DisplayName: ContentSafety
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/cognitiveservices/HealthInsights/healthinsights.openapi
- DisplayName: healthinsights.openapi
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/cognitiveservices/HealthInsights/healthinsights.oncophenotype
- DisplayName: healthinsights.oncophenotype
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/cognitiveservices/HealthInsights/healthinsights.trialmatcher
- DisplayName: healthinsights.trialmatcher
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/cognitiveservices/OpenAI.Inference
- DisplayName: OpenAI.Inference
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/confidentialledger/Microsoft.ManagedCcf
- DisplayName: ManagedCcf
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/containerservice/Fleet.Management
- DisplayName: Fleet.Management
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/containerstorage/ContainerStorage.Management
- DisplayName: ContainerStorage.Management
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/servicenetworking/ServiceNetworking.Management
- DisplayName: Microsoft.ServiceNetworking
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/sphere/Sphere.Management
- DisplayName: Sphere.Management
-
- - template: templates/steps/typespec-ci.yml
- parameters:
- Folder: specification/translation/Azure.AI.TextTranslation
- DisplayName: AI.TextTranslation
diff --git a/eng/pipelines/typespec-validation-all.yml b/eng/pipelines/typespec-validation-all.yml
new file mode 100644
index 000000000000..33b94bcf7889
--- /dev/null
+++ b/eng/pipelines/typespec-validation-all.yml
@@ -0,0 +1,39 @@
+trigger:
+ branches:
+ include:
+ - main
+ - typespec-next
+
+pr: none
+
+jobs:
+- job: Validate_All_Specs
+
+ strategy:
+ matrix:
+ Linux:
+ Pool: azsdk-pool-mms-ubuntu-2204-general
+ OsVmImage: ubuntu-22.04
+ Windows:
+ Pool: azsdk-pool-mms-win-2022-general
+ OsVmImage: windows-2022
+
+ pool:
+ name: $(Pool)
+ vmImage: $(OSVmImage)
+
+ steps:
+ - script: npm --version --loglevel info
+ displayName: npm --version
+
+ - script: npm ci
+ displayName: npm ci
+
+ - script: npm ls -a
+ displayName: npm ls -a
+ condition: succeededOrFailed()
+
+ - pwsh: |
+ $(Build.SourcesDirectory)/eng/scripts/Validate-TypeSpec.ps1 $(Build.SourcesDirectory) -GitClean
+ displayName: Validate All Specs
+ condition: succeededOrFailed()
diff --git a/eng/pipelines/typespec-validation.yml b/eng/pipelines/typespec-validation.yml
new file mode 100644
index 000000000000..402cc9acb14c
--- /dev/null
+++ b/eng/pipelines/typespec-validation.yml
@@ -0,0 +1,32 @@
+trigger: none
+
+pr:
+ branches:
+ include:
+ - '*'
+
+jobs:
+- job: Validate_Impacted_Specs
+ pool:
+ name: azsdk-pool-mms-ubuntu-2204-general
+ vmImage: ubuntu-22.04
+
+ steps:
+ - script: npm --version --loglevel info
+ displayName: npm --version
+
+ - script: npm ci
+ displayName: npm ci
+
+ - script: npm ls -a
+ displayName: npm ls -a
+ condition: succeededOrFailed()
+
+ - pwsh: |
+ $(Build.SourcesDirectory)/eng/scripts/Validate-TypeSpec.ps1 `
+ $(Build.SourcesDirectory) `
+ "origin/${env:SYSTEM_PULLREQUEST_TARGETBRANCH}" `
+ "${env:SYSTEM_PULLREQUEST_SOURCECOMMITID}" `
+ -GitClean
+ displayName: Validate Impacted Specs
+ condition: succeededOrFailed()
diff --git a/eng/scripts/Get-TypeSpec-Folders.ps1 b/eng/scripts/Get-TypeSpec-Folders.ps1
new file mode 100644
index 000000000000..387ee3aebb6a
--- /dev/null
+++ b/eng/scripts/Get-TypeSpec-Folders.ps1
@@ -0,0 +1,60 @@
+[CmdletBinding()]
+param (
+ [Parameter(Position = 0, Mandatory = $true)]
+ [string] $SpecsRepoRootDirectory,
+ [Parameter(Position = 1, Mandatory = $false)]
+ [string]$TargetBranch,
+ [Parameter(Position = 2, Mandatory = $false)]
+ [string]$SourceBranch
+)
+
+$changedFiles = @()
+$allChangedFiles = (Get-ChildItem -path ./specification tspconfig.yaml -Recurse).Directory.FullName | ForEach-Object {[IO.Path]::GetRelativePath($($pwd.path), $_)}
+$allChangedFiles = $allChangedFiles -replace '\\', '/'
+
+if ([string]::IsNullOrEmpty($TargetBranch) -or [string]::IsNullOrEmpty($SourceBranch)) {
+ if ($TargetBranch -or $SourceBranch) {
+ throw "Please provide both target branch and source branch."
+ }
+ $changedFiles = $allChangedFiles
+}
+else {
+ Write-Host "git -c core.quotepath=off -c i18n.logoutputencoding=utf-8 diff --name-only `"$TargetBranch...$SourceBranch`" --"
+ $changedFiles = git -c core.quotepath=off -c i18n.logoutputencoding=utf-8 diff --name-only `"$TargetBranch...$SourceBranch`" --
+ $changedFiles = $changedFiles -replace '\\', '/' | Sort-Object
+
+ Write-Host "changedFiles:"
+ foreach ($changedFile in $changedFiles) {
+ Write-Host " $changedFile"
+ }
+ Write-Host
+
+ $engFiles = $changedFiles | Where-Object {if ($_) { $_.StartsWith('eng') }}
+
+ $rootFilesImpactingTypeSpec = @(
+ ".gitattributes",
+ ".prettierrc.json",
+ "package-lock.json",
+ "package.json",
+ "tsconfig.json"
+ )
+ $repoRootFiles = $changedFiles | Where-Object {$_ -in $rootFilesImpactingTypeSpec}
+
+ if (($Env:BUILD_REPOSITORY_NAME -eq 'azure/azure-rest-api-specs') -and ($engFiles -or $repoRootFiles)) {
+ $changedFiles = $allChangedFiles
+ }
+ else {
+ $changedFiles = $changedFiles | Where-Object {if ($_) { $_.StartsWith('specification') }}
+ }
+}
+
+$typespecFolders = @()
+foreach ($file in $changedFiles) {
+ if ($file -match 'specification\/[^\/]*\/') {
+ $typespecFolder = (Get-ChildItem -path $matches[0] tspconfig.yaml -Recurse).Directory.FullName | ForEach-Object {if ($_) { [IO.Path]::GetRelativePath($($pwd.path), $_) }}
+ $typespecFolders += $typespecFolder -replace '\\', '/'
+ }
+}
+$typespecFolders = $typespecFolders | Select-Object -Unique | Sort-Object
+
+return $typespecFolders
diff --git a/eng/scripts/TypeSpec-Generate-Sdk.ps1 b/eng/scripts/TypeSpec-Generate-Sdk.ps1
index 5bae6a521ffb..7c3661616da3 100644
--- a/eng/scripts/TypeSpec-Generate-Sdk.ps1
+++ b/eng/scripts/TypeSpec-Generate-Sdk.ps1
@@ -1,3 +1,17 @@
+###
+# Conventient usage:
+# 1) generate specific language sdk based on current typespec folder
+# ./TypeSpec-Generate-Sdk.ps1 -SdkLanguage {language}
+# e.g. ./TypeSpec-Generate-Sdk.ps1 -SdkLanguage dotnet
+# The pre-requisite is the sdk repos path in local machine follows below convention:
+# 1). "azure-rest-api-specs" and "sdk-repos" are peer folder under same parent folder
+# 2). each sdk language repo is under "sdk-repos" folder, i.e.
+# sdk-repos/azure-sdk-for-net
+# sdk-repos/azure-sdk-for-java
+# sdk-repos/azure-sdk-for-python
+# sdk-repos/azure-sdk-for-js
+###
+
[CmdletBinding()]
param (
[Parameter(Position = 0)]
@@ -8,11 +22,67 @@ param (
[Parameter(Position = 2)]
[string] $CommitHash,
[Parameter(Position = 3)]
- [string] $RepoUrl
+ [string] $RepoUrl,
+ [string] $SdkLanguage
)
-if ($TypeSpecProjectDirectory -contains ".") {
- $TypeSpecProjectDirectory = Resolve-Path $TypeSpecProjectDirectory
+$TypeSpecProjectDirectory = (Resolve-Path $TypeSpecProjectDirectory).Path
+
+if ($SdkLanguage) {
+ # example value of TypeSpecProjectDirectory: /workspaces/azure-rest-api-specs/specification/contosowidgetmanager/Contoso.WidgetManager
+ $index = $TypeSpecProjectDirectory.IndexOf("specification")
+ if ($index -eq -1) {
+ Write-Error "The input TypeSpecProjectDirectory parameter doesn't have 'specification' folder in its path: $TypeSpecProjectDirectory"
+ exit 1
+ }
+ $specFolderPath = $TypeSpecProjectDirectory.Substring(0, $index - 1)
+ $rootPath = Split-Path $specFolderPath -Parent
+ $sdkRepoRoot = Join-Path $rootPath "sdk-repos"
+ if (!(Test-Path $sdkRepoRoot)) {
+ Write-Error "sdk repos root folder doesn't eixst: $sdkRepoRoot"
+ exit 1
+ }
+
+ # trying to locate the default sdk repo folder under 'sdk-repos' folder by language value
+ switch ($SdkLanguage) {
+ "dotnet" {
+ Write-Host "Generating dotnet sdk code ..."
+ $sdkRepoPath = Join-Path $sdkRepoRoot "azure-sdk-for-net"
+ if (!(Test-Path $sdkRepoPath)) {
+ Write-Error "sdk repo doesn't exist: $sdkRepoPath"
+ exit 1
+ }
+ }
+ "java" {
+ Write-Host "Generating java sdk code ..."
+ $sdkRepoPath = Join-Path $sdkRepoRoot "azure-sdk-for-java"
+ if (!(Test-Path $sdkRepoPath)) {
+ Write-Error "sdk repo doesn't exist: $sdkRepoPath"
+ exit 1
+ }
+ }
+ "python" {
+ Write-Host "Generating python sdk code ..."
+ $sdkRepoPath = Join-Path $sdkRepoRoot "azure-sdk-for-python"
+ if (!(Test-Path $sdkRepoPath)) {
+ Write-Error "sdk repo doesn't exist: $sdkRepoPath"
+ exit 1
+ }
+ }
+ "js" {
+ Write-Host "Generating js sdk code ..."
+ $sdkRepoPath = Join-Path $sdkRepoRoot "azure-sdk-for-js"
+ if (!(Test-Path $sdkRepoPath)) {
+ Write-Error "sdk repo doesn't exist: $sdkRepoPath"
+ exit 1
+ }
+ }
+ default {
+ Write-Error "The input SdkLanguage parameter should be one of this values: dotnet, java, python, js"
+ exit 1
+ }
+ }
+ $SdkRepoRootDirectory = $sdkRepoPath
}
try {
diff --git a/eng/scripts/Validate-TypeSpec.ps1 b/eng/scripts/Validate-TypeSpec.ps1
new file mode 100644
index 000000000000..5ad68b990a71
--- /dev/null
+++ b/eng/scripts/Validate-TypeSpec.ps1
@@ -0,0 +1,39 @@
+[CmdletBinding()]
+param (
+ [Parameter(Position = 0, Mandatory = $true)]
+ [string] $SpecsRepoRootDirectory,
+ [Parameter(Position = 1, Mandatory = $false)]
+ [string]$TargetBranch,
+ [Parameter(Position = 2, Mandatory = $false)]
+ [string]$SourceBranch,
+ [Parameter(Mandatory = $false)]
+ [switch]$GitClean
+)
+
+$exitCode = 0
+
+$typespecFolders = &"$PSScriptRoot/Get-TypeSpec-Folders.ps1" "$SpecsRepoRootDirectory" "$TargetBranch" "$SourceBranch"
+
+Write-Host "typespecFolders:"
+foreach ($typespecFolder in $typespecFolders) {
+ Write-Host " $typespecFolder"
+}
+Write-Host
+
+if ($typespecFolders) {
+ $typespecFolders = $typespecFolders.Split('',[System.StringSplitOptions]::RemoveEmptyEntries)
+ foreach ($typespecFolder in $typespecFolders) {
+ npx --no tsv $typespecFolder 2>&1 | Write-Host
+ if ($LASTEXITCODE) {
+ $exitCode = 1
+ }
+ if ($GitClean) {
+ Write-Host "git restore ."
+ git restore .
+ Write-Host "git clean -df"
+ git clean -df
+ }
+ }
+}
+
+exit $exitCode
diff --git a/eng/tools/TypeSpecValidation/cmd/tsv.js b/eng/tools/TypeSpecValidation/cmd/tsv.js
index 4393c7a3c5bd..02442732ff08 100755
--- a/eng/tools/TypeSpecValidation/cmd/tsv.js
+++ b/eng/tools/TypeSpecValidation/cmd/tsv.js
@@ -1,5 +1,5 @@
#!/usr/bin/env node
-import { main } from "../dist/TypeSpecValidation.js"
+import { main } from "../dist/index.js"
await main();
diff --git a/eng/tools/TypeSpecValidation/package.json b/eng/tools/TypeSpecValidation/package.json
index 3bf866f18f1a..7a00f78b4fe1 100644
--- a/eng/tools/TypeSpecValidation/package.json
+++ b/eng/tools/TypeSpecValidation/package.json
@@ -8,9 +8,18 @@
"tsv": "cmd/tsv.js"
},
"dependencies": {
+ "debug": "^4.3.4",
"simple-git": "^3.16.0"
},
"devDependencies": {
- "@types/node": "^18.16.18"
+ "@types/debug": "^4.1.8",
+ "@types/node": "^18.16.18",
+ "typescript": "~5.0.4"
+ },
+ "scripts": {
+ "postinstall": "tsc"
+ },
+ "engines": {
+ "node": "^16.17.0 || ^18.3.0 || ^20.0.0"
}
}
diff --git a/eng/tools/TypeSpecValidation/src/TypeSpecValidation.ts b/eng/tools/TypeSpecValidation/src/TypeSpecValidation.ts
deleted file mode 100755
index 02686fcf39ff..000000000000
--- a/eng/tools/TypeSpecValidation/src/TypeSpecValidation.ts
+++ /dev/null
@@ -1,88 +0,0 @@
-import {exec} from "child_process";
-import {access} from "fs/promises"
-import {parseArgs, ParseArgsConfig} from 'node:util';
-import path from "path";
-import {simpleGit} from 'simple-git';
-
-async function runCmd(cmd:string, cwd:string) {
- console.log(`run command:${cmd}`)
- const { err, stdout, stderr } = await new Promise((res) =>
- exec(
- cmd,
- { encoding: "utf8", maxBuffer: 1024 * 1024 * 64, cwd: cwd},
- (err: unknown, stdout: unknown, stderr: unknown) =>
- res({ err: err, stdout: stdout, stderr: stderr })
- )
- ) as any;
- let resultString = stderr + stdout;
- console.log("Stdout output:")
- console.log(stdout)
- if (stderr) {
- console.log("Stderr output:")
- console.log(stderr)
- }
- if (stderr || err) {
- throw new Error(err);
- }
- return resultString as string;
-}
-
-async function checkFileExists(file:string) {
- return access(file)
- .then(() => true)
- .catch(() => false)
-}
-
-export async function main() {
- const args = process.argv.slice(2);
- const options = {
- folder: {
- type: 'string',
- short: 'f',
- },
- };
- const parsedArgs = parseArgs({ args, options, allowPositionals: true} as ParseArgsConfig);
- const folder = parsedArgs.positionals[0];
- console.log("Running TypeSpecValidation on folder:", folder);
-
- // Verify all specs are using root level pacakge.json
- let expected_npm_prefix = process.cwd()
- const actual_npm_prefix = (await runCmd(`npm prefix`, folder)).trim()
- if (expected_npm_prefix !== actual_npm_prefix) {
- console.log("ERROR: TypeSpec folders MUST NOT contain a package.json, and instead MUST rely on the package.json at repo root.")
- throw new Error ("Expected npm prefix: " + expected_npm_prefix +"\nActual npm prefix: " + actual_npm_prefix)
- }
-
- // Spec compilation check
- if (await checkFileExists(path.join(folder, "main.tsp"))) {
- await runCmd(
- `npx --no tsp compile . --warn-as-error`,
- folder
- );
- }
- if (await checkFileExists(path.join(folder, "client.tsp"))) {
- await runCmd(
- `npx --no tsp compile client.tsp --no-emit --warn-as-error`,
- folder
- );
- }
-
- // Format parent folder to include shared files
- await runCmd(
- `npx tsp format ../**/*.tsp`,
- folder
- );
-
- // Verify generated swagger file is in sync with one on disk
- const git = simpleGit();
- let gitStatusIsClean = await (await git.status(['--porcelain'])).isClean()
- if (!gitStatusIsClean) {
- let gitStatus = await git.status()
- let gitDiff = await git.diff()
- console.log("git status")
- console.log(gitStatus)
- console.log("git diff")
- console.log(gitDiff)
- throw new Error("Generated swagger file does not match swagger file on disk")
- }
-}
diff --git a/eng/tools/TypeSpecValidation/src/index.ts b/eng/tools/TypeSpecValidation/src/index.ts
new file mode 100755
index 000000000000..30ef865a3f85
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/index.ts
@@ -0,0 +1,37 @@
+import { parseArgs, ParseArgsConfig } from "node:util";
+import { CompileRule } from "./rules/compile.js";
+import { FormatRule } from "./rules/format.js";
+import { GitDiffRule } from "./rules/git-diff.js";
+import { NpmPrefixRule } from "./rules/npm-prefix.js";
+
+export async function main() {
+ const args = process.argv.slice(2);
+ const options = {
+ folder: {
+ type: "string",
+ short: "f",
+ },
+ };
+ const parsedArgs = parseArgs({ args, options, allowPositionals: true } as ParseArgsConfig);
+ const folder = parsedArgs.positionals[0];
+ console.log("Running TypeSpecValidation on folder:", folder);
+
+ let rules = [new NpmPrefixRule(), new CompileRule(), new FormatRule(), new GitDiffRule()];
+ let success = true;
+ for (let i = 0; i < rules.length; i++) {
+ const rule = rules[i];
+ console.log("\nExecuting rule: " + rule.name);
+ const result = await rule.execute(folder);
+ if (result.stdOutput) console.log(result.stdOutput);
+ if (!result.success) {
+ success = false;
+ console.log("Rule " + rule.name + " failed");
+ if (result.errorOutput) console.log(result.errorOutput);
+ }
+ }
+
+ if (!success) {
+ return process.exit(1);
+ }
+ return;
+}
diff --git a/eng/tools/TypeSpecValidation/src/rule-result.ts b/eng/tools/TypeSpecValidation/src/rule-result.ts
new file mode 100644
index 000000000000..07ccd44bdd39
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/rule-result.ts
@@ -0,0 +1,5 @@
+export interface RuleResult {
+ readonly success: boolean;
+ readonly stdOutput?: string;
+ readonly errorOutput?: string;
+}
diff --git a/eng/tools/TypeSpecValidation/src/rule.ts b/eng/tools/TypeSpecValidation/src/rule.ts
new file mode 100644
index 000000000000..55e4d3032712
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/rule.ts
@@ -0,0 +1,7 @@
+import { RuleResult } from "./rule-result.js";
+
+export interface Rule {
+ readonly name: string;
+ readonly description: string;
+ execute(folder?: string): Promise;
+}
diff --git a/eng/tools/TypeSpecValidation/src/rules/compile.ts b/eng/tools/TypeSpecValidation/src/rules/compile.ts
new file mode 100644
index 000000000000..b9a5b54f0756
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/rules/compile.ts
@@ -0,0 +1,41 @@
+import path from "path";
+import { runCmd, checkFileExists } from "../utils.js";
+import { Rule } from "../rule.js";
+import { RuleResult } from "../rule-result.js";
+
+export class CompileRule implements Rule {
+ readonly name = "Compile";
+ readonly description = "Compile TypeSpec";
+
+ async execute(folder: string): Promise {
+ let success = true;
+ let stdOutput = "";
+ let errorOutput: string | undefined;
+
+ if (await checkFileExists(path.join(folder, "main.tsp"))) {
+ let [std, err] = await runCmd(`npx --no tsp compile . --warn-as-error`, folder);
+ stdOutput += std;
+ if (err == null) {
+ success = false;
+ errorOutput += err;
+ }
+ }
+ if (await checkFileExists(path.join(folder, "client.tsp"))) {
+ let [std, err] = await runCmd(
+ `npx --no tsp compile client.tsp --no-emit --warn-as-error`,
+ folder
+ );
+ stdOutput += std;
+ if (err == null) {
+ success = false;
+ errorOutput += err;
+ }
+ }
+
+ return {
+ success: success,
+ stdOutput: stdOutput,
+ errorOutput: errorOutput,
+ };
+ }
+}
diff --git a/eng/tools/TypeSpecValidation/src/rules/format.ts b/eng/tools/TypeSpecValidation/src/rules/format.ts
new file mode 100644
index 000000000000..94fbf3673421
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/rules/format.ts
@@ -0,0 +1,20 @@
+import { Rule } from "../rule.js";
+import { RuleResult } from "../rule-result.js";
+import { runCmd } from "../utils.js";
+
+export class FormatRule implements Rule {
+ readonly name = "Format";
+ readonly description = "Format TypeSpec";
+
+ async execute(folder: string): Promise {
+ // Format parent folder to include shared files
+ let [stdOutput, errorOutput] = await runCmd(`npx tsp format ../**/*.tsp`, folder);
+
+ let success = errorOutput == null ? false : true;
+ return {
+ success: success,
+ stdOutput: stdOutput,
+ errorOutput: errorOutput,
+ };
+ }
+}
diff --git a/eng/tools/TypeSpecValidation/src/rules/git-diff.ts b/eng/tools/TypeSpecValidation/src/rules/git-diff.ts
new file mode 100644
index 000000000000..911379e4eb03
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/rules/git-diff.ts
@@ -0,0 +1,29 @@
+import debug from "debug";
+import { simpleGit } from "simple-git";
+import { Rule } from "../rule.js";
+import { RuleResult } from "../rule-result.js";
+
+debug.enable("simple-git");
+export class GitDiffRule implements Rule {
+ readonly name = "GitDiff";
+ readonly description = "Checks if previous rules resulted in a git diff";
+
+ async execute(): Promise {
+ const git = simpleGit();
+ let gitStatusIsClean = await (await git.status(["--porcelain"])).isClean();
+
+ let success = true;
+ let errorOutput: string | undefined;
+
+ if (!gitStatusIsClean) {
+ success = false;
+ errorOutput = JSON.stringify(await git.status());
+ errorOutput += await git.diff();
+ }
+
+ return {
+ success: success,
+ errorOutput: errorOutput,
+ };
+ }
+}
diff --git a/eng/tools/TypeSpecValidation/src/rules/npm-prefix.ts b/eng/tools/TypeSpecValidation/src/rules/npm-prefix.ts
new file mode 100644
index 000000000000..9a0fa61b2790
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/rules/npm-prefix.ts
@@ -0,0 +1,34 @@
+import { runCmd } from "../utils.js";
+import { Rule } from "../rule.js";
+import { RuleResult } from "../rule-result.js";
+
+export class NpmPrefixRule implements Rule {
+ readonly name = "NpmPrefix";
+ readonly description = "Verify spec is using root level package.json";
+
+ async execute(folder: string): Promise {
+ let expected_npm_prefix = process.cwd();
+ const actual_npm_prefix = (await runCmd(`npm prefix`, folder))[0].trim();
+
+ let success = true;
+ let stdOutput =
+ "Expected npm prefix: " +
+ expected_npm_prefix +
+ "\n" +
+ "Actual npm prefix: " +
+ actual_npm_prefix;
+ let errorOutput: string | undefined;
+
+ if (expected_npm_prefix !== actual_npm_prefix) {
+ success = false;
+ errorOutput =
+ "TypeSpec folders MUST NOT contain a package.json, and instead MUST rely on the package.json at repo root";
+ }
+
+ return {
+ success: success,
+ stdOutput: stdOutput,
+ errorOutput: errorOutput,
+ };
+ }
+}
diff --git a/eng/tools/TypeSpecValidation/src/utils.ts b/eng/tools/TypeSpecValidation/src/utils.ts
new file mode 100644
index 000000000000..e3ebe601acd7
--- /dev/null
+++ b/eng/tools/TypeSpecValidation/src/utils.ts
@@ -0,0 +1,22 @@
+import { access } from "fs/promises";
+import { exec } from "child_process";
+
+export async function runCmd(cmd: string, cwd: string) {
+ console.log(`run command:${cmd}`);
+ const { err, stdout, stderr } = (await new Promise((res) =>
+ exec(
+ cmd,
+ { encoding: "utf8", maxBuffer: 1024 * 1024 * 64, cwd: cwd },
+ (err: unknown, stdout: unknown, stderr: unknown) =>
+ res({ err: err, stdout: stdout, stderr: stderr })
+ )
+ )) as any;
+
+ return [stdout, stderr + err?.message] as string[];
+}
+
+export async function checkFileExists(file: string) {
+ return access(file)
+ .then(() => true)
+ .catch(() => false);
+}
diff --git a/eng/tools/TypeSpecValidation/tsconfig.json b/eng/tools/TypeSpecValidation/tsconfig.json
index e22799e0549a..6966315fab5d 100644
--- a/eng/tools/TypeSpecValidation/tsconfig.json
+++ b/eng/tools/TypeSpecValidation/tsconfig.json
@@ -3,6 +3,9 @@
"compilerOptions": {
"target": "ES6",
"module": "Node16",
- "outDir": "./dist"
+ "outDir": "./dist",
+
+ // override "importHelpers:true" in root tsconfig.json
+ "importHelpers": false
}
}
diff --git a/eng/tools/package.json b/eng/tools/package.json
new file mode 100644
index 000000000000..28c6f7e96e7d
--- /dev/null
+++ b/eng/tools/package.json
@@ -0,0 +1,7 @@
+{
+ "name": "azure-rest-api-specs-eng-tools",
+ "devDependencies": {
+ "@azure-tools/typespec-validation": "file:TypeSpecValidation"
+ },
+ "private": true
+}
diff --git a/package-lock.json b/package-lock.json
index 7aed3aa04956..d40d7f94ff6d 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -5,150 +5,54 @@
"packages": {
"": {
"name": "azure-rest-api-specs",
- "hasInstallScript": true,
"devDependencies": {
- "@azure-tools/cadl-apiview": "0.3.5",
- "@azure-tools/cadl-autorest": "0.26.0",
- "@azure-tools/cadl-azure-core": "0.26.0",
- "@azure-tools/cadl-azure-resource-manager": "0.26.0",
- "@azure-tools/cadl-providerhub": "0.26.0",
"@azure-tools/typespec-apiview": "0.4.4",
- "@azure-tools/typespec-autorest": "0.31.0",
- "@azure-tools/typespec-azure-core": "0.31.0",
- "@azure-tools/typespec-azure-resource-manager": "0.31.0",
- "@azure-tools/typespec-client-generator-core": "0.31.0",
- "@azure-tools/typespec-providerhub": "0.31.0",
+ "@azure-tools/typespec-autorest": "0.33.0",
+ "@azure-tools/typespec-azure-core": "0.33.0",
+ "@azure-tools/typespec-azure-resource-manager": "0.33.0",
+ "@azure-tools/typespec-client-generator-core": "0.33.0",
+ "@azure-tools/typespec-providerhub": "0.33.0",
"@azure/avocado": "^0.8.4",
"@types/prettier": "^2.7.2",
- "@typespec/compiler": "0.45.2",
- "@typespec/http": "0.45.0",
- "@typespec/openapi": "0.45.0",
- "@typespec/rest": "0.45.0",
- "@typespec/versioning": "0.45.0",
+ "@typespec/compiler": "0.47.0",
+ "@typespec/http": "0.47.0",
+ "@typespec/openapi": "0.47.0",
+ "@typespec/rest": "0.47.0",
+ "@typespec/versioning": "0.47.0",
+ "azure-rest-api-specs-eng-tools": "file:eng/tools",
"prettier": "^2.8.8",
- "typescript": "~5.0.4",
- "typespec-validation": "file:eng/tools/TypeSpecValidation"
+ "typescript": "~5.0.4"
+ }
+ },
+ "eng/tools": {
+ "name": "azure-rest-api-specs-eng-tools",
+ "dev": true,
+ "devDependencies": {
+ "@azure-tools/typespec-validation": "file:TypeSpecValidation"
}
},
+ "eng/tools/node_modules/@types/node": {
+ "version": "18.16.19",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.19.tgz",
+ "integrity": "sha512-IXl7o+R9iti9eBW4Wg2hx1xQDig183jj7YLn8F7udNceyfkbn1ZxmzZXuak20gR40D7pIkIY1kYGx5VIGbaHKA==",
+ "dev": true
+ },
"eng/tools/TypeSpecValidation": {
"name": "@azure-tools/typespec-validation",
"version": "0.0.1",
"dev": true,
+ "hasInstallScript": true,
"dependencies": {
+ "debug": "^4.3.4",
"simple-git": "^3.16.0"
},
"bin": {
"tsv": "cmd/tsv.js"
},
"devDependencies": {
- "@types/node": "^18.16.18"
- }
- },
- "eng/tools/TypeSpecValidation/node_modules/@types/node": {
- "version": "18.16.18",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.18.tgz",
- "integrity": "sha512-/aNaQZD0+iSBAGnvvN2Cx92HqE5sZCPZtx2TsK+4nvV23fFe09jVDvpArXr2j9DnYlzuU9WuoykDDc6wqvpNcw==",
- "dev": true
- },
- "node_modules/@azure-tools/cadl-apiview": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/@azure-tools/cadl-apiview/-/cadl-apiview-0.3.5.tgz",
- "integrity": "sha512-1+g/I7/PzEQQv8jE7HyxBKYSru+Ji0Myuviuy2qK8TE8gYcBoGjRdNb1aIIYyJpuqkazJ5hLtEKDD9enVhMNoA==",
- "deprecated": "Package renamed to @azure-tools/typespec-apiview.",
- "dev": true,
- "dependencies": {
- "@azure-tools/cadl-autorest": "0.26.0",
- "@azure-tools/cadl-azure-core": "0.26.0",
- "@azure-tools/cadl-dpg": "latest",
- "@cadl-lang/compiler": "0.40.0",
- "@cadl-lang/rest": "latest",
- "@cadl-lang/versioning": "latest"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@azure-tools/cadl-autorest": {
- "version": "0.26.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/cadl-autorest/-/cadl-autorest-0.26.0.tgz",
- "integrity": "sha512-CoMddqhtZ7lP6O3hbX7Qxq3QeOou64IBmuf4Iz8dcTHOaLfrSoiJshbczEgO/mV62sY5kTmdamWEIi5ZRUpvWA==",
- "dev": true,
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@azure-tools/cadl-azure-core": "~0.26.0",
- "@cadl-lang/compiler": "~0.40.0",
- "@cadl-lang/openapi": "~0.40.0",
- "@cadl-lang/rest": "~0.40.0",
- "@cadl-lang/versioning": "~0.40.0"
- }
- },
- "node_modules/@azure-tools/cadl-azure-core": {
- "version": "0.26.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/cadl-azure-core/-/cadl-azure-core-0.26.0.tgz",
- "integrity": "sha512-PYmG/cp+QhyjuQa0jwTkkPp487d500FmPUB5rhjjx+OG080322d+uLeS9tx25dEq3GRoehEnF80qkupBjZBr1g==",
- "dev": true,
- "dependencies": {
- "@cadl-lang/lint": "~0.40.0"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@cadl-lang/compiler": "~0.40.0",
- "@cadl-lang/rest": "~0.40.0"
- }
- },
- "node_modules/@azure-tools/cadl-azure-resource-manager": {
- "version": "0.26.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/cadl-azure-resource-manager/-/cadl-azure-resource-manager-0.26.0.tgz",
- "integrity": "sha512-0SVf/c5vZH6aCD05Ni7FjpGtKfd5bP8JqPFslhQyxqL9i3ILPso5xS1MOfFBI51L2gxy5ranSgGzTz3TOotiXw==",
- "dev": true,
- "dependencies": {
- "@cadl-lang/lint": "~0.40.0"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@azure-tools/cadl-autorest": "~0.26.0",
- "@azure-tools/cadl-azure-core": "~0.26.0",
- "@cadl-lang/compiler": "~0.40.0",
- "@cadl-lang/openapi": "~0.40.0",
- "@cadl-lang/rest": "~0.40.0",
- "@cadl-lang/versioning": "~0.40.0"
- }
- },
- "node_modules/@azure-tools/cadl-dpg": {
- "version": "0.26.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/cadl-dpg/-/cadl-dpg-0.26.0.tgz",
- "integrity": "sha512-/F40cUDwKZVPj+dBWxdZ3rXwiqs0kGV6ra/LcNoqK+M+nacd48R4L0512izfJbm8KqFen8yh9jfVC8xQfB6bJg==",
- "dev": true,
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@cadl-lang/compiler": "~0.40.0",
- "@cadl-lang/rest": "~0.40.0"
- }
- },
- "node_modules/@azure-tools/cadl-providerhub": {
- "version": "0.26.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/cadl-providerhub/-/cadl-providerhub-0.26.0.tgz",
- "integrity": "sha512-SZWnsuQziw2XJ7audHCpeYGmr1SMVOouqhqQPCSlMMo23elGmWnV+ThB3bso2t7m7PqPjGAhZZNsupQhVbWByg==",
- "dev": true,
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@azure-tools/cadl-autorest": "~0.26.0",
- "@azure-tools/cadl-azure-core": "~0.26.0",
- "@azure-tools/cadl-azure-resource-manager": "~0.26.0",
- "@cadl-lang/compiler": "~0.40.0",
- "@cadl-lang/openapi": "~0.40.0",
- "@cadl-lang/rest": "~0.40.0",
- "@cadl-lang/versioning": "~0.40.0"
+ "@types/debug": "^4.1.8",
+ "@types/node": "^18.16.18",
+ "typescript": "~5.0.4"
}
},
"node_modules/@azure-tools/typespec-apiview": {
@@ -165,97 +69,101 @@
}
},
"node_modules/@azure-tools/typespec-autorest": {
- "version": "0.31.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.31.0.tgz",
- "integrity": "sha512-l/C4HyGr0ByC7FnlsoorXDIp46pbDxVPbq59XNX9sKJJ8p2297BJv7FdPlLi0BXGjEmzy93Ag4hoH9H/u54AhQ==",
+ "version": "0.33.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.33.0.tgz",
+ "integrity": "sha512-xA29JJt6Dnb8402xYJrR1dAwzEuhen/gcYeUk4KZrfn/3FsLpfiGQCwTAfcCd6iyLDRx7yQ34ysJmLt5ebcOdw==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-azure-core": "~0.31.0",
- "@typespec/compiler": "~0.45.0",
- "@typespec/http": "~0.45.0",
- "@typespec/openapi": "~0.45.0",
- "@typespec/rest": "~0.45.0",
- "@typespec/versioning": "~0.45.0"
+ "@azure-tools/typespec-azure-core": "~0.33.0",
+ "@typespec/compiler": "~0.47.0",
+ "@typespec/http": "~0.47.0",
+ "@typespec/openapi": "~0.47.0",
+ "@typespec/rest": "~0.47.0",
+ "@typespec/versioning": "~0.47.0"
}
},
"node_modules/@azure-tools/typespec-azure-core": {
- "version": "0.31.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.31.0.tgz",
- "integrity": "sha512-sfJyRKGzQeBAm0Tw/CWFnWnHnxZDVbkXXLHeLb76VbRwkAu1P65eENRXXQTkUX5+PxnQH7qU/3MD5WT42AFsyA==",
+ "version": "0.33.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.33.0.tgz",
+ "integrity": "sha512-DHa2WU21cuJ961OBXBjDYgFODsNwR77tAWxq7aRagLn/b1Y1xI+I455o99GU/N1T4k/jXGi382qvSkTF6xmsMQ==",
"dev": true,
"dependencies": {
- "@typespec/lint": "~0.45.0"
+ "@typespec/lint": "~0.47.0"
},
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0",
- "@typespec/http": "~0.45.0",
- "@typespec/rest": "~0.45.0"
+ "@typespec/compiler": "~0.47.0",
+ "@typespec/http": "~0.47.0",
+ "@typespec/rest": "~0.47.0"
}
},
"node_modules/@azure-tools/typespec-azure-resource-manager": {
- "version": "0.31.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.31.0.tgz",
- "integrity": "sha512-3z+mFZZxzuw5Y1Ma+AmlYtr+UvBCCOYesD9K7NPHiAfWpPQsgMJM3TbGpjUk5GD6ID1RzBjQfDJ52ittpMNrmQ==",
+ "version": "0.33.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.33.0.tgz",
+ "integrity": "sha512-8jkOae2Yf5fsYVh7ZgdC+a06Ghlfnk6DvLIQPouwOIftsmnUXScJdDIPodqxjdHuR5AWr053+OiKtVrJDWYgjw==",
"dev": true,
"dependencies": {
- "@typespec/lint": "~0.45.0"
+ "@typespec/lint": "~0.47.0"
},
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-autorest": "~0.31.0",
- "@azure-tools/typespec-azure-core": "~0.31.0",
- "@typespec/compiler": "~0.45.0",
- "@typespec/http": "~0.45.0",
- "@typespec/openapi": "~0.45.0",
- "@typespec/rest": "~0.45.0",
- "@typespec/versioning": "~0.45.0"
+ "@azure-tools/typespec-autorest": "~0.33.0",
+ "@azure-tools/typespec-azure-core": "~0.33.0",
+ "@typespec/compiler": "~0.47.0",
+ "@typespec/http": "~0.47.0",
+ "@typespec/openapi": "~0.47.0",
+ "@typespec/rest": "~0.47.0",
+ "@typespec/versioning": "~0.47.0"
}
},
"node_modules/@azure-tools/typespec-client-generator-core": {
- "version": "0.31.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.31.0.tgz",
- "integrity": "sha512-+4HQ1WOgxGjwdUHahuQCvBccKVwLDFXpiYd1Gem0xCjC96YXdAMMoHK4LKXZV5v+ktd/9vgqU84R4/APJNWBAw==",
+ "version": "0.33.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.33.0.tgz",
+ "integrity": "sha512-Cm6hxL7oEUfK5pyPHM0gbtlLVPQSE3qJbSVQDiTqGJaU/660GSLEjp9i+NfZ1nl+cDUBCaCKaFqongin+sbKuw==",
"dev": true,
"dependencies": {
- "@typespec/lint": "~0.45.0"
+ "@typespec/lint": "~0.47.0"
},
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0",
- "@typespec/http": "~0.45.0",
- "@typespec/rest": "~0.45.0",
- "@typespec/versioning": "~0.45.0"
+ "@typespec/compiler": "~0.47.0",
+ "@typespec/http": "~0.47.0",
+ "@typespec/rest": "~0.47.0",
+ "@typespec/versioning": "~0.47.0"
}
},
"node_modules/@azure-tools/typespec-providerhub": {
- "version": "0.31.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-providerhub/-/typespec-providerhub-0.31.0.tgz",
- "integrity": "sha512-96tx3wKl9hHk1mS8HgFY1Bs9yO95dMJilGrdORi/UNdv5GZLlYu7OOqH5HAcGVmxjcvBvKOCvCqmrhCz46boYQ==",
+ "version": "0.33.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-providerhub/-/typespec-providerhub-0.33.0.tgz",
+ "integrity": "sha512-18HRdQUwSrzcyDxP95REu4qIOL8SMjUhifZAJjGThwhkqczTxoeqPI3ek3ISFj9C7SsSvvlLAsL09kiy+GKYZA==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-autorest": "~0.31.0",
- "@azure-tools/typespec-azure-core": "~0.31.0",
- "@azure-tools/typespec-azure-resource-manager": "~0.31.0",
- "@typespec/compiler": "~0.45.0",
- "@typespec/http": "~0.45.0",
- "@typespec/openapi": "~0.45.0",
- "@typespec/rest": "~0.45.0",
- "@typespec/versioning": "~0.45.0"
+ "@azure-tools/typespec-autorest": "~0.33.0",
+ "@azure-tools/typespec-azure-core": "~0.33.0",
+ "@azure-tools/typespec-azure-resource-manager": "~0.33.0",
+ "@typespec/compiler": "~0.47.0",
+ "@typespec/http": "~0.47.0",
+ "@typespec/openapi": "~0.47.0",
+ "@typespec/rest": "~0.47.0",
+ "@typespec/versioning": "~0.47.0"
}
},
+ "node_modules/@azure-tools/typespec-validation": {
+ "resolved": "eng/tools/TypeSpecValidation",
+ "link": true
+ },
"node_modules/@azure/avocado": {
"version": "0.8.14",
"resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.8.14.tgz",
@@ -341,18 +249,6 @@
"integrity": "sha512-oc6OHLdoLlOpO5GjMcOFETEhJi45CI3MVIhvVY/yqyGw9AtaqOYw5HzO3wTuYgYFeGS4v9iqFah0SNLZrpk3Sg==",
"dev": true
},
- "node_modules/@babel/code-frame": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
- "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
- "dev": true,
- "dependencies": {
- "@babel/highlight": "^7.18.6"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
"node_modules/@babel/helper-validator-identifier": {
"version": "7.22.5",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz",
@@ -376,222 +272,6 @@
"node": ">=6.9.0"
}
},
- "node_modules/@cadl-lang/compiler": {
- "version": "0.40.0",
- "resolved": "https://registry.npmjs.org/@cadl-lang/compiler/-/compiler-0.40.0.tgz",
- "integrity": "sha512-4u/Dnm39Ma+8wH0SDu7ya1+2oBRDiNByiRoijwyScHRec26UWLyWvHMvvU89ISU6O8Vwtq0bpmbD7FeJTnlbHw==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "~7.18.6",
- "ajv": "~8.11.2",
- "change-case": "~4.1.2",
- "globby": "~13.1.1",
- "js-yaml": "~4.1.0",
- "mkdirp": "~1.0.4",
- "mustache": "~4.2.0",
- "node-fetch": "3.2.8",
- "node-watch": "~0.7.1",
- "picocolors": "~1.0.0",
- "prettier": "~2.8.1",
- "prompts": "~2.4.1",
- "vscode-languageserver": "~8.0.2",
- "vscode-languageserver-textdocument": "~1.0.1",
- "yargs": "~17.6.2"
- },
- "bin": {
- "cadl": "cmd/cadl.js",
- "cadl-server": "cmd/cadl-server.js"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true
- },
- "node_modules/@cadl-lang/compiler/node_modules/cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "dev": true,
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "node_modules/@cadl-lang/compiler/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dev": true,
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/node-fetch": {
- "version": "3.2.8",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.8.tgz",
- "integrity": "sha512-KtpD1YhGszhntMpBDyp5lyagk8KIMopC1LEb7cQUAh7zcosaX5uK8HnbNb2i3NTQK3sIawCItS0uFC3QzcLHdg==",
- "dev": true,
- "dependencies": {
- "data-uri-to-buffer": "^4.0.0",
- "fetch-blob": "^3.1.4",
- "formdata-polyfill": "^4.0.10"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/node-fetch"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/yargs": {
- "version": "17.6.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz",
- "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==",
- "dev": true,
- "dependencies": {
- "cliui": "^8.0.1",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.3",
- "y18n": "^5.0.5",
- "yargs-parser": "^21.1.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@cadl-lang/compiler/node_modules/yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "dev": true,
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@cadl-lang/lint": {
- "version": "0.40.0",
- "resolved": "https://registry.npmjs.org/@cadl-lang/lint/-/lint-0.40.0.tgz",
- "integrity": "sha512-V/V5Msuurhb7kVZsvuAKVAHq4twmC5YC5k/t7YJWETOowFXepgIneWJPH2TDyyzO9WqJjqRJVRXPTrTuKuNFsA==",
- "dev": true,
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@cadl-lang/compiler": "~0.40.0"
- }
- },
- "node_modules/@cadl-lang/openapi": {
- "version": "0.40.0",
- "resolved": "https://registry.npmjs.org/@cadl-lang/openapi/-/openapi-0.40.0.tgz",
- "integrity": "sha512-M2/Pb5AyZd2O5ycYBIoIf4bufip7bCUTMt3gdom1ss6726APbG1fxx98HPcTbXXx0oA+SuqEXtz8k9eaUGLadQ==",
- "dev": true,
- "peer": true,
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@cadl-lang/compiler": "~0.40.0",
- "@cadl-lang/rest": "~0.40.0"
- }
- },
- "node_modules/@cadl-lang/rest": {
- "version": "0.40.0",
- "resolved": "https://registry.npmjs.org/@cadl-lang/rest/-/rest-0.40.0.tgz",
- "integrity": "sha512-WfGq6lN87adRKsKd3XtztvOLXHzyFlDRQiEcXKfnwXia37zVwK355KX39P1RimQ9mpDsmXaGG4ETkdUSWvXe7w==",
- "dev": true,
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@cadl-lang/compiler": "~0.40.0"
- }
- },
- "node_modules/@cadl-lang/versioning": {
- "version": "0.40.0",
- "resolved": "https://registry.npmjs.org/@cadl-lang/versioning/-/versioning-0.40.0.tgz",
- "integrity": "sha512-HK/jw0kxo/6RwbnR7nPyCj2kJ94uZbBhEmS08ms+fX4UB4nDNBXqXFwMwgftVZ2qdS9xEkRhLqpVYfEPzlFBJw==",
- "dev": true,
- "dependencies": {
- "@cadl-lang/compiler": "~0.40.0"
- },
- "engines": {
- "node": ">=16.0.0"
- }
- },
"node_modules/@kwsites/file-exists": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz",
@@ -843,9 +523,9 @@
"dev": true
},
"node_modules/@ts-common/virtual-fs/node_modules/node-fetch": {
- "version": "2.6.11",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.11.tgz",
- "integrity": "sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==",
+ "version": "2.6.12",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz",
+ "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==",
"dev": true,
"dependencies": {
"whatwg-url": "^5.0.0"
@@ -877,6 +557,21 @@
"integrity": "sha512-t3S2hOtSSuBp1H5PTFmekGFu9U9LBzGvHy93zHwusvj4RIGUrBQ4zHvw49CkJtAl6fZvsadKhYbv8WTxJLbBmw==",
"dev": true
},
+ "node_modules/@types/debug": {
+ "version": "4.1.8",
+ "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.8.tgz",
+ "integrity": "sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==",
+ "dev": true,
+ "dependencies": {
+ "@types/ms": "*"
+ }
+ },
+ "node_modules/@types/ms": {
+ "version": "0.7.31",
+ "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz",
+ "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==",
+ "dev": true
+ },
"node_modules/@types/node": {
"version": "10.17.60",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz",
@@ -906,22 +601,21 @@
"dev": true
},
"node_modules/@typespec/compiler": {
- "version": "0.45.2",
- "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.45.2.tgz",
- "integrity": "sha512-Te2mj24Sh0MinXPzPLINXRrjMuvuu2AsrBWrDWYjTgodt6MMRj5HiovxByFcYIjWUL3U4sHdKPXcOnAunDsd+Q==",
+ "version": "0.47.0",
+ "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.47.0.tgz",
+ "integrity": "sha512-4Y1WhTs4AScPkEsax14jW1QZMoqZl40OMgGiFB8MGDlTpcZV3zdWp1Wj13Q5rcAFYDc/Zl/wnDRgASRKQcqxoQ==",
"dev": true,
"dependencies": {
- "@babel/code-frame": "~7.21.4",
+ "@babel/code-frame": "~7.22.5",
"ajv": "~8.12.0",
"change-case": "~4.1.2",
"globby": "~13.1.1",
"js-yaml": "~4.1.0",
- "mkdirp": "~2.1.6",
"mustache": "~4.2.0",
- "node-watch": "~0.7.1",
"picocolors": "~1.0.0",
- "prettier": "~2.8.7",
+ "prettier": "~3.0.1",
"prompts": "~2.4.1",
+ "semver": "^7.3.8",
"vscode-languageserver": "~8.1.0",
"vscode-languageserver-textdocument": "~1.0.1",
"yargs": "~17.7.1"
@@ -935,12 +629,12 @@
}
},
"node_modules/@typespec/compiler/node_modules/@babel/code-frame": {
- "version": "7.21.4",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz",
- "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==",
+ "version": "7.22.5",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz",
+ "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==",
"dev": true,
"dependencies": {
- "@babel/highlight": "^7.18.6"
+ "@babel/highlight": "^7.22.5"
},
"engines": {
"node": ">=6.9.0"
@@ -1027,19 +721,19 @@
"js-yaml": "bin/js-yaml.js"
}
},
- "node_modules/@typespec/compiler/node_modules/mkdirp": {
- "version": "2.1.6",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-2.1.6.tgz",
- "integrity": "sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==",
+ "node_modules/@typespec/compiler/node_modules/prettier": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.1.tgz",
+ "integrity": "sha512-fcOWSnnpCrovBsmFZIGIy9UqK2FaI7Hqax+DIO0A9UxeVoY4iweyaFjS5TavZN97Hfehph0nhsZnjlVKzEQSrQ==",
"dev": true,
"bin": {
- "mkdirp": "dist/cjs/src/bin.js"
+ "prettier": "bin/prettier.cjs"
},
"engines": {
- "node": ">=10"
+ "node": ">=14"
},
"funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "url": "https://github.com/prettier/prettier?sponsor=1"
}
},
"node_modules/@typespec/compiler/node_modules/vscode-jsonrpc": {
@@ -1133,81 +827,65 @@
}
},
"node_modules/@typespec/http": {
- "version": "0.45.0",
- "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.45.0.tgz",
- "integrity": "sha512-D9B+CzDqoIvlerQL5R7k367R5pwvX5Ic/6YE3bkMzfq9G40TRz5ExpOf+ASmgRbKrWjm/0ppdE4IlRMCI6qFmA==",
+ "version": "0.47.0",
+ "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.47.0.tgz",
+ "integrity": "sha512-HrVu5mGV+p3KGPtcNFHB5gXm9pU4rYRG3hJWZdLcN8fy+OuwbhmOgjOGN4AB7HLllnISmcFn6LtlqGnr0LpyfA==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0"
+ "@typespec/compiler": "~0.47.0"
}
},
"node_modules/@typespec/lint": {
- "version": "0.45.0",
- "resolved": "https://registry.npmjs.org/@typespec/lint/-/lint-0.45.0.tgz",
- "integrity": "sha512-dACuEDQD1CFLftiKIcbWrARMb7lKEXMKE+GzsSa39Xogxv4FH6wc932tPwcMXXTdpfDO2dWUoquEcvXHxUAYKQ==",
+ "version": "0.47.0",
+ "resolved": "https://registry.npmjs.org/@typespec/lint/-/lint-0.47.0.tgz",
+ "integrity": "sha512-+CZ8OC8ABHU+HljjWvkVfLDZzyj2kc8VqEOHoXYdomt7PTo2GdVubyOXZMAYFiXWJr/k4YWHD2moPcvu+e2yTQ==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0"
+ "@typespec/compiler": "~0.47.0"
}
},
"node_modules/@typespec/openapi": {
- "version": "0.45.0",
- "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.45.0.tgz",
- "integrity": "sha512-6W6DMCiXb2iLH4TLgI/u8FFS5v/oBu0DZF2BER6Pzx6v5mURmYGjXiwrQ+DrkOXtqb0YLZMuDU1s9CXQe6P87Q==",
+ "version": "0.47.0",
+ "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.47.0.tgz",
+ "integrity": "sha512-p10NA5MQ1/z/yltTmK9g/RHgRQa+UPJg7ntcix8I9DIwX6u3yJReYwWBrKLeRNExd8ylNHNqjXTwiHJfptmR3w==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0",
- "@typespec/http": "~0.45.0",
- "@typespec/rest": "~0.45.0"
+ "@typespec/compiler": "~0.47.0",
+ "@typespec/http": "~0.47.0",
+ "@typespec/rest": "~0.47.0"
}
},
"node_modules/@typespec/rest": {
- "version": "0.45.0",
- "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.45.0.tgz",
- "integrity": "sha512-u9vFmXvoKdkffh0I2LDDPAKNpILuaxu/aaMRdLEw1Zfmes2mWDruReMjPU8piRB+hE5eDDxU4INPtudy2D61tA==",
+ "version": "0.47.0",
+ "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.47.0.tgz",
+ "integrity": "sha512-sjxCY2dQ6Wc51W7NYDLgcZdeTI35vFJR0aK+tuYHMTwjhZJK20ezwb/c+RZQ8xyGIyX+vUj9yhTc7lBZGw4n1A==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0"
+ "@typespec/compiler": "~0.47.0"
}
},
"node_modules/@typespec/versioning": {
- "version": "0.45.0",
- "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.45.0.tgz",
- "integrity": "sha512-Hocyi9AAuPu9az7Aw4GiWk5CUhq9CQBx8KEDVqIEBI1AvZACPNqJU02TClSyMSKWZY6V/2Gb8lxvPyNvyiF8Hw==",
+ "version": "0.47.0",
+ "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.47.0.tgz",
+ "integrity": "sha512-j3NUBm61k40ZI5aljgqfVFvduoR+q7ijLpwt+lzXw/DecOgNWZX7R/GGzwCmUVyfJUZpMA/8zhuxmx4fB36P7g==",
"dev": true,
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.45.0"
- }
- },
- "node_modules/ajv": {
- "version": "8.11.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz",
- "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==",
- "dev": true,
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
+ "@typespec/compiler": "~0.47.0"
}
},
"node_modules/ansi-regex": {
@@ -1255,6 +933,10 @@
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
"dev": true
},
+ "node_modules/azure-rest-api-specs-eng-tools": {
+ "resolved": "eng/tools",
+ "link": true
+ },
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -1536,9 +1218,9 @@
"dev": true
},
"node_modules/fast-glob": {
- "version": "3.2.12",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
- "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz",
+ "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==",
"dev": true,
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
@@ -1977,18 +1659,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -2074,15 +1744,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/node-watch": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz",
- "integrity": "sha512-3l4E8uMPY1HdMMryPRUAl+oIHtXtyiTlIiESNSVSNxcPfzAFzeTbXFQkZfAwBbo0B1qMSG8nUABx+Gd+YrbKrQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
@@ -2327,9 +1988,9 @@
}
},
"node_modules/semver": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz",
- "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==",
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
"dev": true,
"dependencies": {
"lru-cache": "^6.0.0"
@@ -2494,10 +2155,6 @@
"node": ">=12.20"
}
},
- "node_modules/typespec-validation": {
- "resolved": "eng/tools/TypeSpecValidation",
- "link": true
- },
"node_modules/upper-case": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz",
@@ -2534,49 +2191,12 @@
"uuid": "dist/bin/uuid"
}
},
- "node_modules/vscode-jsonrpc": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.0.2.tgz",
- "integrity": "sha512-RY7HwI/ydoC1Wwg4gJ3y6LpU9FJRZAUnTYMXthqhFXXu77ErDd/xkREpGuk4MyYkk4a+XDWAMqe0S3KkelYQEQ==",
- "dev": true,
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/vscode-languageserver": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-8.0.2.tgz",
- "integrity": "sha512-bpEt2ggPxKzsAOZlXmCJ50bV7VrxwCS5BI4+egUmure/oI/t4OlFzi/YNtVvY24A2UDOZAgwFGgnZPwqSJubkA==",
- "dev": true,
- "dependencies": {
- "vscode-languageserver-protocol": "3.17.2"
- },
- "bin": {
- "installServerIntoExtension": "bin/installServerIntoExtension"
- }
- },
- "node_modules/vscode-languageserver-protocol": {
- "version": "3.17.2",
- "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.2.tgz",
- "integrity": "sha512-8kYisQ3z/SQ2kyjlNeQxbkkTNmVFoQCqkmGrzLH6A9ecPlgTbp3wDTnUNqaUxYr4vlAcloxx8zwy7G5WdguYNg==",
- "dev": true,
- "dependencies": {
- "vscode-jsonrpc": "8.0.2",
- "vscode-languageserver-types": "3.17.2"
- }
- },
"node_modules/vscode-languageserver-textdocument": {
"version": "1.0.8",
"resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.8.tgz",
"integrity": "sha512-1bonkGqQs5/fxGT5UchTgjGVnfysL0O8v1AYMBjqTbWQTFn721zaPGDYFkOKtfDgFiSgXM3KwaG3FMGfW4Ed9Q==",
"dev": true
},
- "node_modules/vscode-languageserver-types": {
- "version": "3.17.2",
- "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz",
- "integrity": "sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA==",
- "dev": true
- },
"node_modules/web-streams-polyfill": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz",
diff --git a/package.json b/package.json
index 468b85b044e9..df360fda9cf2 100644
--- a/package.json
+++ b/package.json
@@ -1,30 +1,22 @@
{
"name": "azure-rest-api-specs",
"devDependencies": {
- "@azure-tools/cadl-apiview": "0.3.5",
- "@azure-tools/cadl-autorest": "0.26.0",
- "@azure-tools/cadl-azure-core": "0.26.0",
- "@azure-tools/cadl-azure-resource-manager": "0.26.0",
- "@azure-tools/cadl-providerhub": "0.26.0",
"@azure-tools/typespec-apiview": "0.4.4",
- "@azure-tools/typespec-autorest": "0.31.0",
- "@azure-tools/typespec-azure-core": "0.31.0",
- "@azure-tools/typespec-azure-resource-manager": "0.31.0",
- "@azure-tools/typespec-client-generator-core": "0.31.0",
- "@azure-tools/typespec-providerhub": "0.31.0",
- "@typespec/compiler": "0.45.2",
- "@typespec/http": "0.45.0",
- "@typespec/openapi": "0.45.0",
- "@typespec/rest": "0.45.0",
- "@typespec/versioning": "0.45.0",
+ "@azure-tools/typespec-autorest": "0.33.0",
+ "@azure-tools/typespec-azure-core": "0.33.0",
+ "@azure-tools/typespec-azure-resource-manager": "0.33.0",
+ "@azure-tools/typespec-client-generator-core": "0.33.0",
+ "@azure-tools/typespec-providerhub": "0.33.0",
+ "@typespec/compiler": "0.47.0",
+ "@typespec/http": "0.47.0",
+ "@typespec/openapi": "0.47.0",
+ "@typespec/rest": "0.47.0",
+ "@typespec/versioning": "0.47.0",
"@azure/avocado": "^0.8.4",
"@types/prettier": "^2.7.2",
+ "azure-rest-api-specs-eng-tools": "file:eng/tools",
"prettier": "^2.8.8",
- "typescript": "~5.0.4",
- "typespec-validation": "file:eng/tools/TypeSpecValidation"
- },
- "scripts": {
- "postinstall": "npx --no tsc -- -p eng/tools/TypeSpecValidation"
+ "typescript": "~5.0.4"
},
"private": true
}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/agfood.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/agfood.json
new file mode 100644
index 000000000000..bdb1e4b87393
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/agfood.json
@@ -0,0 +1,21964 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft Azure Data Manager for Agriculture Data Plane Service",
+ "description": "APIs documentation for Microsoft Azure Data Manager for Agriculture DataPlane Service.",
+ "version": "2023-07-01-preview"
+ },
+ "paths": {
+ "/application-data:search": {
+ "post": {
+ "tags": [
+ "ApplicationData"
+ ],
+ "description": "Search for ApplicationData across all parties by intersecting geometry.",
+ "operationId": "ApplicationData_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchFarmOperationQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchApplicationDataQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ApplicationDataMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ApplicationData_Search": {
+ "$ref": "./examples/ApplicationData_Search.json"
+ }
+ }
+ }
+ },
+ "/application-data/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "ApplicationData"
+ ],
+ "description": "Create cascade delete job for application data resource.",
+ "operationId": "ApplicationData_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "applicationDataId",
+ "description": "Id of the application data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "ApplicationData_CreateCascadeDeleteJob": {
+ "$ref": "./examples/ApplicationData_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ApplicationData"
+ ],
+ "description": "Get cascade delete job for application data resource.",
+ "operationId": "ApplicationData_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ApplicationData_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/ApplicationData_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/application-data/{applicationDataId}": {
+ "get": {
+ "tags": [
+ "ApplicationData"
+ ],
+ "description": "Get a specified application data resource under a particular party.",
+ "operationId": "ApplicationData_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "applicationDataId",
+ "description": "ID of the application data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ApplicationData"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ApplicationData_Get": {
+ "$ref": "./examples/ApplicationData_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ApplicationData"
+ ],
+ "description": "Creates or updates an application data resource under a particular party.",
+ "operationId": "ApplicationData_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "applicationDataId",
+ "description": "ID of the application data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "applicationData",
+ "description": "Application data resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ApplicationData"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ApplicationData"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ApplicationData"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ApplicationData_CreateOrUpdate": {
+ "$ref": "./examples/ApplicationData_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ApplicationData"
+ ],
+ "description": "Deletes a specified application data resource under a particular party.",
+ "operationId": "ApplicationData_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "applicationDataId",
+ "description": "ID of the application data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ApplicationData_Delete": {
+ "$ref": "./examples/ApplicationData_Delete.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/attachments": {
+ "get": {
+ "tags": [
+ "Attachments"
+ ],
+ "description": "Returns a paginated list of attachment resources under a particular party.",
+ "operationId": "Attachments_ListByPartyId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "resourceIds",
+ "description": "Resource Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "resourceTypes",
+ "description": "Resource Types of the resource.\r\ni.e. Party, Farm, Field, SeasonalField, ApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/AttachmentListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Attachments_ListByPartyId": {
+ "$ref": "./examples/Attachments_ListByPartyId.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/attachments/{attachmentId}": {
+ "get": {
+ "tags": [
+ "Attachments"
+ ],
+ "description": "Gets a specified attachment resource under a particular party.",
+ "operationId": "Attachments_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "attachmentId",
+ "description": "Id of the attachment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Attachment"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Attachments_Get": {
+ "$ref": "./examples/Attachments_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Attachments"
+ ],
+ "description": "Creates or updates an attachment resource under a particular party.",
+ "operationId": "Attachments_CreateOrUpdate",
+ "consumes": [
+ "multipart/form-data"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "attachmentId",
+ "description": "Id of the attachment resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "file",
+ "type": "file",
+ "format": "binary",
+ "description": "File to be uploaded."
+ },
+ {
+ "in": "formData",
+ "name": "resourceId",
+ "description": "Associated Resource id for this attachment.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "resourceType",
+ "description": "Associated Resource type for this attachment.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "originalFileName",
+ "description": "Original File Name for this attachment.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "id",
+ "description": "Unique id.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "status",
+ "description": "Status of the resource.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 0
+ },
+ {
+ "in": "formData",
+ "name": "createdDateTime",
+ "description": "Date when resource was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "formData",
+ "name": "modifiedDateTime",
+ "description": "Date when resource was last modified.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "formData",
+ "name": "source",
+ "description": "Source of the resource.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 2
+ },
+ {
+ "in": "formData",
+ "name": "name",
+ "description": "Name to identify resource.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 0
+ },
+ {
+ "in": "formData",
+ "name": "description",
+ "description": "Textual description of resource.",
+ "type": "string",
+ "maxLength": 500,
+ "minLength": 0
+ },
+ {
+ "in": "formData",
+ "name": "createdBy",
+ "description": "Created by user/tenant id.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "modifiedBy",
+ "description": "Modified by user/tenant id.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "eTag",
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Attachment"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Attachment"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Attachments_CreateOrUpdate": {
+ "$ref": "./examples/Attachments_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Attachments"
+ ],
+ "description": "Deletes a specified attachment resource under a particular party.",
+ "operationId": "Attachments_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "attachmentId",
+ "description": "Id of the attachment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Attachments_Delete": {
+ "$ref": "./examples/Attachments_Delete.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/attachments/{attachmentId}/file": {
+ "get": {
+ "tags": [
+ "Attachments"
+ ],
+ "description": "Downloads and returns attachment as response for the given input filePath.",
+ "operationId": "Attachments_Download",
+ "produces": [
+ "application/json",
+ "application/octet-stream"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "attachmentId",
+ "description": "Id of attachment to be downloaded.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "format": "binary",
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Attachments_Download": {
+ "$ref": "./examples/Attachments_Download.json"
+ }
+ }
+ }
+ },
+ "/crop-products": {
+ "get": {
+ "tags": [
+ "CropProducts"
+ ],
+ "description": "Returns a paginated list of crop product resources.",
+ "operationId": "CropProducts_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "cropIds",
+ "description": "CropIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "brands",
+ "description": "Brands of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "products",
+ "description": "Products of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "traits",
+ "description": "Traits of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CropProductListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "CropProducts_List": {
+ "$ref": "./examples/CropProducts_List.json"
+ }
+ }
+ }
+ },
+ "/crop-products/{cropProductId}": {
+ "get": {
+ "tags": [
+ "CropProducts"
+ ],
+ "description": "Gets a specified crop Product resource.",
+ "operationId": "CropProducts_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cropProductId",
+ "description": "Id of the crop Product.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CropProduct"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "CropProducts_Get": {
+ "$ref": "./examples/CropProducts_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "CropProducts"
+ ],
+ "description": "Creates or updates a crop Product resource.",
+ "operationId": "CropProducts_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cropProductId",
+ "description": "Id of the crop Product resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "cropProduct",
+ "description": "Crop Product resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CropProduct"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/CropProduct"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CropProduct"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "CropProducts_CreateOrUpdate": {
+ "$ref": "./examples/CropProducts_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "CropProducts"
+ ],
+ "description": "Deletes a specified crop Product resource.",
+ "operationId": "CropProducts_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cropProductId",
+ "description": "Id of the crop Product.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "CropProducts_Delete": {
+ "$ref": "./examples/CropProducts_Delete.json"
+ }
+ }
+ }
+ },
+ "/crops": {
+ "get": {
+ "tags": [
+ "Crops"
+ ],
+ "description": "Returns a paginated list of crop resources.",
+ "operationId": "Crops_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "phenotypes",
+ "description": "Crop phenotypes of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "breedingMethods",
+ "description": "Breeding method of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CropListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Crops_List": {
+ "$ref": "./examples/Crops_List.json"
+ }
+ }
+ }
+ },
+ "/crops/{cropId}": {
+ "get": {
+ "tags": [
+ "Crops"
+ ],
+ "description": "Gets a specified crop resource.",
+ "operationId": "Crops_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cropId",
+ "description": "Id of the crop.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Crop"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Crops_Get": {
+ "$ref": "./examples/Crops_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Crops"
+ ],
+ "description": "Creates or updates a crop resource.",
+ "operationId": "Crops_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cropId",
+ "description": "Id of the crop resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "crop",
+ "description": "Crop resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Crop"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Crop"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Crop"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Crops_CreateOrUpdate": {
+ "$ref": "./examples/Crops_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Crops"
+ ],
+ "description": "Deletes Crop for given crop id.",
+ "operationId": "Crops_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cropId",
+ "description": "Id of crop to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Crops_Delete": {
+ "$ref": "./examples/Crops_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/device-data-models": {
+ "get": {
+ "tags": [
+ "DeviceDataModels"
+ ],
+ "description": "Returns a paginated list of device data model resources.",
+ "operationId": "DeviceDataModels_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the associated sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DeviceDataModelListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "DeviceDataModels_List": {
+ "$ref": "./examples/DeviceDataModels_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/device-data-models/{deviceDataModelId}": {
+ "patch": {
+ "tags": [
+ "DeviceDataModels"
+ ],
+ "description": "Create a device data model entity.",
+ "operationId": "DeviceDataModels_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "deviceDataModelId",
+ "description": "Id of the device data model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "deviceDataModelObject",
+ "description": "Device data model object details.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DeviceDataModel"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/DeviceDataModel"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DeviceDataModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "DeviceDataModels_CreateOrUpdate": {
+ "$ref": "./examples/DeviceDataModels_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "DeviceDataModels"
+ ],
+ "description": "Gets a device data model entity.",
+ "operationId": "DeviceDataModels_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "deviceDataModelId",
+ "description": "Id of the device data model resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DeviceDataModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "DeviceDataModels_Get": {
+ "$ref": "./examples/DeviceDataModels_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DeviceDataModels"
+ ],
+ "description": "Deletes a device data model entity.",
+ "operationId": "DeviceDataModels_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "deviceDataModelId",
+ "description": "Id of the device data model resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "DeviceDataModels_Delete": {
+ "$ref": "./examples/DeviceDataModels_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/devices": {
+ "get": {
+ "tags": [
+ "Devices"
+ ],
+ "description": "Returns a paginated list of device resources.",
+ "operationId": "Devices_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "parentDeviceIds",
+ "description": "Id's of the parent devices.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "deviceDataModelIds",
+ "description": "Id's of the device data models.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the associated sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DeviceListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Devices_List": {
+ "$ref": "./examples/Devices_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/devices/{deviceId}": {
+ "patch": {
+ "tags": [
+ "Devices"
+ ],
+ "description": "Create a device entity.",
+ "operationId": "Devices_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "deviceId",
+ "description": "Id of the device resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "deviceDetails",
+ "description": "Device object details.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Device"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Device"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Device"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Devices_CreateOrUpdate": {
+ "$ref": "./examples/Devices_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Devices"
+ ],
+ "description": "Gets a device entity.",
+ "operationId": "Devices_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "deviceId",
+ "description": "Id of the device resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Device"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Devices_Get": {
+ "$ref": "./examples/Devices_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Devices"
+ ],
+ "description": "Deletes a device entity.",
+ "operationId": "Devices_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "deviceId",
+ "description": "Id of the device resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Devices_Delete": {
+ "$ref": "./examples/Devices_Delete.json"
+ }
+ }
+ }
+ },
+ "/farm-operations/ingest-data/{jobId}": {
+ "put": {
+ "tags": [
+ "FarmOperations"
+ ],
+ "description": "Create a farm operation data ingestion job.",
+ "operationId": "FarmOperations_CreateDataIngestionJob",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "job",
+ "description": "Job parameters supplied by user.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FarmOperationDataIngestionJob"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/FarmOperationDataIngestionJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "FarmOperations_CreateDataIngestionJob": {
+ "$ref": "./examples/FarmOperations_CreateDataIngestionJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "FarmOperations"
+ ],
+ "description": "Get a farm operation data ingestion job.",
+ "operationId": "FarmOperations_GetDataIngestionJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FarmOperationDataIngestionJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "FarmOperations_GetDataIngestionJobDetails": {
+ "$ref": "./examples/FarmOperations_GetDataIngestionJobDetails.json"
+ }
+ }
+ }
+ },
+ "/farms": {
+ "get": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Returns a paginated list of farm resources across all parties.",
+ "operationId": "Farms_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FarmListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Farms_List": {
+ "$ref": "./examples/Farms_List.json"
+ }
+ }
+ }
+ },
+ "/farms/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Create a cascade delete job for specified farm.",
+ "operationId": "Farms_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "farmId",
+ "description": "ID of the farm to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Farms_CreateCascadeDeleteJob": {
+ "$ref": "./examples/Farms_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Get a cascade delete job for specified farm.",
+ "operationId": "Farms_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Farms_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/Farms_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/farms": {
+ "get": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Returns a paginated list of farm resources under a particular party.",
+ "operationId": "Farms_ListByPartyId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FarmListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Farms_ListByPartyId": {
+ "$ref": "./examples/Farms_ListByPartyId.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/farms/{farmId}": {
+ "get": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Gets a specified farm resource under a particular party.",
+ "operationId": "Farms_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "farmId",
+ "description": "ID of the farm resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Farm"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Farms_Get": {
+ "$ref": "./examples/Farms_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Creates or updates a farm resource under a particular party.",
+ "operationId": "Farms_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "farmId",
+ "description": "Id of the farm resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "farm",
+ "description": "Farm resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Farm"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Farm"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Farm"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Farms_CreateOrUpdate": {
+ "$ref": "./examples/Farms_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Farms"
+ ],
+ "description": "Deletes a specified farm resource under a particular party.",
+ "operationId": "Farms_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "farmId",
+ "description": "Id of the farm.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Farms_Delete": {
+ "$ref": "./examples/Farms_Delete.json"
+ }
+ }
+ }
+ },
+ "/fields:search": {
+ "post": {
+ "tags": [
+ "Fields"
+ ],
+ "description": "Search for Fields across all parties by intersecting geometry.",
+ "operationId": "Fields_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchFieldQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchFieldQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FieldMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Fields_Search": {
+ "$ref": "./examples/Fields_Search.json"
+ }
+ }
+ }
+ },
+ "/fields/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "Fields"
+ ],
+ "description": "Get a cascade delete job for specified field.",
+ "operationId": "Fields_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Fields_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/Fields_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Fields"
+ ],
+ "description": "Create a cascade delete job for specified field.",
+ "operationId": "Fields_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "fieldId",
+ "description": "ID of the field to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Fields_CreateCascadeDeleteJob": {
+ "$ref": "./examples/Fields_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/fields/{fieldId}": {
+ "get": {
+ "tags": [
+ "Fields"
+ ],
+ "description": "Gets a specified field resource under a particular party.",
+ "operationId": "Fields_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "fieldId",
+ "description": "Id of the field.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Field"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Fields_Get": {
+ "$ref": "./examples/Fields_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Fields"
+ ],
+ "description": "Creates or Updates a field resource under a particular party.",
+ "operationId": "Fields_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "fieldId",
+ "description": "Id of the field resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "field",
+ "description": "Field resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Field"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Field"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Field"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Fields_CreateOrUpdate": {
+ "$ref": "./examples/Fields_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Fields"
+ ],
+ "description": "Deletes a specified field resource under a particular party.",
+ "operationId": "Fields_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "fieldId",
+ "description": "Id of the field.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Fields_Delete": {
+ "$ref": "./examples/Fields_Delete.json"
+ }
+ }
+ }
+ },
+ "/harvest-data:search": {
+ "post": {
+ "tags": [
+ "HarvestData"
+ ],
+ "description": "Search for HarvestData across all parties by intersecting geometry.",
+ "operationId": "HarvestData_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchFarmOperationQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchHarvestDataQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HarvestDataMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "HarvestData_Search": {
+ "$ref": "./examples/HarvestData_Search.json"
+ }
+ }
+ }
+ },
+ "/harvest-data/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "HarvestData"
+ ],
+ "description": "Create cascade delete job for harvest data resource.",
+ "operationId": "HarvestData_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "harvestDataId",
+ "description": "Id of the harvest data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "HarvestData_CreateCascadeDeleteJob": {
+ "$ref": "./examples/HarvestData_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "HarvestData"
+ ],
+ "description": "Get cascade delete job for harvest data resource.",
+ "operationId": "HarvestData_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "HarvestData_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/HarvestData_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/harvest-data/{harvestDataId}": {
+ "get": {
+ "tags": [
+ "HarvestData"
+ ],
+ "description": "Get a specified harvest data resource under a particular party.",
+ "operationId": "HarvestData_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "harvestDataId",
+ "description": "ID of the harvest data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HarvestData"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "HarvestData_Get": {
+ "$ref": "./examples/HarvestData_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "HarvestData"
+ ],
+ "description": "Creates or updates harvest data resource under a particular party.",
+ "operationId": "HarvestData_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "harvestDataId",
+ "description": "ID of the harvest data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "harvestData",
+ "description": "Harvest data resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/HarvestData"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HarvestData"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/HarvestData"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "HarvestData_CreateOrUpdate": {
+ "$ref": "./examples/HarvestData_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "HarvestData"
+ ],
+ "description": "Deletes a specified harvest data resource under a particular party.",
+ "operationId": "HarvestData_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "harvestDataId",
+ "description": "ID of the harvest data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "HarvestData_Delete": {
+ "$ref": "./examples/HarvestData_Delete.json"
+ }
+ }
+ }
+ },
+ "/image-processing/rasterize/{jobId}": {
+ "put": {
+ "tags": [
+ "ImageProcessing"
+ ],
+ "description": "Create a ImageProcessing Rasterize job.",
+ "operationId": "ImageProcessing_CreateRasterizeJob",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "JobId provided by user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "job",
+ "description": "Job parameters supplied by user.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageProcessingRasterizeJob"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/ImageProcessingRasterizeJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "ImageProcessing_CreateRasterizeJob": {
+ "$ref": "./examples/ImageProcessing_CreateRasterizeJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ImageProcessing"
+ ],
+ "description": "Get ImageProcessing Rasterize job's details.",
+ "operationId": "ImageProcessing_GetRasterizeJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ImageProcessingRasterizeJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ImageProcessing_GetRasterizeJob": {
+ "$ref": "./examples/ImageProcessing_GetRasterizeJob.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/models/{modelId}/resource-types/{resourceType}/resources/{resourceId}/insight-attachments": {
+ "get": {
+ "tags": [
+ "InsightAttachments"
+ ],
+ "description": "Returns a paginated list of insight resources.",
+ "operationId": "InsightAttachments_ListByPartyIdModelIdAndResource",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "insightIds",
+ "description": "List of insight IDs.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InsightAttachmentListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "InsightAttachments_ListByPartyIdModelIdAndResource": {
+ "$ref": "./examples/InsightAttachments_ListByPartyIdModelIdAndResource.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/models/{modelId}/resource-types/{resourceType}/resources/{resourceId}/insight-attachments/{insightAttachmentId}": {
+ "patch": {
+ "tags": [
+ "InsightAttachments"
+ ],
+ "description": "Creates or updates insight entity.",
+ "operationId": "InsightAttachments_CreateOrUpdate",
+ "consumes": [
+ "multipart/form-data"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightAttachmentId",
+ "description": "Id of the insight resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "file",
+ "type": "file",
+ "format": "binary",
+ "description": "File to be uploaded."
+ },
+ {
+ "in": "formData",
+ "name": "insightId",
+ "description": "InsightID for this InsightAttachment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "originalFileName",
+ "description": "Original File Name for this attachment.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "id",
+ "description": "Unique id.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "status",
+ "description": "Status of the resource.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 0
+ },
+ {
+ "in": "formData",
+ "name": "createdDateTime",
+ "description": "Date when resource was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "formData",
+ "name": "modifiedDateTime",
+ "description": "Date when resource was last modified.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "formData",
+ "name": "source",
+ "description": "Source of the resource.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 2
+ },
+ {
+ "in": "formData",
+ "name": "name",
+ "description": "Name to identify resource.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 0
+ },
+ {
+ "in": "formData",
+ "name": "description",
+ "description": "Textual description of resource.",
+ "type": "string",
+ "maxLength": 500,
+ "minLength": 0
+ },
+ {
+ "in": "formData",
+ "name": "createdBy",
+ "description": "Created by user/tenant id.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "modifiedBy",
+ "description": "Modified by user/tenant id.",
+ "type": "string"
+ },
+ {
+ "in": "formData",
+ "name": "eTag",
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/InsightAttachment"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InsightAttachment"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "InsightAttachments_CreateOrUpdate": {
+ "$ref": "./examples/InsightAttachments_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "InsightAttachments"
+ ],
+ "description": "Gets a specified insight resource under a particular party.",
+ "operationId": "InsightAttachments_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightAttachmentId",
+ "description": "Id of the insight attachment resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InsightAttachment"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "InsightAttachments_Get": {
+ "$ref": "./examples/InsightAttachments_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "InsightAttachments"
+ ],
+ "description": "Deletes a specified insight resource.",
+ "operationId": "InsightAttachments_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.\r\nIt can be either 'BiomassModelId', 'SensorPlacementModelId', 'SoilMoistureModelId' or any solution id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightAttachmentId",
+ "description": "Id of the insight attachment resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "InsightAttachments_Delete": {
+ "$ref": "./examples/InsightAttachments_Delete.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/models/{modelId}/resource-types/{resourceType}/resources/{resourceId}/insight-attachments/{insightAttachmentId}/file": {
+ "get": {
+ "tags": [
+ "InsightAttachments"
+ ],
+ "description": "Downloads and returns insight-attachment as response for the given input filePath.",
+ "operationId": "InsightAttachments_Download",
+ "produces": [
+ "application/json",
+ "application/octet-stream"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.\r\nIt can be either 'BiomassModelId', 'SensorPlacementModelId', 'SoilMoistureModelId' or any solution id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightAttachmentId",
+ "description": "Id of the insight attachment resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "format": "binary",
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "InsightAttachments_Download": {
+ "$ref": "./examples/InsightAttachments_Download.json"
+ }
+ }
+ }
+ },
+ "/insights/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "Insights"
+ ],
+ "description": "Create a cascade delete job for insights specified partyId/modelId/resourceType/resourceId.",
+ "operationId": "Insights_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "resourceType",
+ "description": "Resource Type.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "insightId",
+ "description": "Insight id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Insights_CreateCascadeDeleteJob": {
+ "$ref": "./examples/Insights_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Insights"
+ ],
+ "description": "Get a cascade delete job for specified insight.",
+ "operationId": "Insights_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Insights_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/Insights_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/models/{modelId}/resource-types/{resourceType}/resources/{resourceId}/insights": {
+ "get": {
+ "tags": [
+ "Insights"
+ ],
+ "description": "Returns a paginated list of insight resources.",
+ "operationId": "Insights_ListByPartyIdModelIdAndResource",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "minInsightStartDateTime",
+ "description": "Minimum insightStartDateTime time of insight resources (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxInsightStartDateTime",
+ "description": "Maximum insightStartDateTime time of insight resources (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minInsightEndDateTime",
+ "description": "Minimum insightEndDateTime time of insight resources (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxInsightEndDateTime",
+ "description": "Maximum insightEndDateTime time of insight resources (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "measurementFilters",
+ "description": "Filters on measureKey.unit/unitValue or measureKey.value/value pairs within the Measures object.\r\neg. \"measureKey.unit eq {testValue}\" where testValue is string.\r\neg. \"measureKey.value eq {testValue}\" where testValue = double.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InsightListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Insights_ListByPartyIdModelIdAndResource": {
+ "$ref": "./examples/Insights_ListByPartyIdModelIdAndResource.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/models/{modelId}/resource-types/{resourceType}/resources/{resourceId}/insights/{insightId}": {
+ "patch": {
+ "tags": [
+ "Insights"
+ ],
+ "description": "Creates or updates insight entity.",
+ "operationId": "Insights_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightId",
+ "description": "Id of the insight resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "insightData",
+ "description": "Insight data.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Insight"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Insight"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Insight"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Insights_CreateOrUpdate": {
+ "$ref": "./examples/Insights_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Insights"
+ ],
+ "description": "Gets a specified insight resource under a particular party.",
+ "operationId": "Insights_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightId",
+ "description": "Id of the insight resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Insight"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Insights_Get": {
+ "$ref": "./examples/Insights_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Insights"
+ ],
+ "description": "Deletes a specified insight resource.",
+ "operationId": "Insights_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "modelId",
+ "description": "Id of the associated model.\r\nIt can be either 'BiomassModelId', 'SensorPlacementModelId', 'SoilMoistureModelId' or any solution id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceType",
+ "description": "Resource type associated with the record.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceId",
+ "description": "Id of the associated resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "insightId",
+ "description": "Id of the insight resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Insights_Delete": {
+ "$ref": "./examples/Insights_Delete.json"
+ }
+ }
+ }
+ },
+ "/management-zones": {
+ "get": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Returns a paginated list of management zone resources across all parties.",
+ "operationId": "ManagementZones_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "types",
+ "description": "Types of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "cropIds",
+ "description": "CropIds of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "seasonIds",
+ "description": "SeasonIds of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "fieldIds",
+ "description": "FieldIds of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "sources",
+ "description": "Sources of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ManagementZoneListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ManagementZones_List": {
+ "$ref": "./examples/ManagementZones_List.json"
+ }
+ }
+ }
+ },
+ "/management-zones/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Get a cascade delete job for specified job id.",
+ "operationId": "ManagementZones_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ManagementZones_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/ManagementZones_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Create a cascade delete job for specified management zone.",
+ "operationId": "ManagementZones_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "managementZoneId",
+ "description": "ID of the management zone to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "ManagementZones_CreateCascadeDeleteJob": {
+ "$ref": "./examples/ManagementZones_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/management-zones": {
+ "get": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Returns a paginated list of management zone resources under a particular party.",
+ "operationId": "ManagementZones_ListByPartyId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "types",
+ "description": "Types of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "cropIds",
+ "description": "CropIds of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "seasonIds",
+ "description": "SeasonIds of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "fieldIds",
+ "description": "FieldIds of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "sources",
+ "description": "Sources of the ManagementZone.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ManagementZoneListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ManagementZones_ListByPartyId": {
+ "$ref": "./examples/ManagementZones_ListByPartyId.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/management-zones/{managementZoneId}": {
+ "get": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Gets a specified management zone resource under a particular party.",
+ "operationId": "ManagementZones_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "managementZoneId",
+ "description": "Id of the management zone.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ManagementZone"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ManagementZones_Get": {
+ "$ref": "./examples/ManagementZones_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Creates or updates a management zone resource.",
+ "operationId": "ManagementZones_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "managementZoneId",
+ "description": "Id of the management zone resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "managementZone",
+ "description": "ManagementZone resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagementZone"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ManagementZone"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ManagementZone"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ManagementZones_CreateOrUpdate": {
+ "$ref": "./examples/ManagementZones_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagementZones"
+ ],
+ "description": "Deletes a specified management zone resource under a particular party.",
+ "operationId": "ManagementZones_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "managementZoneId",
+ "description": "Id of the management zone.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ManagementZones_Delete": {
+ "$ref": "./examples/ManagementZones_Delete.json"
+ }
+ }
+ }
+ },
+ "/model-inference/models/microsoft-biomass/infer-data/{jobId}": {
+ "put": {
+ "tags": [
+ "ModelInference"
+ ],
+ "description": "Create a Biomass Model job.",
+ "operationId": "ModelInference_CreateBiomassModelJob",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "JobId provided by user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "job",
+ "description": "Job parameters supplied by user.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BiomassModelJob"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/BiomassModelJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "ModelInference_CreateBiomassModelJob": {
+ "$ref": "./examples/ModelInference_CreateBiomassModelJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ModelInference"
+ ],
+ "description": "Get Biomass Model job's details.",
+ "operationId": "ModelInference_GetBiomassModelJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/BiomassModelJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ModelInference_GetBiomassModelJob": {
+ "$ref": "./examples/ModelInference_GetBiomassModelJob.json"
+ }
+ }
+ }
+ },
+ "/model-inference/models/microsoft-sensor-placement/infer-data/{jobId}": {
+ "put": {
+ "tags": [
+ "ModelInference"
+ ],
+ "description": "Create a Sensor Placement Model job.",
+ "operationId": "ModelInference_CreateSensorPlacementModelJob",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "JobId provided by user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "job",
+ "description": "Job parameters supplied by user.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SensorPlacementModelJob"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/SensorPlacementModelJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "ModelInference_CreateSensorPlacementModelJob": {
+ "$ref": "./examples/ModelInference_CreateSensorPlacementModelJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ModelInference"
+ ],
+ "description": "Get Sensor Placement Model job's details.",
+ "operationId": "ModelInference_GetSensorPlacementModelJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorPlacementModelJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ModelInference_GetSensorPlacementModelJob": {
+ "$ref": "./examples/ModelInference_GetSensorPlacementModelJob.json"
+ }
+ }
+ }
+ },
+ "/model-inference/models/microsoft-soil-moisture/infer-data/{jobId}": {
+ "put": {
+ "tags": [
+ "ModelInference"
+ ],
+ "description": "Create a SoilMoisture Model job.",
+ "operationId": "ModelInference_CreateSoilMoistureModelJob",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "JobId provided by user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "job",
+ "description": "Job parameters supplied by user.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SoilMoistureModelJob"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/SoilMoistureModelJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "ModelInference_CreateSoilMoistureModelJob": {
+ "$ref": "./examples/ModelInference_CreateSoilMoistureModelJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ModelInference"
+ ],
+ "description": "Get SoilMoisture Model job's details.",
+ "operationId": "ModelInference_GetSoilMoistureModelJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SoilMoistureModelJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "ModelInference_GetSoilMoistureModelJob": {
+ "$ref": "./examples/ModelInference_GetSoilMoistureModelJob.json"
+ }
+ }
+ }
+ },
+ "/nutrient-analyses": {
+ "get": {
+ "tags": [
+ "NutrientAnalyses"
+ ],
+ "description": "Returns a paginated list of nutrient analysis resources across all parties.",
+ "operationId": "NutrientAnalyses_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "parentType",
+ "description": "Type of the parent it belongs to.\r\ni.e. PlantTissueAnalysis.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "parentIds",
+ "description": "Parent ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "classifications",
+ "description": "Classifications for nutrient analyses.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/NutrientAnalysisListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "NutrientAnalyses_List": {
+ "$ref": "./examples/NutrientAnalyses_List.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/nutrient-analyses": {
+ "get": {
+ "tags": [
+ "NutrientAnalyses"
+ ],
+ "description": "Returns a paginated list of nutrient analysis resources under a particular party.",
+ "operationId": "NutrientAnalyses_ListByPartyId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "parentType",
+ "description": "Type of the parent it belongs to.\r\ni.e. PlantTissueAnalysis.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "parentIds",
+ "description": "Parent ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "classifications",
+ "description": "Classifications for nutrient analyses.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/NutrientAnalysisListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "NutrientAnalyses_ListByPartyId": {
+ "$ref": "./examples/NutrientAnalyses_ListByPartyId.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/nutrient-analyses/{nutrientAnalysisId}": {
+ "get": {
+ "tags": [
+ "NutrientAnalyses"
+ ],
+ "description": "Gets a specified nutrient analysis resource under a particular party.",
+ "operationId": "NutrientAnalyses_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "nutrientAnalysisId",
+ "description": "Id of the nutrient analysis.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/NutrientAnalysis"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "NutrientAnalyses_Get": {
+ "$ref": "./examples/NutrientAnalyses_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "NutrientAnalyses"
+ ],
+ "description": "Creates or updates a nutrient analysis resource.",
+ "operationId": "NutrientAnalyses_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "nutrientAnalysisId",
+ "description": "Id of the nutrient analysis resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "nutrientAnalysis",
+ "description": "NutrientAnalysis resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/NutrientAnalysis"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/NutrientAnalysis"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/NutrientAnalysis"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "NutrientAnalyses_CreateOrUpdate": {
+ "$ref": "./examples/NutrientAnalyses_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "NutrientAnalyses"
+ ],
+ "description": "Deletes a specified nutrient analysis resource under a particular party.",
+ "operationId": "NutrientAnalyses_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "nutrientAnalysisId",
+ "description": "Id of the nutrient analysis.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "NutrientAnalyses_Delete": {
+ "$ref": "./examples/NutrientAnalyses_Delete.json"
+ }
+ }
+ }
+ },
+ "/oauth/providers": {
+ "get": {
+ "tags": [
+ "OAuthProviders"
+ ],
+ "description": "Returns a paginated list of oauthProvider resources.",
+ "operationId": "OAuthProviders_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OAuthProviderListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "OAuthProviders_List": {
+ "$ref": "./examples/OAuthProviders_List.json"
+ }
+ }
+ }
+ },
+ "/oauth/providers/{oauthProviderId}": {
+ "get": {
+ "tags": [
+ "OAuthProviders"
+ ],
+ "description": "Get a specified oauthProvider resource.",
+ "operationId": "OAuthProviders_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "oauthProviderId",
+ "description": "ID of the oauthProvider resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OAuthProvider"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "OAuthProviders_Get": {
+ "$ref": "./examples/OAuthProviders_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "OAuthProviders"
+ ],
+ "description": "Creates or updates an oauthProvider resource.",
+ "operationId": "OAuthProviders_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "oauthProviderId",
+ "description": "ID of oauthProvider resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "oauthProvider",
+ "description": "OauthProvider resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OAuthProvider"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/OAuthProvider"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OAuthProvider"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "OAuthProviders_CreateOrUpdate": {
+ "$ref": "./examples/OAuthProviders_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "OAuthProviders"
+ ],
+ "description": "Deletes an specified oauthProvider resource.",
+ "operationId": "OAuthProviders_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "oauthProviderId",
+ "description": "ID of oauthProvider.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "OAuthProviders_Delete": {
+ "$ref": "./examples/OAuthProviders_Delete.json"
+ }
+ }
+ }
+ },
+ "/oauth/providers/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "OAuthProviders"
+ ],
+ "description": "Get cascade delete job for oauthProvider resource.",
+ "operationId": "OAuthProviders_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OAuthProviderCascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "OAuthProviders_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/OAuthProviders_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "OAuthProviders"
+ ],
+ "description": "Create cascade delete job for oauthProvider resource.",
+ "operationId": "OAuthProviders_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "oauthProviderId",
+ "description": "Id of the application data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/OAuthProviderCascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "OAuthProviders_CreateCascadeDeleteJob": {
+ "$ref": "./examples/OAuthProviders_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/oauth/tokens": {
+ "get": {
+ "tags": [
+ "OAuthTokens"
+ ],
+ "description": "Returns a list of OAuthToken documents.",
+ "operationId": "OAuthTokens_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "authProviderIds",
+ "description": "Name of AuthProvider.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "partyIds",
+ "description": "List of parties.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "isValid",
+ "description": "If the token object is valid.",
+ "type": "boolean"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OAuthTokenListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "OAuthTokens_List": {
+ "$ref": "./examples/OAuthTokens_List.json"
+ }
+ }
+ }
+ },
+ "/oauth/tokens/:connect": {
+ "post": {
+ "tags": [
+ "OAuthTokens"
+ ],
+ "description": "Returns Connection link needed in the OAuth flow.",
+ "operationId": "OAuthTokens_GetOAuthConnectionLink",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "oauthConnectRequest",
+ "description": "OAuth Connect Request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OAuthConnectRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "string"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "OAuthTokens_GetOAuthConnectionLink": {
+ "$ref": "./examples/OAuthTokens_GetOAuthConnectionLink.json"
+ }
+ }
+ }
+ },
+ "/oauth/tokens/remove/{jobId}": {
+ "get": {
+ "tags": [
+ "OAuthTokens"
+ ],
+ "description": "Get remove job for OAuth token.",
+ "operationId": "OAuthTokens_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "OAuthTokens_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/OAuthTokens_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "OAuthTokens"
+ ],
+ "description": "Create remove job for OAuth token.",
+ "operationId": "OAuthTokens_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "oauthProviderId",
+ "description": "Id of the OAuthProvider.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "OAuthTokens_CreateCascadeDeleteJob": {
+ "$ref": "./examples/OAuthTokens_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/parties": {
+ "get": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Returns a paginated list of party resources.",
+ "operationId": "Parties_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PartyListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Parties_List": {
+ "$ref": "./examples/Parties_List.json"
+ }
+ }
+ }
+ },
+ "/parties:overlap": {
+ "post": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Returns overlapping area between two resources.",
+ "operationId": "Parties_GeoOverlap",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "overlapResources",
+ "description": "Overlap Resources.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OverlapResourcesQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PartyOverlapResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Parties_GeoOverlap": {
+ "$ref": "./examples/Parties_GeoOverlap.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}": {
+ "get": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Gets a specified party resource.",
+ "operationId": "Parties_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Party"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Parties_Get": {
+ "$ref": "./examples/Parties_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Creates or updates a party resource.",
+ "operationId": "Parties_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "party",
+ "description": "Party resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Party"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Party"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Party"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Parties_CreateOrUpdate": {
+ "$ref": "./examples/Parties_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Deletes a specified party resource.",
+ "operationId": "Parties_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of party to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Parties_Delete": {
+ "$ref": "./examples/Parties_Delete.json"
+ }
+ }
+ }
+ },
+ "/parties/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Get a cascade delete job for specified party.",
+ "operationId": "Parties_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Parties_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/Parties_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Parties"
+ ],
+ "description": "Create a cascade delete job for specified party.",
+ "operationId": "Parties_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the party to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Parties_CreateCascadeDeleteJob": {
+ "$ref": "./examples/Parties_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/planting-data/{plantingDataId}": {
+ "get": {
+ "tags": [
+ "PlantingData"
+ ],
+ "description": "Get a specified planting data resource under a particular party.",
+ "operationId": "PlantingData_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "plantingDataId",
+ "description": "ID of the planting data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlantingData"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantingData_Get": {
+ "$ref": "./examples/PlantingData_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "PlantingData"
+ ],
+ "description": "Creates or updates an planting data resource under a particular party.",
+ "operationId": "PlantingData_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "plantingDataId",
+ "description": "ID of the planting data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "plantingData",
+ "description": "Planting data resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PlantingData"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlantingData"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/PlantingData"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PlantingData_CreateOrUpdate": {
+ "$ref": "./examples/PlantingData_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PlantingData"
+ ],
+ "description": "Deletes a specified planting data resource under a particular party.",
+ "operationId": "PlantingData_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "plantingDataId",
+ "description": "ID of the planting data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantingData_Delete": {
+ "$ref": "./examples/PlantingData_Delete.json"
+ }
+ }
+ }
+ },
+ "/planting-data:search": {
+ "post": {
+ "tags": [
+ "PlantingData"
+ ],
+ "description": "Search for PlantingData across all parties by intersecting geometry.",
+ "operationId": "PlantingData_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchFarmOperationQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchPlantingDataQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlantingDataMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantingData_Search": {
+ "$ref": "./examples/PlantingData_Search.json"
+ }
+ }
+ }
+ },
+ "/planting-data/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "PlantingData"
+ ],
+ "description": "Create cascade delete job for planting data resource.",
+ "operationId": "PlantingData_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "plantingDataId",
+ "description": "Id of the planting data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "PlantingData_CreateCascadeDeleteJob": {
+ "$ref": "./examples/PlantingData_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "PlantingData"
+ ],
+ "description": "Get cascade delete job for planting data resource.",
+ "operationId": "PlantingData_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantingData_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/PlantingData_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/plant-tissue-analyses/{plantTissueAnalysisId}": {
+ "get": {
+ "tags": [
+ "PlantTissueAnalyses"
+ ],
+ "description": "Gets a specified plant tissue analysis resource under a particular party.",
+ "operationId": "PlantTissueAnalyses_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "plantTissueAnalysisId",
+ "description": "Id of the plant tissue analysis.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlantTissueAnalysis"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantTissueAnalyses_Get": {
+ "$ref": "./examples/PlantTissueAnalyses_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "PlantTissueAnalyses"
+ ],
+ "description": "Creates or updates a plant tissue analysis resource.",
+ "operationId": "PlantTissueAnalyses_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "plantTissueAnalysisId",
+ "description": "Id of the plant tissue analysis resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "plantTissueAnalysis",
+ "description": "PlantTissueAnalysis resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PlantTissueAnalysis"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlantTissueAnalysis"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/PlantTissueAnalysis"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantTissueAnalyses_CreateOrUpdate": {
+ "$ref": "./examples/PlantTissueAnalyses_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PlantTissueAnalyses"
+ ],
+ "description": "Deletes a specified plant tissue analysis resource under a particular party.",
+ "operationId": "PlantTissueAnalyses_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "plantTissueAnalysisId",
+ "description": "Id of the plant tissue analysis.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantTissueAnalyses_Delete": {
+ "$ref": "./examples/PlantTissueAnalyses_Delete.json"
+ }
+ }
+ }
+ },
+ "/plant-tissue-analyses:search": {
+ "post": {
+ "tags": [
+ "PlantTissueAnalyses"
+ ],
+ "description": "Search for PlantTissueAnalyses across all parties by intersecting geometry.",
+ "operationId": "PlantTissueAnalyses_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchPlantTissueAnalysisQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchPlantTissueAnalysisQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlantTissueAnalysisMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantTissueAnalyses_Search": {
+ "$ref": "./examples/PlantTissueAnalyses_Search.json"
+ }
+ }
+ }
+ },
+ "/plant-tissue-analyses/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "PlantTissueAnalyses"
+ ],
+ "description": "Create a cascade delete job for specified plant tissue analysis.",
+ "operationId": "PlantTissueAnalyses_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "plantTissueAnalysisId",
+ "description": "ID of the plant tissue analysis to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "PlantTissueAnalyses_CreateCascadeDeleteJob": {
+ "$ref": "./examples/PlantTissueAnalyses_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "PlantTissueAnalyses"
+ ],
+ "description": "Get a cascade delete job for specified plant tissue analysis.",
+ "operationId": "PlantTissueAnalyses_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PlantTissueAnalyses_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/PlantTissueAnalyses_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/prescription-maps": {
+ "get": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Returns a paginated list of prescription map resources under a particular party.",
+ "operationId": "PrescriptionMaps_ListByPartyId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "types",
+ "description": "Types of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "cropIds",
+ "description": "Crop Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "seasonIds",
+ "description": "Season Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "fieldIds",
+ "description": "Field Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "sources",
+ "description": "Sources for the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMapListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_ListByPartyId": {
+ "$ref": "./examples/PrescriptionMaps_ListByPartyId.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/prescription-maps/{prescriptionMapId}": {
+ "get": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Gets a specified prescription map resource under a particular party.",
+ "operationId": "PrescriptionMaps_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "prescriptionMapId",
+ "description": "Id of the prescription map.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMap"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_Get": {
+ "$ref": "./examples/PrescriptionMaps_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Creates or Updates a prescription map resource under a particular party.",
+ "operationId": "PrescriptionMaps_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "prescriptionMapId",
+ "description": "Id of the prescription map resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "prescriptionMap",
+ "description": "PrescriptionMap resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMap"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMap"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMap"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_CreateOrUpdate": {
+ "$ref": "./examples/PrescriptionMaps_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Deletes a specified prescription map resource under a particular party.",
+ "operationId": "PrescriptionMaps_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "prescriptionMapId",
+ "description": "Id of the prescriptionMap.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_Delete": {
+ "$ref": "./examples/PrescriptionMaps_Delete.json"
+ }
+ }
+ }
+ },
+ "/prescription-maps": {
+ "get": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Returns a paginated list of prescription map resources across all parties.",
+ "operationId": "PrescriptionMaps_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "types",
+ "description": "Types of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "cropIds",
+ "description": "Crop Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "seasonIds",
+ "description": "Season Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "fieldIds",
+ "description": "Field Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "sources",
+ "description": "Sources for the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMapListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_List": {
+ "$ref": "./examples/PrescriptionMaps_List.json"
+ }
+ }
+ }
+ },
+ "/prescription-maps/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Get a cascade delete job for specified prescription map.",
+ "operationId": "PrescriptionMaps_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/PrescriptionMaps_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrescriptionMaps"
+ ],
+ "description": "Create a cascade delete job for specified prescription map.",
+ "operationId": "PrescriptionMaps_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "prescriptionMapId",
+ "description": "ID of the prescription map to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "PrescriptionMaps_CreateCascadeDeleteJob": {
+ "$ref": "./examples/PrescriptionMaps_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/prescriptions/{prescriptionId}": {
+ "get": {
+ "tags": [
+ "Prescriptions"
+ ],
+ "description": "Gets a specified prescription resource under a particular party.",
+ "operationId": "Prescriptions_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "prescriptionId",
+ "description": "Id of the prescription.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Prescription"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Prescriptions_Get": {
+ "$ref": "./examples/Prescriptions_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Prescriptions"
+ ],
+ "description": "Creates or Updates a prescription resource under a particular party.",
+ "operationId": "Prescriptions_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "prescriptionId",
+ "description": "Id of the prescription resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "prescription",
+ "description": "Prescription resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Prescription"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Prescription"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Prescription"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Prescriptions_CreateOrUpdate": {
+ "$ref": "./examples/Prescriptions_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Prescriptions"
+ ],
+ "description": "Deletes a specified prescription resource under a particular party.",
+ "operationId": "Prescriptions_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "prescriptionId",
+ "description": "Id of the prescription.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Prescriptions_Delete": {
+ "$ref": "./examples/Prescriptions_Delete.json"
+ }
+ }
+ }
+ },
+ "/prescription:search": {
+ "post": {
+ "tags": [
+ "Prescriptions"
+ ],
+ "description": "Search for Prescriptions across all parties by intersecting geometry.",
+ "operationId": "Prescriptions_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchPrescriptionQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchPrescriptionQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PrescriptionMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Prescriptions_Search": {
+ "$ref": "./examples/Prescriptions_Search.json"
+ }
+ }
+ }
+ },
+ "/prescriptions/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "Prescriptions"
+ ],
+ "description": "Get a cascade delete job for specified prescription.",
+ "operationId": "Prescriptions_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Prescriptions_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/Prescriptions_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Prescriptions"
+ ],
+ "description": "Create a cascade delete job for specified prescription.",
+ "operationId": "Prescriptions_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "prescriptionId",
+ "description": "ID of the prescription to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Prescriptions_CreateCascadeDeleteJob": {
+ "$ref": "./examples/Prescriptions_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/scenes": {
+ "get": {
+ "tags": [
+ "Scenes"
+ ],
+ "description": "Returns a paginated list of scene resources.",
+ "operationId": "Scenes_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "provider",
+ "description": "Provider name of scene data. Supported value: SentinelHub.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "PartyId.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "associatedResourceId",
+ "description": "Associated Resource Id of the resource.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "associatedResourceType",
+ "description": "Resource Types of the resource.\r\ni.e. Farmer, Farm, Field, SeasonalField, ApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "source",
+ "description": "Source name of scene data, Available Values: Sentinel_2_L2A, Sentinel_2_L1C.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "startDateTime",
+ "description": "Scene start UTC datetime (inclusive), sample format: yyyy-MM-ddThh:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "endDateTime",
+ "description": "Scene end UTC datetime (inclusive), sample format: yyyy-MM-dThh:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCloudCoveragePercentage",
+ "description": "Filter scenes with cloud coverage percentage less than max value. Range [0 to 100.0].",
+ "type": "number",
+ "format": "double",
+ "default": 100,
+ "maximum": 100,
+ "minimum": 0
+ },
+ {
+ "in": "query",
+ "name": "maxDarkPixelCoveragePercentage",
+ "description": "Filter scenes with dark pixel coverage percentage less than max value. Range [0 to 100.0].",
+ "type": "number",
+ "format": "double",
+ "default": 100,
+ "maximum": 100,
+ "minimum": 0
+ },
+ {
+ "in": "query",
+ "name": "imageNames",
+ "description": "List of image names to be filtered.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "imageResolutions",
+ "description": "List of image resolutions in meters to be filtered.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "imageFormats",
+ "description": "List of image formats to be filtered.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SceneListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Scenes_List": {
+ "$ref": "./examples/Scenes_List.json"
+ }
+ }
+ }
+ },
+ "/scenes/downloadFiles": {
+ "get": {
+ "tags": [
+ "Scenes"
+ ],
+ "description": "Downloads and returns file Stream as response for the given input filePath.",
+ "operationId": "Scenes_Download",
+ "produces": [
+ "application/json",
+ "application/octet-stream"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "filePath",
+ "description": "cloud storage path of scene file.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "format": "binary",
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Scenes_Download": {
+ "$ref": "./examples/Scenes_Download.json"
+ }
+ }
+ }
+ },
+ "/scenes/satellite/ingest-data/{jobId}": {
+ "put": {
+ "tags": [
+ "Scenes"
+ ],
+ "description": "Create a satellite data ingestion job.",
+ "operationId": "Scenes_CreateSatelliteDataIngestionJob",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "JobId provided by user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "job",
+ "description": "Job parameters supplied by user.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SatelliteDataIngestionJob"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/SatelliteDataIngestionJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Scenes_CreateSatelliteDataIngestionJob": {
+ "$ref": "./examples/Scenes_CreateSatelliteDataIngestionJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Scenes"
+ ],
+ "description": "Get a satellite data ingestion job.",
+ "operationId": "Scenes_GetSatelliteDataIngestionJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SatelliteDataIngestionJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Scenes_GetSatelliteDataIngestionJobDetails": {
+ "$ref": "./examples/Scenes_GetSatelliteDataIngestionJobDetails.json"
+ }
+ }
+ }
+ },
+ "/scenes/stac-collections/{collectionId}:search": {
+ "post": {
+ "tags": [
+ "Scenes"
+ ],
+ "description": "Search for STAC features by collection id, bbox, intersecting geometry, start and end datetime.",
+ "operationId": "Scenes_SearchFeatures",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "collectionId",
+ "description": "Collection Id to be searched.",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "Sentinel_2_L2A",
+ "Sentinel_2_L1C"
+ ],
+ "x-ms-enum": {
+ "name": "collectionId",
+ "modelAsString": true
+ }
+ },
+ {
+ "in": "query",
+ "name": "maxpagesize",
+ "description": "Maximum number of features needed (inclusive). Minimum = 1, Maximum = 100, Default value = 10.",
+ "type": "integer",
+ "format": "int32",
+ "default": 10,
+ "maximum": 100,
+ "minimum": 1
+ },
+ {
+ "in": "query",
+ "name": "skip",
+ "description": "Skip token for getting next set of results.",
+ "type": "integer",
+ "format": "int32",
+ "maximum": 2147483647,
+ "minimum": 1
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchFeaturesQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchFeaturesQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SearchFeaturesResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Scenes_SearchFeatures": {
+ "$ref": "./examples/Scenes_SearchFeatures.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/seasonal-fields/{seasonalFieldId}": {
+ "get": {
+ "tags": [
+ "SeasonalFields"
+ ],
+ "description": "Gets a specified seasonal field resource under a particular party.",
+ "operationId": "SeasonalFields_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "seasonalFieldId",
+ "description": "Id of the seasonal field.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SeasonalField"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SeasonalFields_Get": {
+ "$ref": "./examples/SeasonalFields_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "SeasonalFields"
+ ],
+ "description": "Creates or Updates a seasonal field resource under a particular party.",
+ "operationId": "SeasonalFields_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "seasonalFieldId",
+ "description": "Id of the seasonal field resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "seasonalField",
+ "description": "Seasonal field resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SeasonalField"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SeasonalField"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SeasonalField"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SeasonalFields_CreateOrUpdate": {
+ "$ref": "./examples/SeasonalFields_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "SeasonalFields"
+ ],
+ "description": "Deletes a specified seasonal-field resource under a particular party.",
+ "operationId": "SeasonalFields_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "seasonalFieldId",
+ "description": "Id of the seasonal field.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SeasonalFields_Delete": {
+ "$ref": "./examples/SeasonalFields_Delete.json"
+ }
+ }
+ }
+ },
+ "/seasonal-fields:search": {
+ "post": {
+ "tags": [
+ "SeasonalFields"
+ ],
+ "description": "Search for SeasonalFields across all parties by intersecting geometry.",
+ "operationId": "SeasonalFields_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchSeasonalFieldQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchSeasonalFieldQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SeasonalFieldMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SeasonalFields_Search": {
+ "$ref": "./examples/SeasonalFields_Search.json"
+ }
+ }
+ }
+ },
+ "/seasonal-fields/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "SeasonalFields"
+ ],
+ "description": "Get cascade delete job for specified seasonal field.",
+ "operationId": "SeasonalFields_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SeasonalFields_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/SeasonalFields_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "SeasonalFields"
+ ],
+ "description": "Create a cascade delete job for specified seasonal field.",
+ "operationId": "SeasonalFields_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "seasonalFieldId",
+ "description": "ID of the seasonalField to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "SeasonalFields_CreateCascadeDeleteJob": {
+ "$ref": "./examples/SeasonalFields_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ },
+ "/seasons": {
+ "get": {
+ "tags": [
+ "Seasons"
+ ],
+ "description": "Returns a paginated list of season resources.",
+ "operationId": "Seasons_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "minStartDateTime",
+ "description": "Minimum season start datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxStartDateTime",
+ "description": "Maximum season start datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minEndDateTime",
+ "description": "Minimum season end datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxEndDateTime",
+ "description": "Maximum season end datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "years",
+ "description": "Years of the resource.",
+ "type": "array",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SeasonListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Seasons_List": {
+ "$ref": "./examples/Seasons_List.json"
+ }
+ }
+ }
+ },
+ "/seasons/{seasonId}": {
+ "get": {
+ "tags": [
+ "Seasons"
+ ],
+ "description": "Gets a specified season resource.",
+ "operationId": "Seasons_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "seasonId",
+ "description": "Id of the season.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Season"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Seasons_Get": {
+ "$ref": "./examples/Seasons_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Seasons"
+ ],
+ "description": "Creates or updates a season resource.",
+ "operationId": "Seasons_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "seasonId",
+ "description": "Id of the season resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "season",
+ "description": "Season resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Season"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Season"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Season"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Seasons_CreateOrUpdate": {
+ "$ref": "./examples/Seasons_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Seasons"
+ ],
+ "description": "Deletes a specified season resource.",
+ "operationId": "Seasons_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "seasonId",
+ "description": "Id of the season.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Seasons_Delete": {
+ "$ref": "./examples/Seasons_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/sensor-data-models": {
+ "get": {
+ "tags": [
+ "SensorDataModels"
+ ],
+ "description": "Returns a paginated list of sensor data model resources.",
+ "operationId": "SensorDataModels_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the associated sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorDataModelListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SensorDataModels_List": {
+ "$ref": "./examples/SensorDataModels_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/sensor-data-models/{sensorDataModelId}": {
+ "patch": {
+ "tags": [
+ "SensorDataModels"
+ ],
+ "description": "Create a sensor data model entity.",
+ "operationId": "SensorDataModels_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorDataModelId",
+ "description": "Id of the sensor data model.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "sensorDataModelObject",
+ "description": "Sensor data model object details.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SensorDataModel"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SensorDataModel"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorDataModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorDataModels_CreateOrUpdate": {
+ "$ref": "./examples/SensorDataModels_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SensorDataModels"
+ ],
+ "description": "Gets a sensor data model entity.",
+ "operationId": "SensorDataModels_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorDataModelId",
+ "description": "Id of the sensor data model resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorDataModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorDataModels_Get": {
+ "$ref": "./examples/SensorDataModels_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "SensorDataModels"
+ ],
+ "description": "Deletes a sensor data model entity.",
+ "operationId": "SensorDataModels_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorDataModelId",
+ "description": "Id of the sensor data model resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorDataModels_Delete": {
+ "$ref": "./examples/SensorDataModels_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-events": {
+ "get": {
+ "tags": [
+ "SensorEvents"
+ ],
+ "description": "Returns a list of sensor events data. Time span for query is limited to 90 days at a time.\r\nReturns last 90 days events when startDateTime and endDateTime are not provided.",
+ "operationId": "SensorEvents_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "sensorId",
+ "description": "Id of the associated sensor.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "sensorPartnerId",
+ "description": "Id of the associated sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "startDateTime",
+ "description": "Search span start time of sensor events (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nIt is truncated upto seconds if fraction is provided.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "endDateTime",
+ "description": "Search span end time of sensor events (inclusive), sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nIt is truncated upto seconds if fraction is provided.",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "excludeDuplicateEvents",
+ "description": "Flag to exclude duplicate events and take the latest ones only (Default: false).",
+ "type": "boolean",
+ "default": false
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorEventListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorEvents_List": {
+ "$ref": "./examples/SensorEvents_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-mappings": {
+ "get": {
+ "tags": [
+ "SensorMappings"
+ ],
+ "description": "Returns a paginated list of sensor mapping resources.",
+ "operationId": "SensorMappings_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "sensorIds",
+ "description": "Id of the sensors.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "sensorPartnerIds",
+ "description": "Id of the sensor partners.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "partyIds",
+ "description": "Id of the parties.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "associatedResourceIds",
+ "description": "Resource Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "associatedResourceType",
+ "description": "Resource Types of the resource.\r\ni.e. Farmer, Farm, Field, SeasonalField, FarmOperationApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorMappingListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SensorMappings_List": {
+ "$ref": "./examples/SensorMappings_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-mappings/{sensorMappingId}": {
+ "patch": {
+ "tags": [
+ "SensorMappings"
+ ],
+ "description": "Create a sensor mapping entity.",
+ "operationId": "SensorMappings_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorMappingId",
+ "description": "Id of the sensor mapping.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "sensorMappingObject",
+ "description": "Sensor mapping object details.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SensorMapping"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SensorMapping"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorMapping"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorMappings_CreateOrUpdate": {
+ "$ref": "./examples/SensorMappings_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SensorMappings"
+ ],
+ "description": "Gets a sensor mapping entity.",
+ "operationId": "SensorMappings_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorMappingId",
+ "description": "Id of the sensor mapping resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorMapping"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorMappings_Get": {
+ "$ref": "./examples/SensorMappings_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "SensorMappings"
+ ],
+ "description": "Deletes a sensor mapping entity.",
+ "operationId": "SensorMappings_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorMappingId",
+ "description": "Id of the sensor mapping resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorMappings_Delete": {
+ "$ref": "./examples/SensorMappings_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/integrations": {
+ "get": {
+ "tags": [
+ "SensorPartnerIntegrations"
+ ],
+ "description": "Gets partner integration models.",
+ "operationId": "SensorPartnerIntegrations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the associated sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyIds",
+ "description": "Ids of the parties.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationModelListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SensorPartnerIntegrations_List": {
+ "$ref": "./examples/SensorPartnerIntegrations_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/integrations/{integrationId}": {
+ "patch": {
+ "tags": [
+ "SensorPartnerIntegrations"
+ ],
+ "description": "Create or update an integration with a sensor partner.",
+ "operationId": "SensorPartnerIntegrations_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "integrationId",
+ "description": "Id of the integration to be created.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "sensorPartnerIntegrationModel",
+ "description": "Partner integration model.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationModel"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationModel"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorPartnerIntegrations_CreateOrUpdate": {
+ "$ref": "./examples/SensorPartnerIntegrations_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SensorPartnerIntegrations"
+ ],
+ "description": "Gets a partner integration model entity.",
+ "operationId": "SensorPartnerIntegrations_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "integrationId",
+ "description": "Id of the integration object.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorPartnerIntegrations_Get": {
+ "$ref": "./examples/SensorPartnerIntegrations_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "SensorPartnerIntegrations"
+ ],
+ "description": "Deletes a partner integration model entity.",
+ "operationId": "SensorPartnerIntegrations_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "integrationId",
+ "description": "Id of the integration to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorPartnerIntegrations_Delete": {
+ "$ref": "./examples/SensorPartnerIntegrations_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/integrations/{integrationId}/:check-consent": {
+ "post": {
+ "tags": [
+ "SensorPartnerIntegrations"
+ ],
+ "description": "Checks consent for partner integration.",
+ "operationId": "SensorPartnerIntegrations_CheckConsent",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "integrationId",
+ "description": "Id of the integration object.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "key",
+ "description": "Partner integration key.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationCheckConsentResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorPartnerIntegrations_CheckConsent": {
+ "$ref": "./examples/SensorPartnerIntegrations_CheckConsent.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/integrations/{integrationId}/:generate-consent-link": {
+ "post": {
+ "tags": [
+ "SensorPartnerIntegrations"
+ ],
+ "description": "Generates partner integration consent link.",
+ "operationId": "SensorPartnerIntegrations_GenerateConsentLink",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "integrationId",
+ "description": "Id of the integration object.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorPartnerIntegrationGenerateConsentLinkResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SensorPartnerIntegrations_GenerateConsentLink": {
+ "$ref": "./examples/SensorPartnerIntegrations_GenerateConsentLink.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/sensors": {
+ "get": {
+ "tags": [
+ "Sensors"
+ ],
+ "description": "Returns a paginated list of sensor resources.",
+ "operationId": "Sensors_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "sensorDataModelIds",
+ "description": "Id's of the sensor data models.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "sensorMappingIds",
+ "description": "Ids of the sensor mappings.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the associated sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "deviceIds",
+ "description": "Id's of the devices.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "ids",
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "names",
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "propertyFilters",
+ "description": "Filters on key-value pairs within the Properties object.\r\neg. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "statuses",
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "collectionFormat": "multi"
+ },
+ {
+ "in": "query",
+ "name": "minCreatedDateTime",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxCreatedDateTime",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "minLastModifiedDateTime",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxLastModifiedDateTime",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "description": "Maximum number of items needed (inclusive).\r\nMinimum = 10, Maximum = 1000, Default value = 50.",
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10
+ },
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SensorListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Sensors_List": {
+ "$ref": "./examples/Sensors_List.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/sensors/{sensorId}": {
+ "patch": {
+ "tags": [
+ "Sensors"
+ ],
+ "description": "Create a sensor entity.",
+ "operationId": "Sensors_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorId",
+ "description": "Id of the sensor resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "sensorDetails",
+ "description": "Sensor object details.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Sensor"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Sensor"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Sensor"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Sensors_CreateOrUpdate": {
+ "$ref": "./examples/Sensors_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Sensors"
+ ],
+ "description": "Gets a sensor entity.",
+ "operationId": "Sensors_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorId",
+ "description": "Id of the sensor resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Sensor"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Sensors_Get": {
+ "$ref": "./examples/Sensors_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Sensors"
+ ],
+ "description": "Deletes a sensor entity.",
+ "operationId": "Sensors_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorId",
+ "description": "Id of the sensor resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Sensors_Delete": {
+ "$ref": "./examples/Sensors_Delete.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/sensors/{sensorId}/connection-strings": {
+ "get": {
+ "tags": [
+ "Sensors"
+ ],
+ "description": "Gets a sensor connection string.",
+ "operationId": "Sensors_GetConnectionString",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorId",
+ "description": "Id of the sensor resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IoTHubDeviceAuthentication"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Sensors_GetConnectionString": {
+ "$ref": "./examples/Sensors_GetConnectionString.json"
+ }
+ }
+ }
+ },
+ "/sensor-partners/{sensorPartnerId}/sensors/{sensorId}/connection-strings/:renew": {
+ "post": {
+ "tags": [
+ "Sensors"
+ ],
+ "description": "Renews a sensor connection string.",
+ "operationId": "Sensors_RenewConnectionString",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "sensorPartnerId",
+ "description": "Id of the sensor partner.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "sensorId",
+ "description": "Id of the sensor resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "renewConnectionStringModel",
+ "description": "Sensor's connection string model.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SensorRenewConnectionStringModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IoTHubDeviceAuthentication"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Sensors_RenewConnectionString": {
+ "$ref": "./examples/Sensors_RenewConnectionString.json"
+ }
+ }
+ }
+ },
+ "/solutions/{solutionId}:cancel": {
+ "post": {
+ "tags": [
+ "SolutionInference"
+ ],
+ "description": "Cancels a job for given solution id.",
+ "operationId": "SolutionInference_Cancel",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "solutionId",
+ "description": "Id of solution for which job is to be cancelled.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "solutionInferenceRequest",
+ "description": "solutionInferenceRequest containing input needed for job request processing.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SolutionInference"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "object",
+ "additionalProperties": {}
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SolutionInference_Cancel": {
+ "$ref": "./examples/SolutionInference_Cancel.json"
+ }
+ }
+ }
+ },
+ "/solutions/{solutionId}:create": {
+ "post": {
+ "tags": [
+ "SolutionInference"
+ ],
+ "description": "Creates a job trigger for a solution.",
+ "operationId": "SolutionInference_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "solutionId",
+ "description": "Id of the solution resource.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "solutionInferenceRequest",
+ "description": "solutionInferenceRequest containing input needed for job request processing.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SolutionInference"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "type": "object",
+ "additionalProperties": {}
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "SolutionInference_CreateOrUpdate": {
+ "$ref": "./examples/SolutionInference_CreateOrUpdate.json"
+ }
+ }
+ }
+ },
+ "/solutions/{solutionId}:fetch": {
+ "post": {
+ "tags": [
+ "SolutionInference"
+ ],
+ "description": "Fetches details of triggered job for a solution.",
+ "operationId": "SolutionInference_Fetch",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "solutionId",
+ "description": "Id of the solution.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "solutionInferenceRequest",
+ "description": "solutionInferenceRequest containing input needed for job request processing.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SolutionInference"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "object",
+ "additionalProperties": {}
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "SolutionInference_Fetch": {
+ "$ref": "./examples/SolutionInference_Fetch.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/tillage-data/{tillageDataId}": {
+ "get": {
+ "tags": [
+ "TillageData"
+ ],
+ "description": "Get a specified tillage data resource under a particular party.",
+ "operationId": "TillageData_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "tillageDataId",
+ "description": "ID of the tillage data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/TillageData"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "TillageData_Get": {
+ "$ref": "./examples/TillageData_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "TillageData"
+ ],
+ "description": "Creates or updates an tillage data resource under a particular party.",
+ "operationId": "TillageData_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "tillageDataId",
+ "description": "ID of the tillage data resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "tillageData",
+ "description": "Tillage data resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TillageData"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/TillageData"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/TillageData"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TillageData_CreateOrUpdate": {
+ "$ref": "./examples/TillageData_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "TillageData"
+ ],
+ "description": "Deletes a specified tillage data resource under a particular party.",
+ "operationId": "TillageData_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "ID of the associated party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "tillageDataId",
+ "description": "ID of the tillage data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "TillageData_Delete": {
+ "$ref": "./examples/TillageData_Delete.json"
+ }
+ }
+ }
+ },
+ "/tillage-data:search": {
+ "post": {
+ "tags": [
+ "TillageData"
+ ],
+ "description": "Search for TillageData across all parties by intersecting geometry.",
+ "operationId": "TillageData_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchFarmOperationQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchTillageDataQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/TillageDataMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "TillageData_Search": {
+ "$ref": "./examples/TillageData_Search.json"
+ }
+ }
+ }
+ },
+ "/tillage-data/cascade-delete/{jobId}": {
+ "put": {
+ "tags": [
+ "TillageData"
+ ],
+ "description": "Create cascade delete job for tillage data resource.",
+ "operationId": "TillageData_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job Id supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "tillageDataId",
+ "description": "Id of the tillage data.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "TillageData_CreateCascadeDeleteJob": {
+ "$ref": "./examples/TillageData_CreateCascadeDeleteJob.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "TillageData"
+ ],
+ "description": "Get cascade delete job for tillage data resource.",
+ "operationId": "TillageData_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "TillageData_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/TillageData_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ }
+ },
+ "/weather-data:fetch": {
+ "post": {
+ "tags": [
+ "WeatherData"
+ ],
+ "description": "Returns a list of WeatherData.",
+ "operationId": "WeatherData_Get",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "weatherDataProviderRequest",
+ "description": "Weather data provider request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WeatherDataProviderRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/WeatherDataProviderResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "WeatherData_Get": {
+ "$ref": "./examples/WeatherData_Get.json"
+ }
+ }
+ }
+ },
+ "/parties/{partyId}/zones/{zoneId}": {
+ "get": {
+ "tags": [
+ "Zones"
+ ],
+ "description": "Gets a specified zone resource under a particular party.",
+ "operationId": "Zones_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "zoneId",
+ "description": "Id of the zone.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Zone"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Zones_Get": {
+ "$ref": "./examples/Zones_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Zones"
+ ],
+ "description": "Creates or updates a Zone resource.",
+ "operationId": "Zones_CreateOrUpdate",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "zoneId",
+ "description": "Id of the zone resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "zone",
+ "description": "Zone resource payload to create or update.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Zone"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Zone"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Zone"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Zones_CreateOrUpdate": {
+ "$ref": "./examples/Zones_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Zones"
+ ],
+ "description": "Deletes a specified zone resource under a particular party.",
+ "operationId": "Zones_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "partyId",
+ "description": "Id of the party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "zoneId",
+ "description": "Id of the zone.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Zones_Delete": {
+ "$ref": "./examples/Zones_Delete.json"
+ }
+ }
+ }
+ },
+ "/zone:search": {
+ "post": {
+ "tags": [
+ "Zones"
+ ],
+ "description": "Search for Zones across all parties by intersecting geometry.",
+ "operationId": "Zones_Search",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skipToken",
+ "description": "Skip token for getting next set of results.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "maxPageSize",
+ "format": "int32",
+ "description": "Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default Value = 50.",
+ "default": 50,
+ "maximum": 1000,
+ "minimum": 10,
+ "type": "integer"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "searchZoneQuery",
+ "description": "Query filters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SearchZoneQuery"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ZoneMetaDataListResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Zones_Search": {
+ "$ref": "./examples/Zones_Search.json"
+ }
+ }
+ }
+ },
+ "/zones/cascade-delete/{jobId}": {
+ "get": {
+ "tags": [
+ "Zones"
+ ],
+ "description": "Get a cascade delete job for specified job id.",
+ "operationId": "Zones_GetCascadeDeleteJobDetails",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Id of the job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-examples": {
+ "Zones_GetCascadeDeleteJobDetails": {
+ "$ref": "./examples/Zones_GetCascadeDeleteJobDetails.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Zones"
+ ],
+ "description": "Create a cascade delete job for specified zone.",
+ "operationId": "Zones_CreateCascadeDeleteJob",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "jobId",
+ "description": "Job ID supplied by end user.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "partyId",
+ "description": "ID of the associated party.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "zoneId",
+ "description": "ID of the zone to be deleted.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/CascadeDeleteJob"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "x-ms-client-name": "ErrorCode"
+ }
+ },
+ "x-ms-error-response": true
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Zones_CreateCascadeDeleteJob": {
+ "$ref": "./examples/Zones_CreateCascadeDeleteJob.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AdditionalProviderParameters": {
+ "description": "Schema of additional parameters for weather data provider request.",
+ "type": "object",
+ "properties": {
+ "iconResolution": {
+ "description": "Icon Resolution (Only applicable for AzureWeatherMaps).",
+ "type": "string"
+ },
+ "details": {
+ "description": "Details (Only applicable for AzureWeatherMaps).",
+ "default": true,
+ "type": "boolean"
+ }
+ }
+ },
+ "ApiKeyAuthCredentials": {
+ "description": "Api Key Auth Credentials class for API Key based Auth.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AuthCredentials"
+ },
+ {
+ "required": [
+ "apiKey"
+ ],
+ "type": "object",
+ "properties": {
+ "apiKey": {
+ "$ref": "#/definitions/KeyVaultProperties"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "ApiKeyAuthCredentials"
+ },
+ "ApplicationData": {
+ "description": "Schema of application data resource.",
+ "type": "object",
+ "properties": {
+ "applicationProductDetails": {
+ "description": "Application product details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationProductDetail"
+ }
+ },
+ "avgMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "ApplicationDataMetaData": {
+ "description": "Schema of application data resource.",
+ "type": "object",
+ "properties": {
+ "applicationProductDetails": {
+ "description": "Application product details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationProductDetail"
+ }
+ },
+ "avgMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "ApplicationDataMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationDataMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "ApplicationProductDetail": {
+ "description": "Schema of product used during application.",
+ "type": "object",
+ "properties": {
+ "productName": {
+ "description": "Name of the product applied.",
+ "maxLength": 100,
+ "minLength": 1,
+ "type": "string"
+ },
+ "isCarrier": {
+ "description": "A flag indicating whether product is a carrier for a tank mix.",
+ "default": false,
+ "type": "boolean"
+ },
+ "avgMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalMaterial": {
+ "$ref": "#/definitions/Measure"
+ }
+ }
+ },
+ "Attachment": {
+ "description": "Schema of attachment resource.",
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "description": "Associated Resource id for this attachment.",
+ "type": "string"
+ },
+ "resourceType": {
+ "description": "Associated Resource type for this attachment.",
+ "enum": [
+ "Party",
+ "Farm",
+ "Field",
+ "SeasonalField",
+ "ApplicationData",
+ "HarvestData",
+ "TillageData",
+ "PlantingData",
+ "PlantTissueAnalysis"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AttachmentResourceType",
+ "modelAsString": true
+ }
+ },
+ "originalFileName": {
+ "description": "Original File Name for this attachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "partyId": {
+ "description": "PartyId id for this attachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date when resource was created.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date when resource was last modified.",
+ "type": "string",
+ "readOnly": true
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "AttachmentListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Attachment"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "AuthCredentials": {
+ "description": "AuthCredentials abstract base class for Auth Purpose.",
+ "required": [
+ "kind"
+ ],
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/AuthCredentialsKind"
+ }
+ },
+ "discriminator": "kind"
+ },
+ "AuthCredentialsKind": {
+ "description": "CredentialTypeEnum.",
+ "enum": [
+ "OAuthClientCredentials",
+ "ApiKeyAuthCredentials"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AuthCredentialsKind",
+ "modelAsString": true
+ }
+ },
+ "BiomassModelJob": {
+ "description": "Schema of biomass model job.",
+ "required": [
+ "associatedResource",
+ "cropName",
+ "imageFormat",
+ "imageResolution",
+ "inferenceEndDateTime",
+ "modelVersion",
+ "partyId",
+ "plantingStartDateTime",
+ "satelliteProvider",
+ "satelliteSource",
+ "weatherExtensionId"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "modelVersion": {
+ "description": "The version of the biomass model to be run. Available Value: 1.0 .",
+ "minLength": 1,
+ "type": "string"
+ },
+ "cropName": {
+ "description": "Crop name for biomass model. Available Value: Corn.",
+ "minLength": 1,
+ "enum": [
+ "Corn"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CropName",
+ "modelAsString": true
+ }
+ },
+ "plantingStartDateTime": {
+ "format": "date-time",
+ "description": "Planting datetime for biomass calculations. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string"
+ },
+ "inferenceEndDateTime": {
+ "format": "date-time",
+ "description": "End datetime till which biomass will be calculated. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string"
+ },
+ "weatherExtensionId": {
+ "description": "ExtensionId of weather data. Available values: DTN.ClearAg, DTN.ContentServices.",
+ "maxLength": 100,
+ "minLength": 2,
+ "pattern": "^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$",
+ "type": "string"
+ },
+ "satelliteProvider": {
+ "description": "Provider of satellite data. Available Value: Microsoft, SentinelHub (Sentinel Hub by Sinergise).",
+ "minLength": 1,
+ "enum": [
+ "Microsoft",
+ "SentinelHub"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DataProvider",
+ "modelAsString": true
+ }
+ },
+ "satelliteSource": {
+ "description": "Source of satellite data. Available Value: Sentinel_2_L2A.",
+ "minLength": 1,
+ "enum": [
+ "Sentinel_2_L2A",
+ "Sentinel_2_L1C"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Source",
+ "modelAsString": true
+ }
+ },
+ "imageResolution": {
+ "format": "double",
+ "description": "ImageResolution in meters. Available values: 10, 20, 60.",
+ "type": "number"
+ },
+ "imageFormat": {
+ "description": "ImageFormat. Available value: TIF.",
+ "minLength": 1,
+ "enum": [
+ "TIF"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ImageFormat",
+ "modelAsString": true
+ }
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "CascadeDeleteJob": {
+ "description": "Schema of cascade delete job.",
+ "required": [
+ "partyId",
+ "resourceId",
+ "resourceType"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "resourceId": {
+ "description": "The id of the resource.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "resourceType": {
+ "description": "The type of the resource.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "enum": [
+ "Waiting",
+ "Running",
+ "Succeeded",
+ "Failed",
+ "Cancelled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "JobStatus",
+ "modelAsString": true
+ }
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Crop": {
+ "description": "Schema of crop resource.",
+ "type": "object",
+ "properties": {
+ "phenotype": {
+ "description": "Crop phenotype.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "breedingMethod": {
+ "description": "Breeding Method.",
+ "enum": [
+ "VARIETY",
+ "HYBRID",
+ "UNKNOWN"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "BreedingMethod",
+ "modelAsString": true
+ }
+ },
+ "measurements": {
+ "description": "Measurements.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/Measure"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ]
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "CropListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Crop"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "CropProduct": {
+ "description": "Schema of crop product resource.",
+ "type": "object",
+ "properties": {
+ "cropIds": {
+ "description": "Ids of the crops it belongs to.\r\nNote: A maximum of 25 crops can be associated with a cropProduct.",
+ "uniqueItems": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "brand": {
+ "description": "CropProduct Brand.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "product": {
+ "description": "CropProduct product.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "trait": {
+ "description": "CropProduct trait.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "relativeMaturity": {
+ "$ref": "#/definitions/Measure"
+ },
+ "treatments": {
+ "description": "CropProduct treatments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "CropProductListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CropProduct"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "DataProvider": {
+ "description": "Provider of satellite data.",
+ "enum": [
+ "Microsoft"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DataProvider",
+ "modelAsString": true
+ }
+ },
+ "Device": {
+ "description": "Device API model.",
+ "type": "object",
+ "properties": {
+ "deviceDataModelId": {
+ "description": "Id of the associated device data model.",
+ "type": "string"
+ },
+ "integrationId": {
+ "description": "Integration id for the device.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of device.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "hardwareId": {
+ "description": "Device hardwareId.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "reportingIntervalInSeconds": {
+ "format": "int32",
+ "description": "Interval at which the device sends data in seconds.",
+ "type": "integer"
+ },
+ "parentDeviceId": {
+ "description": "Parent device Id for this device.",
+ "type": "string"
+ },
+ "location": {
+ "$ref": "#/definitions/Location"
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "DeviceDataModel": {
+ "description": "DeviceDataModel API model.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Type of device.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "manufacturer": {
+ "description": "Device manufacturer.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "productCode": {
+ "description": "Device productCode.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "ports": {
+ "description": "List of device ports supported.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Port"
+ }
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "DeviceDataModelListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DeviceDataModel"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "DeviceListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Device"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "Error": {
+ "description": "An error from the Azure AgPlatform service.",
+ "required": [
+ "code",
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Server-defined set of error codes.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "message": {
+ "description": "Human-readable representation of the error.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "target": {
+ "description": "Target of the error.",
+ "type": "string"
+ },
+ "details": {
+ "description": "Array of details about specific errors that led to this reported error.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "ErrorForLocation": {
+ "description": "Model for error information for a failed location.",
+ "type": "object",
+ "properties": {
+ "location": {
+ "$ref": "#/definitions/WeatherLocation"
+ },
+ "code": {
+ "format": "int32",
+ "description": "Status code returned by data provider.",
+ "type": "integer"
+ },
+ "description": {
+ "description": "Description of the error.",
+ "type": "string"
+ },
+ "retryable": {
+ "description": "Flag suggesting if retry attempt with same request body should be made to fetch required data.",
+ "type": "boolean"
+ }
+ }
+ },
+ "ErrorResponse": {
+ "description": "An error response from the Azure AgPlatform service. See https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses for ErrorResponse reference document.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "traceId": {
+ "description": "Unique trace Id.",
+ "type": "string"
+ }
+ }
+ },
+ "Farm": {
+ "description": "Schema of farm resource.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "FarmListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Farm"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "FarmOperationDataIngestionJob": {
+ "description": "Schema of farm operation data ingestion job.",
+ "required": [
+ "authProviderId",
+ "partyId",
+ "providerInput",
+ "startYear"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "authProviderId": {
+ "description": "Authentication provider Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "operations": {
+ "description": "List of operation types for which data needs to be downloaded. Available values: AllOperations, Application, Planting, Harvest, Tillage.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "startYear": {
+ "format": "int32",
+ "description": "Start Year (Minimum = 2000, Maximum = CurrentYear).",
+ "type": "integer"
+ },
+ "isIncremental": {
+ "description": "Use this to pull only the incremental changes from the last run.",
+ "default": false,
+ "type": "boolean"
+ },
+ "providerInput": {
+ "$ref": "#/definitions/FarmOperationJobProviderInput"
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "FarmOperationJobProviderInput": {
+ "description": "Schema for provider input for Farm operations job.",
+ "required": [
+ "shapeResolution",
+ "shapeType"
+ ],
+ "type": "object",
+ "properties": {
+ "shapeType": {
+ "description": "Type of shape file to be ingested from Operation Data Provider.",
+ "minLength": 1,
+ "enum": [
+ "Point",
+ "Polygon"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ShapeType",
+ "modelAsString": true
+ }
+ },
+ "shapeResolution": {
+ "description": "Resolution of shape file to be ingested from Operation Data Provider.",
+ "minLength": 1,
+ "enum": [
+ "EachSection",
+ "EachSensor",
+ "OneHertz"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ShapeResolution",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "Field": {
+ "description": "Schema of field resource.",
+ "type": "object",
+ "properties": {
+ "farmId": {
+ "description": "Id of the associated Farm.",
+ "type": "string"
+ },
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "FieldMetaData": {
+ "description": "Schema of field resource.",
+ "type": "object",
+ "properties": {
+ "farmId": {
+ "description": "Id of the associated Farm.",
+ "type": "string"
+ },
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "FieldMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FieldMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "GeoJsonObject": {
+ "description": "GeoJSON (For more details: https://geojson.org/). Note: Coordinates are expected in [Longitude, Latitude] format.",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/GeoJsonObjectType"
+ }
+ },
+ "discriminator": "type"
+ },
+ "GeoJsonObjectType": {
+ "description": "GeoJSON object type.",
+ "enum": [
+ "Point",
+ "Polygon",
+ "MultiPolygon"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "GeoJsonObjectType",
+ "modelAsString": true
+ }
+ },
+ "GeoResource": {
+ "description": "Schema for storing resource type and resource id.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Resource Type.",
+ "enum": [
+ "Field",
+ "SeasonalField",
+ "Zone",
+ "Prescription",
+ "PlantTissueAnalysis",
+ "PlantingData",
+ "ApplicationData",
+ "HarvestData",
+ "TillageData"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "FarmHierarchyGeoResourceType",
+ "modelAsString": true
+ }
+ },
+ "id": {
+ "description": "Resource Id.",
+ "type": "string"
+ }
+ }
+ },
+ "HarvestData": {
+ "description": "Schema of harvest data resource.",
+ "type": "object",
+ "properties": {
+ "totalYield": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgYield": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalWetMass": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgWetMass": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgMoisture": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgSpeed": {
+ "$ref": "#/definitions/Measure"
+ },
+ "harvestProductDetails": {
+ "description": "Harvest product details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HarvestProductDetail"
+ }
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "HarvestDataMetaData": {
+ "description": "Schema of harvest data resource.",
+ "type": "object",
+ "properties": {
+ "totalYield": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgYield": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalWetMass": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgWetMass": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgMoisture": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgSpeed": {
+ "$ref": "#/definitions/Measure"
+ },
+ "harvestProductDetails": {
+ "description": "Harvest product details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HarvestProductDetail"
+ }
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "HarvestDataMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HarvestDataMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "HarvestProductDetail": {
+ "description": "Schema of product used during harvesting.",
+ "type": "object",
+ "properties": {
+ "productName": {
+ "description": "Name of the product.",
+ "maxLength": 100,
+ "minLength": 1,
+ "type": "string"
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalYield": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgYield": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgMoisture": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalWetMass": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgWetMass": {
+ "$ref": "#/definitions/Measure"
+ }
+ }
+ },
+ "ImageFile": {
+ "description": "Schema of image file resource.",
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "fileLink": {
+ "description": "Link of the image file.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Name of the image file.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "imageFormat": {
+ "$ref": "#/definitions/ImageFormat"
+ },
+ "resolution": {
+ "format": "double",
+ "description": "Resolution of image file in meters.",
+ "type": "number"
+ }
+ }
+ },
+ "ImageFormat": {
+ "description": "Supported image formats for scene resource.",
+ "enum": [
+ "TIF"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ImageFormat",
+ "modelAsString": true
+ }
+ },
+ "ImageProcessingRasterizeJob": {
+ "description": "Image Processing Rasterize Job to convert shapefile into tiff file.",
+ "required": [
+ "partyId",
+ "shapefileAttachmentId",
+ "shapefileColumnNames"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "shapefileAttachmentId": {
+ "description": "Shapefile attachment Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "shapefileColumnNames": {
+ "description": "List of shapefile column names to create raster attachments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "InnerError": {
+ "description": "Inner error containing list of errors.See https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#innererror--object for InnerError reference document.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Specific error code than was provided by the containing error.",
+ "type": "string"
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "Insight": {
+ "description": "Schema of insight resource.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Id of the associated party.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modelId": {
+ "description": "Id of the associated model.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceType": {
+ "description": "Resource type associated with the record.",
+ "enum": [
+ "Party",
+ "Farm",
+ "Field",
+ "SeasonalField"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "FarmHierarchyResourceType",
+ "modelAsString": true
+ }
+ },
+ "resourceId": {
+ "description": "Id of the associated resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modelVersion": {
+ "description": "Version of the associated model.",
+ "type": "string"
+ },
+ "attachmentsLink": {
+ "description": "Gets link for attachments.",
+ "type": "string",
+ "readOnly": true
+ },
+ "insightStartDateTime": {
+ "format": "date-time",
+ "description": "Start date to which the insight is related.",
+ "type": "string"
+ },
+ "insightEndDateTime": {
+ "format": "date-time",
+ "description": "End date to which the insight is related.",
+ "type": "string"
+ },
+ "measurements": {
+ "description": "Measures to capture insights results.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/Measure"
+ }
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "InsightAttachment": {
+ "description": "Schema of insight attachment resource.",
+ "required": [
+ "insightId"
+ ],
+ "type": "object",
+ "properties": {
+ "insightId": {
+ "description": "InsightID for this InsightAttachment.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "modelId": {
+ "description": "ModelID for this InsightAttachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceType": {
+ "description": "Associated Resource type for this attachment.",
+ "enum": [
+ "Party",
+ "Farm",
+ "Field",
+ "SeasonalField"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "FarmHierarchyResourceType",
+ "modelAsString": true
+ }
+ },
+ "resourceId": {
+ "description": "Associated Resource id for this attachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "originalFileName": {
+ "description": "Original File Name for this attachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "partyId": {
+ "description": "PartyId id for this attachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date when resource was created.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date when resource was last modified.",
+ "type": "string",
+ "readOnly": true
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "InsightAttachmentListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InsightAttachment"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "InsightListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Insight"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "IoTHubDeviceAuthentication": {
+ "description": "Authentication via connection string to IoTHub devices.",
+ "type": "object",
+ "properties": {
+ "primaryDeviceConnectionString": {
+ "description": "Primary connection string of the ioTHub device.",
+ "type": "string",
+ "readOnly": true
+ },
+ "secondaryDeviceConnectionString": {
+ "description": "Secondary connection string of the ioTHub device.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "KeyVaultProperties": {
+ "description": "Properties of the key vault.",
+ "required": [
+ "keyName",
+ "keyVaultUri",
+ "keyVersion"
+ ],
+ "type": "object",
+ "properties": {
+ "keyVaultUri": {
+ "description": "Uri of the key vault.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "keyName": {
+ "description": "Name of Key Vault key.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "keyVersion": {
+ "description": "Version of Key Vault key.",
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "LabDetails": {
+ "description": "Model for representing LabDetails object.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Code of the resource.",
+ "maxLength": 150,
+ "minLength": 0,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "address": {
+ "description": "Address of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ }
+ }
+ },
+ "Location": {
+ "description": "Location model class.",
+ "required": [
+ "latitude",
+ "longitude"
+ ],
+ "type": "object",
+ "properties": {
+ "latitude": {
+ "format": "double",
+ "description": "Latitude of the location.",
+ "maximum": 90,
+ "minimum": -90,
+ "type": "number"
+ },
+ "longitude": {
+ "format": "double",
+ "description": "Longitude of the location.",
+ "maximum": 180,
+ "minimum": -180,
+ "type": "number"
+ }
+ }
+ },
+ "ManagementZone": {
+ "description": "Api Model for ManagementZone object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id associated with the ManagementZone.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Type of the ManagementZone.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "seasonId": {
+ "description": "Season Id associated with the ManagementZone.",
+ "type": "string"
+ },
+ "cropId": {
+ "description": "Crop Id associated with the ManagementZone.",
+ "type": "string"
+ },
+ "fieldId": {
+ "description": "Field Id associated with the ManagementZone.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "ManagementZoneListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagementZone"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "Measure": {
+ "description": "Schema for storing measurement reading and unit.",
+ "type": "object",
+ "properties": {
+ "unit": {
+ "description": "Data unit.",
+ "maxLength": 50,
+ "minLength": 1,
+ "type": "string"
+ },
+ "value": {
+ "format": "double",
+ "description": "Data value.",
+ "type": "number"
+ }
+ }
+ },
+ "Measures": {
+ "description": "Schema for storing measurement readings and unit.",
+ "type": "object",
+ "properties": {
+ "unit": {
+ "description": "Data unit.",
+ "maxLength": 50,
+ "minLength": 1,
+ "type": "string"
+ },
+ "values": {
+ "description": "Data values.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ },
+ "MultiPolygon": {
+ "description": "MultiPolygon geometry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ {
+ "required": [
+ "coordinates"
+ ],
+ "type": "object",
+ "properties": {
+ "coordinates": {
+ "description": "Gets or sets Coordinates of GeoJSON Object.\r\nIt must be an array of polygons, each polygon contains list of linear rings.\r\nFor Polygons with more than one of these rings, the first MUST be the exterior ring,\r\nand any others MUST be interior rings.",
+ "minItems": 1,
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "MultiPolygon"
+ },
+ "NutrientAnalysis": {
+ "description": "Api Model for nutrient analysis object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party id for this nutrient analysis.",
+ "type": "string",
+ "readOnly": true
+ },
+ "parentId": {
+ "description": "Parent id for this nutrient analysis.",
+ "type": "string"
+ },
+ "parentType": {
+ "description": "Parent type for this nutrient analysis.\r\ni.e. PlantTissueAnalysis.",
+ "enum": [
+ "PlantTissueAnalysis"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "NutrientAnalysisParentType",
+ "modelAsString": true
+ }
+ },
+ "unit": {
+ "description": "Unit for this nutrient analysis.",
+ "maxLength": 32,
+ "minLength": 0,
+ "type": "string"
+ },
+ "value": {
+ "format": "double",
+ "description": "Value for this nutrient analysis.",
+ "type": "number"
+ },
+ "referenceValueLow": {
+ "format": "double",
+ "description": "Reference value low for this nutrient analysis.",
+ "type": "number"
+ },
+ "referenceValueHigh": {
+ "format": "double",
+ "description": "Reference value high for this nutrient analysis.",
+ "type": "number"
+ },
+ "classification": {
+ "description": "Classification for this nutrient analysis.",
+ "maxLength": 50,
+ "minLength": 0,
+ "type": "string"
+ },
+ "recommendation": {
+ "description": "Recommendation for this nutrient analysis.",
+ "maxLength": 1000,
+ "minLength": 0,
+ "type": "string"
+ },
+ "products": {
+ "description": "Products for this nutrient analysis.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProductDetails"
+ }
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "NutrientAnalysisListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NutrientAnalysis"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "OAuthClientCredentials": {
+ "description": "OAuthClientCredentials for clientId clientSecret auth.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AuthCredentials"
+ },
+ {
+ "required": [
+ "clientId",
+ "clientSecret"
+ ],
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "ClientId associated with the provider.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "clientSecret": {
+ "$ref": "#/definitions/KeyVaultProperties"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "OAuthClientCredentials"
+ },
+ "OAuthConnectRequest": {
+ "description": "Get OAuth config query parameters.",
+ "required": [
+ "oAuthProviderId",
+ "partyId",
+ "userRedirectLink"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Id of the party.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "oAuthProviderId": {
+ "description": "Id of the OAuthProvider.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "userRedirectLink": {
+ "description": "Link to redirect the user to, at the end of the oauth flow.",
+ "maxLength": 1000,
+ "minLength": 0,
+ "type": "string"
+ },
+ "userRedirectState": {
+ "description": "State to provide back when redirecting the user, at the end of the oauth flow.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ }
+ }
+ },
+ "OAuthProvider": {
+ "description": "Schema of OAuth provider resource.",
+ "type": "object",
+ "properties": {
+ "appId": {
+ "description": "OAuth App Id for given OAuth Provider.",
+ "maxLength": 200,
+ "minLength": 2,
+ "type": "string"
+ },
+ "appSecret": {
+ "description": "OAuth App secret for given Provider.\r\nNote: Won't be sent in response.",
+ "maxLength": 200,
+ "minLength": 2,
+ "type": "string"
+ },
+ "apiKey": {
+ "description": "OAuth Api key for given Provider.\r\nNote: currently Applicable to Climate provider. Won't be sent in response.",
+ "maxLength": 200,
+ "minLength": 2,
+ "type": "string"
+ },
+ "isProductionApp": {
+ "description": "An optional flag to determine if the App is ready to be used for Production scenarios in the provider side or not. (Default value: false)",
+ "default": false,
+ "type": "boolean"
+ },
+ "id": {
+ "description": "Unique OAuth provider ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "OAuthProviderCascadeDeleteJob": {
+ "description": "Schema of oauth provider cascade delete job.",
+ "required": [
+ "oauthProviderId"
+ ],
+ "type": "object",
+ "properties": {
+ "oauthProviderId": {
+ "description": "The id of the oauth provider.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "OAuthProviderListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OAuthProvider"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "OAuthToken": {
+ "description": "Schema of OAuth token resource.",
+ "required": [
+ "authProviderId",
+ "partyId"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party ID for this OAuth config.",
+ "type": "string"
+ },
+ "authProviderId": {
+ "description": "ID of the OAuth provider resource containing app information.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "isValid": {
+ "description": "An optional flag indicating whether the token is a valid or expired (Default value: true).",
+ "default": true,
+ "type": "boolean"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ }
+ }
+ },
+ "OAuthTokenListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OAuthToken"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "OverlapResource": {
+ "description": "Schema of overlap resource.",
+ "required": [
+ "partyId",
+ "resourceId",
+ "resourceType"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id of the resource.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "resourceType": {
+ "description": "Resource type of the resource.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "resourceId": {
+ "description": "Id of the resource.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "resourceArea": {
+ "format": "double",
+ "description": "Acreage of the resource.",
+ "type": "number",
+ "readOnly": true
+ }
+ }
+ },
+ "OverlapResourcesQuery": {
+ "description": "Overlap Resource Query Parameters.",
+ "type": "object",
+ "properties": {
+ "resources": {
+ "description": "List of resources.",
+ "maxItems": 2,
+ "minItems": 2,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OverlapResource"
+ }
+ }
+ }
+ },
+ "Party": {
+ "description": "Schema of party resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PartyListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Party"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "PartyOverlapResponse": {
+ "description": "Schema of Party Overlap Response.",
+ "type": "object",
+ "properties": {
+ "resources": {
+ "description": "Resources with area.",
+ "maxItems": 2,
+ "minItems": 2,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OverlapResource"
+ }
+ },
+ "overlappingArea": {
+ "format": "double",
+ "description": "Acreage of overlapping area.",
+ "type": "number"
+ }
+ }
+ },
+ "PlantTissueAnalysis": {
+ "description": "Api Model for plant tissue analysis object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Id of the associated Party.",
+ "type": "string",
+ "readOnly": true
+ },
+ "fieldId": {
+ "description": "Id of the associated Field.",
+ "type": "string"
+ },
+ "cropId": {
+ "description": "Id of the associated Crop.",
+ "type": "string"
+ },
+ "cropProductId": {
+ "description": "Id of the associated Crop product.",
+ "type": "string"
+ },
+ "seasonId": {
+ "description": "Id of the associated Season.",
+ "type": "string"
+ },
+ "plantingDateTime": {
+ "format": "date-time",
+ "description": "Planting datetime for this plant tissue analysis.",
+ "type": "string"
+ },
+ "growthStage": {
+ "description": "Growth stage for this plant tissue analysis.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ },
+ "plantPart": {
+ "description": "Plant part for this plant tissue analysis.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ },
+ "plantPosition": {
+ "description": "Plant position for this plant tissue analysis.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ },
+ "plantAppearance": {
+ "description": "Plant appearance for this plant tissue analysis.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "sampleCollectionCondition": {
+ "description": "Sample collection condition for this plant tissue analysis.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "sampleCollectionDateTime": {
+ "format": "date-time",
+ "description": "Sample collection dateTime for this plant tissue analysis.",
+ "type": "string"
+ },
+ "sampleReceivedDateTime": {
+ "format": "date-time",
+ "description": "Sample received dateTime.",
+ "type": "string"
+ },
+ "sampleTestResultDateTime": {
+ "format": "date-time",
+ "description": "Sample test result dateTime for this plant tissue analysis.",
+ "type": "string"
+ },
+ "labDetails": {
+ "$ref": "#/definitions/LabDetails"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PlantTissueAnalysisMetaData": {
+ "description": "Api Model for plant tissue analysis object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Id of the associated Party.",
+ "type": "string",
+ "readOnly": true
+ },
+ "fieldId": {
+ "description": "Id of the associated Field.",
+ "type": "string"
+ },
+ "cropId": {
+ "description": "Id of the associated Crop.",
+ "type": "string"
+ },
+ "cropProductId": {
+ "description": "Id of the associated Crop product.",
+ "type": "string"
+ },
+ "seasonId": {
+ "description": "Id of the associated Season.",
+ "type": "string"
+ },
+ "plantingDateTime": {
+ "format": "date-time",
+ "description": "Planting datetime for this plant tissue analysis.",
+ "type": "string"
+ },
+ "growthStage": {
+ "description": "Growth stage for this plant tissue analysis.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ },
+ "plantPart": {
+ "description": "Plant part for this plant tissue analysis.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ },
+ "plantPosition": {
+ "description": "Plant position for this plant tissue analysis.",
+ "maxLength": 200,
+ "minLength": 0,
+ "type": "string"
+ },
+ "plantAppearance": {
+ "description": "Plant appearance for this plant tissue analysis.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "sampleCollectionCondition": {
+ "description": "Sample collection condition for this plant tissue analysis.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "sampleCollectionDateTime": {
+ "format": "date-time",
+ "description": "Sample collection dateTime for this plant tissue analysis.",
+ "type": "string"
+ },
+ "sampleReceivedDateTime": {
+ "format": "date-time",
+ "description": "Sample received dateTime.",
+ "type": "string"
+ },
+ "sampleTestResultDateTime": {
+ "format": "date-time",
+ "description": "Sample test result dateTime for this plant tissue analysis.",
+ "type": "string"
+ },
+ "labDetails": {
+ "$ref": "#/definitions/LabDetails"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PlantTissueAnalysisMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PlantTissueAnalysisMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "PlantingData": {
+ "description": "Schema of planting data resource.",
+ "type": "object",
+ "properties": {
+ "avgPlantingRate": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "plantingProductDetails": {
+ "description": "Planting product details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PlantingProductDetail"
+ }
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PlantingDataMetaData": {
+ "description": "Schema of planting data resource.",
+ "type": "object",
+ "properties": {
+ "avgPlantingRate": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "plantingProductDetails": {
+ "description": "Planting product details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PlantingProductDetail"
+ }
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PlantingDataMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PlantingDataMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "PlantingProductDetail": {
+ "description": "Schema for Planting product detail.",
+ "type": "object",
+ "properties": {
+ "productName": {
+ "description": "Name of the product.",
+ "type": "string"
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "totalMaterial": {
+ "$ref": "#/definitions/Measure"
+ },
+ "avgMaterial": {
+ "$ref": "#/definitions/Measure"
+ }
+ }
+ },
+ "Point": {
+ "description": "Point geometry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ {
+ "required": [
+ "coordinates"
+ ],
+ "type": "object",
+ "properties": {
+ "coordinates": {
+ "description": "Gets or sets the coordinate of this point.\r\nIt must be an array of 2 or 3 elements for a 2D or 3D system.",
+ "maximum": 3,
+ "minimum": 2,
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "Point"
+ },
+ "Polygon": {
+ "description": "Polygon geometry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ {
+ "required": [
+ "coordinates"
+ ],
+ "type": "object",
+ "properties": {
+ "coordinates": {
+ "description": "Gets or sets type of the GeoJSON Object.\r\nIt must be an array of linear ring coordinate arrays.\r\nFor Polygons with more than one of these rings, the first MUST be the exterior ring,\r\nand any others MUST be interior rings.",
+ "minItems": 1,
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "Polygon"
+ },
+ "Port": {
+ "description": "Schema for storing port values.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the port.",
+ "maxLength": 50,
+ "minLength": 1,
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of port digital/analog.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ }
+ }
+ },
+ "Prescription": {
+ "description": "Api Model for Prescription object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "prescriptionMapId": {
+ "description": "Prescription map Id.",
+ "type": "string"
+ },
+ "productCode": {
+ "description": "Product Code.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "productName": {
+ "description": "Product name.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "type": {
+ "description": "Prescription type.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "measurements": {
+ "description": "Measures.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/Measure"
+ }
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PrescriptionMap": {
+ "description": "Api Model for Prescription Map object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Prescription map type.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "seasonId": {
+ "description": "Season Id.",
+ "type": "string"
+ },
+ "cropId": {
+ "description": "Crop Id.",
+ "type": "string"
+ },
+ "fieldId": {
+ "description": "Field Id.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PrescriptionMapListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrescriptionMap"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "PrescriptionMetaData": {
+ "description": "Api Model for Prescription object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "prescriptionMapId": {
+ "description": "Prescription map Id.",
+ "type": "string"
+ },
+ "productCode": {
+ "description": "Product Code.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "productName": {
+ "description": "Product name.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "type": {
+ "description": "Prescription type.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "measurements": {
+ "description": "Measures.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/Measure"
+ }
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "PrescriptionMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrescriptionMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "ProductDetails": {
+ "description": "Model for representing ProductDetails object.",
+ "type": "object",
+ "properties": {
+ "rate": {
+ "description": "Rate of the product.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "instruction": {
+ "description": "Instruction of the resource.",
+ "maxLength": 1000,
+ "minLength": 0,
+ "type": "string"
+ },
+ "product": {
+ "description": "Product of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ }
+ }
+ },
+ "SatelliteData": {
+ "description": "Data Model for SatelliteIngestionJobRequest.",
+ "type": "object",
+ "properties": {
+ "imageNames": {
+ "description": "List of ImageNames.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "NDVI"
+ ]
+ },
+ "imageFormats": {
+ "description": "List of ImageFormats. Available value: TIF.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "TIF"
+ ]
+ },
+ "imageResolutions": {
+ "description": "List of ImageResolutions in meters. Available values: 10, 20, 60.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ },
+ "example": [
+ 10
+ ]
+ }
+ }
+ },
+ "SatelliteDataIngestionJob": {
+ "description": "Schema of satellite data ingestion job.",
+ "required": [
+ "associatedResource",
+ "endDateTime",
+ "partyId",
+ "provider",
+ "source",
+ "startDateTime"
+ ],
+ "type": "object",
+ "properties": {
+ "credentials": {
+ "$ref": "#/definitions/OAuthClientCredentials"
+ },
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "startDateTime": {
+ "format": "date-time",
+ "description": "Start Date.",
+ "type": "string"
+ },
+ "endDateTime": {
+ "format": "date-time",
+ "description": "End Date.",
+ "type": "string"
+ },
+ "provider": {
+ "$ref": "#/definitions/DataProvider"
+ },
+ "source": {
+ "$ref": "#/definitions/Source"
+ },
+ "data": {
+ "$ref": "#/definitions/SatelliteData"
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object"
+ }
+ }
+ },
+ "Scene": {
+ "description": "Schema of scene resource.",
+ "type": "object",
+ "properties": {
+ "sceneDateTime": {
+ "format": "date-time",
+ "description": "Date-time of the scene, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string"
+ },
+ "provider": {
+ "description": "Data provider of the scene.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "source": {
+ "description": "Data source of the scene.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "imageFiles": {
+ "description": "Collection of image files.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImageFile"
+ }
+ },
+ "imageFormat": {
+ "$ref": "#/definitions/ImageFormat"
+ },
+ "cloudCoverPercentage": {
+ "format": "double",
+ "description": "Cloud cover percentage of the scene.",
+ "maximum": 100,
+ "minimum": 0,
+ "type": "number"
+ },
+ "darkPixelPercentage": {
+ "format": "double",
+ "description": "Dark pixel percentage of the scene.",
+ "maximum": 100,
+ "minimum": 0,
+ "type": "number"
+ },
+ "ndviMedianValue": {
+ "format": "double",
+ "description": "Median of NDVI of the scene.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the scene.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique scene resource ID.",
+ "type": "string"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ }
+ }
+ },
+ "SceneListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Scene"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchApplicationDataQuery": {
+ "description": "SearchApplicationDataQuery.",
+ "type": "object",
+ "properties": {
+ "minAvgMaterial": {
+ "format": "double",
+ "description": "Minimum average amount of material applied during the application (inclusive).",
+ "type": "number"
+ },
+ "maxAvgMaterial": {
+ "format": "double",
+ "description": "Maximum average amount of material applied during the application (inclusive).",
+ "type": "number"
+ },
+ "minTotalMaterial": {
+ "format": "double",
+ "description": "Minimum total amount of material applied during the application (inclusive).",
+ "type": "number"
+ },
+ "maxTotalMaterial": {
+ "format": "double",
+ "description": "Maximum total amount of material applied during the application (inclusive).",
+ "type": "number"
+ },
+ "associatedResourceIds": {
+ "description": "Resource Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "associatedResourceType": {
+ "description": "Resource Types of the resource.\r\ni.e. Farmer, Farm, Field, SeasonalField, ApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "string"
+ },
+ "minOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "sources": {
+ "description": "Sources of the operation data.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minArea": {
+ "format": "double",
+ "description": "Minimum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "maxArea": {
+ "format": "double",
+ "description": "Maximum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchFeaturesQuery": {
+ "description": "Search stac Features parameters.",
+ "required": [
+ "endDateTime",
+ "startDateTime"
+ ],
+ "type": "object",
+ "properties": {
+ "credentials": {
+ "$ref": "#/definitions/OAuthClientCredentials"
+ },
+ "startDateTime": {
+ "format": "date-time",
+ "description": "Start datetime of the time interval in which to search for Features.",
+ "type": "string"
+ },
+ "endDateTime": {
+ "format": "date-time",
+ "description": "End datetime of the time interval in which to search for Features.",
+ "type": "string"
+ },
+ "intersects": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "bbox": {
+ "description": "Only features that have a geometry that intersects the bounding box are selected.\r\nThe bounding box is provided as four numbers. The coordinate reference system of the values is WGS84 longitude/latitude.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "featureIds": {
+ "description": "Array of feature ids to return.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "SearchFeaturesResponse": {
+ "description": "Paged response contains list of features and next property to get the next set of results.",
+ "required": [
+ "features"
+ ],
+ "type": "object",
+ "properties": {
+ "features": {
+ "description": "List of features.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StacFeature"
+ }
+ },
+ "nextLink": {
+ "description": "URL to do the POST request with same filters,\r\nto get next set of features.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SearchFieldQuery": {
+ "description": "SearchAllBoundaries and SearchBoundaries parameters.",
+ "type": "object",
+ "properties": {
+ "farmIds": {
+ "description": "FarmIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ }
+ }
+ },
+ "SearchHarvestDataQuery": {
+ "description": "SearchHarvestDataQuery.",
+ "type": "object",
+ "properties": {
+ "minTotalYield": {
+ "format": "double",
+ "description": "Minimum Yield value(inclusive).",
+ "type": "number"
+ },
+ "maxTotalYield": {
+ "format": "double",
+ "description": "Maximum Yield value (inclusive).",
+ "type": "number"
+ },
+ "minAvgYield": {
+ "format": "double",
+ "description": "Minimum AvgYield value(inclusive).",
+ "type": "number"
+ },
+ "maxAvgYield": {
+ "format": "double",
+ "description": "Maximum AvgYield value (inclusive).",
+ "type": "number"
+ },
+ "minTotalWetMass": {
+ "format": "double",
+ "description": "Minimum Total WetMass value(inclusive).",
+ "type": "number"
+ },
+ "maxTotalWetMass": {
+ "format": "double",
+ "description": "Maximum Total WetMass value (inclusive).",
+ "type": "number"
+ },
+ "minAvgWetMass": {
+ "format": "double",
+ "description": "Minimum AvgWetMass value(inclusive).",
+ "type": "number"
+ },
+ "maxAvgWetMass": {
+ "format": "double",
+ "description": "Maximum AvgWetMass value (inclusive).",
+ "type": "number"
+ },
+ "minAvgMoisture": {
+ "format": "double",
+ "description": "Minimum AvgMoisture value(inclusive).",
+ "type": "number"
+ },
+ "maxAvgMoisture": {
+ "format": "double",
+ "description": "Maximum AvgMoisture value (inclusive).",
+ "type": "number"
+ },
+ "minAvgSpeed": {
+ "format": "double",
+ "description": "Minimum AvgSpeed value(inclusive).",
+ "type": "number"
+ },
+ "maxAvgSpeed": {
+ "format": "double",
+ "description": "Maximum AvgSpeed value (inclusive).",
+ "type": "number"
+ },
+ "associatedResourceIds": {
+ "description": "Resource Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "associatedResourceType": {
+ "description": "Resource Types of the resource.\r\ni.e. Farmer, Farm, Field, SeasonalField, ApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "string"
+ },
+ "minOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "sources": {
+ "description": "Sources of the operation data.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minArea": {
+ "format": "double",
+ "description": "Minimum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "maxArea": {
+ "format": "double",
+ "description": "Maximum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchPlantTissueAnalysisQuery": {
+ "description": "Search All PlantTissueAnalysis and Search PlantTissueAnalyses parameters.",
+ "type": "object",
+ "properties": {
+ "fieldIds": {
+ "description": "Field Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "seasonIds": {
+ "description": "Season Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cropProductIds": {
+ "description": "CropVariety Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cropIds": {
+ "description": "CropIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchPlantingDataQuery": {
+ "description": "SearchPlantingDataQuery.",
+ "type": "object",
+ "properties": {
+ "minAvgPlantingRate": {
+ "format": "double",
+ "description": "Minimum AvgPlantingRate value(inclusive).",
+ "type": "number"
+ },
+ "maxAvgPlantingRate": {
+ "format": "double",
+ "description": "Maximum AvgPlantingRate value (inclusive).",
+ "type": "number"
+ },
+ "minTotalMaterial": {
+ "format": "double",
+ "description": "Minimum TotalMaterial value(inclusive).",
+ "type": "number"
+ },
+ "maxTotalMaterial": {
+ "format": "double",
+ "description": "Maximum TotalMaterial value (inclusive).",
+ "type": "number"
+ },
+ "minAvgMaterial": {
+ "format": "double",
+ "description": "Minimum AvgMaterial value(inclusive).",
+ "type": "number"
+ },
+ "maxAvgMaterial": {
+ "format": "double",
+ "description": "Maximum AvgMaterial value (inclusive).",
+ "type": "number"
+ },
+ "associatedResourceIds": {
+ "description": "Resource Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "associatedResourceType": {
+ "description": "Resource Types of the resource.\r\ni.e. Farmer, Farm, Field, SeasonalField, ApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "string"
+ },
+ "minOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "sources": {
+ "description": "Sources of the operation data.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minArea": {
+ "format": "double",
+ "description": "Minimum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "maxArea": {
+ "format": "double",
+ "description": "Maximum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchPrescriptionQuery": {
+ "description": "Get Zones query parameters.",
+ "type": "object",
+ "properties": {
+ "prescriptionMapIds": {
+ "description": "Prescription Map Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "types": {
+ "description": "Types of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "productCodes": {
+ "description": "Product Codes of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "productNames": {
+ "description": "Product Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "sources": {
+ "description": "Sources of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchSeasonalFieldQuery": {
+ "description": "SearchAllBoundaries and SearchBoundaries parameters.",
+ "type": "object",
+ "properties": {
+ "farmIds": {
+ "description": "FarmIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "fieldIds": {
+ "description": "FieldIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "seasonIds": {
+ "description": "SeasonIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cropProductIds": {
+ "description": "CropProductIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cropIds": {
+ "description": "CropIds of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchTillageDataQuery": {
+ "description": "SearchTillageDataQuery.",
+ "type": "object",
+ "properties": {
+ "minTillageDepth": {
+ "format": "double",
+ "description": "Minimum measured tillage depth (inclusive).",
+ "type": "number"
+ },
+ "maxTillageDepth": {
+ "format": "double",
+ "description": "Maximum measured tillage depth (inclusive).",
+ "type": "number"
+ },
+ "minTillagePressure": {
+ "format": "double",
+ "description": "Minimum pressure applied to a tillage implement (inclusive).",
+ "type": "number"
+ },
+ "maxTillagePressure": {
+ "format": "double",
+ "description": "Maximum pressure applied to a tillage implement (inclusive).",
+ "type": "number"
+ },
+ "associatedResourceIds": {
+ "description": "Resource Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "associatedResourceType": {
+ "description": "Resource Types of the resource.\r\ni.e. Farmer, Farm, Field, SeasonalField, ApplicationData, HarvestData, TillageData, PlantingData, PlantTissueAnalysis.",
+ "type": "string"
+ },
+ "minOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Minimum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationStartDateTime": {
+ "format": "date-time",
+ "description": "Maximum start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Minimum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationEndDateTime": {
+ "format": "date-time",
+ "description": "Maximum end date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "minOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "maxOperationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ (inclusive).",
+ "type": "string"
+ },
+ "sources": {
+ "description": "Sources of the operation data.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minArea": {
+ "format": "double",
+ "description": "Minimum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "maxArea": {
+ "format": "double",
+ "description": "Maximum acreage of the boundary (inclusive).",
+ "type": "number"
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "SearchZoneQuery": {
+ "description": "Get Zones query parameters.",
+ "type": "object",
+ "properties": {
+ "types": {
+ "description": "Types of the Zones.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "managementZoneIds": {
+ "description": "ManagementZoneIds of the Zones.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "sources": {
+ "description": "Sources of the Zones.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "ids": {
+ "description": "Ids of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "names": {
+ "description": "Names of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "propertyFilters": {
+ "description": "Filters on key-value pairs within the Properties object.\r\ne.g. \"{testKey} eq {testValue}\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "Statuses of the resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "minCreatedDateTime": {
+ "format": "date-time",
+ "description": "Minimum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxCreatedDateTime": {
+ "format": "date-time",
+ "description": "Maximum creation date of resource (inclusive).",
+ "type": "string"
+ },
+ "minLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Minimum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "maxLastModifiedDateTime": {
+ "format": "date-time",
+ "description": "Maximum last modified date of resource (inclusive).",
+ "type": "string"
+ },
+ "intersectsWithGeometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string"
+ }
+ }
+ },
+ "Season": {
+ "description": "Schema of season resource.",
+ "type": "object",
+ "properties": {
+ "startDateTime": {
+ "format": "date-time",
+ "description": "Season start datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string"
+ },
+ "endDateTime": {
+ "format": "date-time",
+ "description": "Season end datetime, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string"
+ },
+ "year": {
+ "format": "int32",
+ "description": "Season year.",
+ "type": "integer"
+ },
+ "geographicIdentifier": {
+ "description": "Geographic Identifier.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SeasonListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Season"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SeasonalField": {
+ "description": "Schema of seasonal field resource.",
+ "required": [
+ "farmId"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "farmId": {
+ "description": "Id of the associated Farm.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "fieldId": {
+ "description": "Id of the associated Field.",
+ "type": "string"
+ },
+ "seasonId": {
+ "description": "Id of the season it belongs to.",
+ "type": "string"
+ },
+ "cropProductIds": {
+ "description": "CropProduct ids.",
+ "uniqueItems": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cropId": {
+ "description": "Id of the crop it belongs to.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SeasonalFieldMetaData": {
+ "description": "Schema of seasonal field resource.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "farmId": {
+ "description": "Id of the associated Farm.",
+ "type": "string"
+ },
+ "fieldId": {
+ "description": "Id of the associated Field.",
+ "type": "string"
+ },
+ "seasonId": {
+ "description": "Id of the season it belongs to.",
+ "type": "string"
+ },
+ "cropProductIds": {
+ "description": "CropProduct ids.",
+ "uniqueItems": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cropId": {
+ "description": "Id of the crop it belongs to.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SeasonalFieldMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SeasonalFieldMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "Sensor": {
+ "description": "Sensor API model.",
+ "type": "object",
+ "properties": {
+ "sensorDataModelId": {
+ "description": "Id of the associated sensor data model.",
+ "type": "string"
+ },
+ "integrationId": {
+ "description": "Integration id for the device.",
+ "type": "string"
+ },
+ "hardwareId": {
+ "description": "Id of the associated hardware.",
+ "type": "string"
+ },
+ "deviceId": {
+ "description": "Id of the associated device.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of sensor.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "location": {
+ "$ref": "#/definitions/Location"
+ },
+ "port": {
+ "$ref": "#/definitions/Port"
+ },
+ "depthInMeters": {
+ "description": "Depth of each sensor measure in meters.\r\nLike sensor moisture at 2m, 4m, 6m.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SensorDataModel": {
+ "description": "SensorModel API model.",
+ "required": [
+ "measures"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Type of sensor.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "manufacturer": {
+ "description": "Sensor manufacturer.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "productCode": {
+ "description": "Sensor productCode.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "measures": {
+ "description": "Map of sensor type to sensor measures.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/SensorDataModelMeasure"
+ }
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SensorDataModelListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SensorDataModel"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SensorDataModelMeasure": {
+ "description": "Sensor model measure details.",
+ "required": [
+ "dataType"
+ ],
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "Description of sensor measure.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "dataType": {
+ "description": "Sensor measure data type.",
+ "maxLength": 100,
+ "minLength": 2,
+ "enum": [
+ "Bool",
+ "Double",
+ "DateTime",
+ "Long",
+ "String"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "SensorDataType",
+ "modelAsString": true
+ }
+ },
+ "type": {
+ "description": "Measurement type of sensor data.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "unit": {
+ "description": "Unit of sensor measure.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "properties": {
+ "description": "A collection of key value pairs for sensor data model.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a model and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ]
+ }
+ }
+ },
+ "SensorEvent": {
+ "description": "Sensor event response model.",
+ "type": "object",
+ "properties": {
+ "sensorId": {
+ "description": "Id of the sensor.",
+ "type": "string"
+ },
+ "sensorPartnerId": {
+ "description": "Id of the sensor partner.",
+ "type": "string"
+ },
+ "partyId": {
+ "description": "Id of the associated party.",
+ "type": "string"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "eventDateTime": {
+ "format": "date-time",
+ "description": "DateTime of sensor event observation.",
+ "type": "string"
+ },
+ "ingestionDateTime": {
+ "format": "date-time",
+ "description": "DateTime of sensor event ingestion to data store.",
+ "type": "string"
+ },
+ "measures": {
+ "description": "Sensor measures.",
+ "type": "object",
+ "additionalProperties": {}
+ }
+ }
+ },
+ "SensorEventListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SensorEvent"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SensorListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Sensor"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SensorMapping": {
+ "description": "SensorMapping API model.",
+ "required": [
+ "associatedResource"
+ ],
+ "type": "object",
+ "properties": {
+ "sensorId": {
+ "description": "Id of the associated sensor.",
+ "type": "string"
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string"
+ },
+ "partyId": {
+ "description": "Id of the associated party.",
+ "type": "string"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SensorMappingListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SensorMapping"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SensorPartnerIntegrationCheckConsentResponse": {
+ "description": "Sensor partner integration check consent response.",
+ "type": "object",
+ "properties": {
+ "consented": {
+ "description": "Flag to determine the status of partner integration consent.",
+ "type": "boolean"
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string",
+ "readOnly": true
+ },
+ "integrationId": {
+ "description": "Id of the integration.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SensorPartnerIntegrationGenerateConsentLinkResponse": {
+ "description": "Sensor partner integration generate consent link response.",
+ "type": "object",
+ "properties": {
+ "consentLink": {
+ "description": "Consent link.",
+ "type": "string",
+ "readOnly": true
+ },
+ "consentExpiryDateTime": {
+ "format": "date-time",
+ "description": "Consent expiry date time, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string"
+ }
+ }
+ },
+ "SensorPartnerIntegrationModel": {
+ "description": "Sensor partner integration model.",
+ "type": "object",
+ "properties": {
+ "integrationId": {
+ "description": "Id of the integration.",
+ "type": "string",
+ "readOnly": true
+ },
+ "partyId": {
+ "description": "Id of the party.",
+ "type": "string"
+ },
+ "sensorPartnerId": {
+ "description": "Id of the associated sensor partner.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and\r\nonly string, numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SensorPartnerIntegrationModelListResponse": {
+ "description": "Paged response contains list of requested objects and a URL link to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SensorPartnerIntegrationModel"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "nextLink": {
+ "description": "Continuation link (absolute URI) to the next page of results in the list.",
+ "type": "string"
+ }
+ }
+ },
+ "SensorPlacementModelJob": {
+ "description": "Schema of sensor placement model job.",
+ "required": [
+ "associatedResource",
+ "inferenceEndDateTime",
+ "inferenceStartDateTime",
+ "isRanked",
+ "modelVersion",
+ "partyId",
+ "satelliteProvider",
+ "satelliteSource",
+ "sensorType"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "modelVersion": {
+ "description": "The version of the sensor placement model to be run.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "inferenceStartDateTime": {
+ "format": "date-time",
+ "description": "Start datetime for satellite data to be pulled.",
+ "type": "string"
+ },
+ "inferenceEndDateTime": {
+ "format": "date-time",
+ "description": "End datetime for satellite data to be pulled.",
+ "type": "string"
+ },
+ "satelliteProvider": {
+ "description": "Provider of satellite data. Available Value: Microsoft, SentinelHub (Sentinel Hub by Sinergise).",
+ "minLength": 1,
+ "enum": [
+ "Microsoft",
+ "SentinelHub"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DataProvider",
+ "modelAsString": true
+ }
+ },
+ "satelliteSource": {
+ "description": "Source of satellite data. Available Value: Sentinel_2_L2A.",
+ "minLength": 1,
+ "enum": [
+ "Sentinel_2_L2A",
+ "Sentinel_2_L1C"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Source",
+ "modelAsString": true
+ }
+ },
+ "sensorType": {
+ "description": "SensorType. The sensor placement map generated for sensor type (e.g., soil moisture, soil temperature, npk). Available Value: SoilMoisture.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "isRanked": {
+ "description": "IsRanked, if True the sensor placements will be ranked.",
+ "type": "boolean"
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SensorRenewConnectionStringModel": {
+ "description": "Model for renewing sensor's connection string.",
+ "required": [
+ "connectionStringType"
+ ],
+ "type": "object",
+ "properties": {
+ "connectionStringType": {
+ "description": "Specifies the type of connection string key to be renewed valid values - Primary/Secondary/Both.",
+ "maxLength": 100,
+ "minLength": 0,
+ "enum": [
+ "Primary",
+ "Secondary",
+ "Both"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RenewConnectionStringType",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "SoilMoistureModelJob": {
+ "description": "Schema of soil moisture model job.",
+ "required": [
+ "associatedResource",
+ "imageFormat",
+ "imageResolution",
+ "inferenceEndDateTime",
+ "inferenceStartDateTime",
+ "modelVersion",
+ "partyId",
+ "satelliteProvider",
+ "satelliteSource",
+ "sensorDataModelId",
+ "sensorDefinition",
+ "sensorPartnerId"
+ ],
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "sensorDataModelId": {
+ "description": "Sensor data model Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "sensorPartnerId": {
+ "description": "Sensor partner Id.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "inferenceStartDateTime": {
+ "format": "date-time",
+ "description": "Inference start date time for soil moisture calculations.",
+ "type": "string"
+ },
+ "inferenceEndDateTime": {
+ "format": "date-time",
+ "description": "Inference end date time for soil moisture calculations.",
+ "type": "string"
+ },
+ "satelliteProvider": {
+ "description": "Provider of satellite data. Available Value: Microsoft, SentinelHub (Sentinel Hub by Sinergise).",
+ "minLength": 1,
+ "enum": [
+ "Microsoft",
+ "SentinelHub"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DataProvider",
+ "modelAsString": true
+ }
+ },
+ "satelliteSource": {
+ "description": "Source of satellite data. Available Value: Sentinel_2_L2A.",
+ "minLength": 1,
+ "enum": [
+ "Sentinel_2_L2A",
+ "Sentinel_2_L1C"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Source",
+ "modelAsString": true
+ }
+ },
+ "imageResolution": {
+ "format": "double",
+ "description": "ImageResolution in meters. Available values: 10, 20, 60.",
+ "type": "number"
+ },
+ "imageFormat": {
+ "description": "ImageFormat. Available value: TIF.",
+ "minLength": 1,
+ "enum": [
+ "TIF"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ImageFormat",
+ "modelAsString": true
+ }
+ },
+ "modelVersion": {
+ "description": "The version of the soil moisture model to be run.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "sensorDefinition": {
+ "$ref": "#/definitions/SoilMoistureModelSensorDefinition"
+ },
+ "id": {
+ "description": "Unique job id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the job.\r\nPossible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.",
+ "type": "string",
+ "readOnly": true
+ },
+ "durationInSeconds": {
+ "format": "double",
+ "description": "Duration of the job in seconds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Status message to capture more details of the job.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorCode": {
+ "description": "Error Code when job failed.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActionDateTime": {
+ "format": "date-time",
+ "description": "Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "endTime": {
+ "format": "date-time",
+ "description": "Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "SoilMoistureModelSensorDefinition": {
+ "description": "Schema for storing sensor definition keywords.",
+ "required": [
+ "maxProperty",
+ "minProperty",
+ "sensorMeasurement"
+ ],
+ "type": "object",
+ "properties": {
+ "sensorMeasurement": {
+ "description": "The measurement name for sensor measure in sensorDataModel.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "minProperty": {
+ "description": "The measurement name for minimum measurement value.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "maxProperty": {
+ "description": "The measurement name for maximum measurement value.",
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "SolutionInference": {
+ "description": "SolutionInference request model.",
+ "required": [
+ "requestPath"
+ ],
+ "type": "object",
+ "properties": {
+ "requestPath": {
+ "description": "RequestPath containing the api-version, query parameters and path route to be called for partner request.\r\nExpected format is \"/{api-version}/{resourceExposedByPartner}/{customerDefinedJobId}?query1=value1\".\r\nNot following this format may result into validation errors.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "partnerRequestBody": {
+ "description": "Api input parameters required by partner to trigger/cancel job request.",
+ "type": "object",
+ "additionalProperties": {}
+ }
+ }
+ },
+ "Source": {
+ "description": "Source of satellite data.",
+ "enum": [
+ "Sentinel_2_L2A",
+ "Sentinel_2_L1C"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Source",
+ "modelAsString": true
+ }
+ },
+ "StacFeature": {
+ "description": "Schema of STAC Feature(Item).\r\nRefer for spec: https://github.com/radiantearth/stac-spec/blob/v1.0.0-beta.2/item-spec/item-spec.md#item-fields.",
+ "required": [
+ "assets",
+ "id",
+ "links",
+ "properties",
+ "stacVersion",
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "stacVersion": {
+ "description": "The STAC version the Feature implements.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "stacExtensions": {
+ "description": "A list of extensions the Feature implements.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "id": {
+ "description": "Provider identifier. Globally unique ID by Data provider.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of the GeoJSON Object. It's value is always Feature.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "geometry": {
+ "description": "Defines the full footprint of the asset represented by this item.\r\nIts a GeoJSON geometry.",
+ "type": "object"
+ },
+ "bbox": {
+ "description": "Bounding box of the feature.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "properties": {
+ "description": "A dictionary of additional metadata for the item.",
+ "type": "object"
+ },
+ "links": {
+ "description": "List of link objects to resources and related URLs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StacFeatureLink"
+ }
+ },
+ "assets": {
+ "description": "Dictionary of asset objects, each with a unique key.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/StacFeatureAsset"
+ }
+ },
+ "collection": {
+ "description": "The id of the STAC Collection this Feature references.",
+ "type": "string"
+ }
+ }
+ },
+ "StacFeatureAsset": {
+ "description": "Schema of STAC Feature's Asset.\r\nRefer for spec: https://github.com/radiantearth/stac-spec/blob/v1.0.0-beta.2/item-spec/item-spec.md#asset-object.",
+ "required": [
+ "href"
+ ],
+ "type": "object",
+ "properties": {
+ "href": {
+ "description": "Link to the asset object.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "title": {
+ "description": "The displayed title for clients and users.",
+ "type": "string"
+ },
+ "description": {
+ "description": "A description of the Asset providing additional details, such as how it was processed or created.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Media type of the asset.",
+ "type": "string"
+ },
+ "roles": {
+ "description": "The semantic roles of the asset, similar to the use of rel in links.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "StacFeatureLink": {
+ "description": "The Link object describes a relationship of this Feature with another entity.\r\nRefer for spec: https://github.com/radiantearth/stac-spec/blob/v1.0.0-beta.2/item-spec/item-spec.md#link-object.",
+ "required": [
+ "href",
+ "rel"
+ ],
+ "type": "object",
+ "properties": {
+ "href": {
+ "description": "The actual link in the format of an URL.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "rel": {
+ "description": "Relationship between the current document and the linked document.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "type": {
+ "description": "Media type of the referenced entity.",
+ "type": "string"
+ },
+ "title": {
+ "description": "A human readable title to be used in rendered displays of the link.",
+ "type": "string"
+ }
+ }
+ },
+ "TillageData": {
+ "description": "Schema of tillage data resource.",
+ "type": "object",
+ "properties": {
+ "tillageDepth": {
+ "$ref": "#/definitions/Measure"
+ },
+ "tillagePressure": {
+ "$ref": "#/definitions/Measure"
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "TillageDataMetaData": {
+ "description": "Schema of tillage data resource.",
+ "type": "object",
+ "properties": {
+ "tillageDepth": {
+ "$ref": "#/definitions/Measure"
+ },
+ "tillagePressure": {
+ "$ref": "#/definitions/Measure"
+ },
+ "area": {
+ "$ref": "#/definitions/Measure"
+ },
+ "operationModifiedDateTime": {
+ "format": "date-time",
+ "description": "Modified date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.\r\nNote: this will be specified by the source provider itself.",
+ "type": "string",
+ "example": "2021-02-10T11:10:21Z"
+ },
+ "operationStartDateTime": {
+ "format": "date-time",
+ "description": "Start date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "operationEndDateTime": {
+ "format": "date-time",
+ "description": "End date-time of the operation data, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2021-01-31T11:10:21Z"
+ },
+ "associatedResource": {
+ "$ref": "#/definitions/GeoResource"
+ },
+ "partyId": {
+ "description": "Party ID which belongs to the operation data.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "TillageDataMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TillageDataMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ },
+ "WeatherDataErrors": {
+ "description": "Model for errors encountered for all failed locations.",
+ "type": "object",
+ "properties": {
+ "locations": {
+ "description": "List of errors encountered for all failed locations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorForLocation"
+ }
+ }
+ }
+ },
+ "WeatherDataForPassthrough": {
+ "description": "Schema of weather data.",
+ "type": "object",
+ "properties": {
+ "wetBulbTemperature": {
+ "$ref": "#/definitions/Measures"
+ },
+ "cloudCover": {
+ "$ref": "#/definitions/Measures"
+ },
+ "dayOfWeek": {
+ "description": "Day of week.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "dayOrNight": {
+ "description": "This data field indicates whether it is daytime or nighttime based on the Local Apparent Time of the location.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "expirationTime": {
+ "description": "Expiration time in Utc format.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "iconCode": {
+ "description": "This number is the key to the weather icon lookup. The data field shows the icon number that is matched to represent the observed weather conditions.",
+ "type": "array",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "iconCodeExtend": {
+ "description": "Code representing full set sensible weather.",
+ "type": "array",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "hasPrecipitation": {
+ "description": "Indicates whether there is precipitation or not.",
+ "type": "array",
+ "items": {
+ "type": "boolean"
+ }
+ },
+ "pressureMeanSeaLevel": {
+ "$ref": "#/definitions/Measures"
+ },
+ "relativeHumidity": {
+ "$ref": "#/definitions/Measures"
+ },
+ "temperature": {
+ "$ref": "#/definitions/Measures"
+ },
+ "temperatureDewPoint": {
+ "$ref": "#/definitions/Measures"
+ },
+ "temperatureFeelsLike": {
+ "$ref": "#/definitions/Measures"
+ },
+ "temperatureHeatIndex": {
+ "$ref": "#/definitions/Measures"
+ },
+ "temperatureWindChill": {
+ "$ref": "#/definitions/Measures"
+ },
+ "uvDescription": {
+ "description": "The UV Index Description which complements the UV Index value by providing an associated level of risk of skin damage due to exposure (-2 = Not Available, -1 = No Report, 0 to 2 = Low, 3 to 5 = Moderate, 6 to 7 = High, 8 to 10 = Very High, 11 to 16 = Extreme).",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "uvIndex": {
+ "description": "Hourly maximum UV index.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "validTimeLocal": {
+ "description": "Time forecast is valid in local apparent time.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "validTime": {
+ "description": "Time forecast is valid in Utc format.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "visibility": {
+ "$ref": "#/definitions/Measures"
+ },
+ "windDirection": {
+ "$ref": "#/definitions/Measures"
+ },
+ "windGust": {
+ "$ref": "#/definitions/Measures"
+ },
+ "windSpeed": {
+ "$ref": "#/definitions/Measures"
+ },
+ "wxPhraseLong": {
+ "description": "Hourly sensible weather phrase containing longer description.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "wxPhraseShort": {
+ "description": "Hourly sensible weather phrase containing short description.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "additionalAttributes": {
+ "description": "A collection of key value pairs that belongs to the resource. Each pair must not have a key greater than 50 characters and must not have a value greater than 250 characters. Note: A maximum of 100 key value pairs can be provided for a resource and only string and numeral values are supported.",
+ "type": "object",
+ "additionalProperties": {}
+ }
+ }
+ },
+ "WeatherDataProviderRequest": {
+ "description": "Schema of weather data provider request.",
+ "required": [
+ "extensionApiName",
+ "extensionId",
+ "units"
+ ],
+ "type": "object",
+ "properties": {
+ "credentials": {
+ "$ref": "#/definitions/ApiKeyAuthCredentials"
+ },
+ "locations": {
+ "description": "List of locations for which weather data need to be fetched from the provider.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WeatherLocation"
+ }
+ },
+ "extensionId": {
+ "description": "Id of the extension to be used for the providerInput. eg. DTN.ClearAg.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "extensionApiName": {
+ "description": "Extension api name to which request is to be made.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "language": {
+ "description": "Language (IETF BCP 47 language tag) in which search results should be returned by the data provider. Examples: 'en-US', 'es', 'es-MX', 'fr-FR'.",
+ "type": "string"
+ },
+ "startTimeHours": {
+ "format": "int32",
+ "description": "Start of time range. Hour 0 represents the current hour. (Only applicable for DTN.ClearAg extension.)",
+ "maximum": 240,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "endTimeHours": {
+ "format": "int32",
+ "description": "End of time range. (Only applicable for DTN.ClearAg extension.)",
+ "maximum": 240,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "duration": {
+ "format": "int32",
+ "description": "Specifies for how many days the daily forecast responses are returned. Available values are 1, 5, 10, 25 and 45. (Only applicable for Azure Weather Maps extension.)",
+ "type": "integer"
+ },
+ "units": {
+ "description": "Units for which request to data provider is to be sent. Supported values are 'e' for English units, 'm' for Metric units, 'h' for Hybrid units (UK) and 's' for Metric SI units.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "additionalParams": {
+ "$ref": "#/definitions/AdditionalProviderParameters"
+ }
+ }
+ },
+ "WeatherDataProviderResponse": {
+ "description": "Schema of Weather Data Provider Response.",
+ "required": [
+ "weatherMetadata"
+ ],
+ "type": "object",
+ "properties": {
+ "weatherMetadata": {
+ "$ref": "#/definitions/WeatherMetadata"
+ },
+ "status": {
+ "description": "Indicates a Succeeded, Failed, or PartiallySucceeded response.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "PartiallySucceeded"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ },
+ "locations": {
+ "description": "List of weather data for all the weather locations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WeatherLocationData"
+ }
+ },
+ "errors": {
+ "$ref": "#/definitions/WeatherDataErrors"
+ }
+ }
+ },
+ "WeatherLocation": {
+ "description": "Schema of Location data.",
+ "required": [
+ "type",
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Location Type eg. LatLong/IataCode/IcaoCode/Placeid/PostalKey.",
+ "maxLength": 25,
+ "minLength": 2,
+ "enum": [
+ "LatLong",
+ "IataCode",
+ "IcaoCode",
+ "PlaceId",
+ "PostalKey"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "LocationType",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "Location Value eg. \"10,-25\" for LocationType Type \"LatLong\".",
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "WeatherLocationData": {
+ "description": "Schema of WeatherLocationData data.",
+ "type": "object",
+ "properties": {
+ "location": {
+ "$ref": "#/definitions/WeatherLocation"
+ },
+ "requestCompletionTime": {
+ "description": "Request Completion Time in Utc of the location.",
+ "type": "string"
+ },
+ "lastRefreshedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last requested, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "data": {
+ "$ref": "#/definitions/WeatherDataForPassthrough"
+ }
+ }
+ },
+ "WeatherMetadata": {
+ "description": "Schema of Weather Metadata.",
+ "required": [
+ "extensionApiName",
+ "extensionId",
+ "extensionVersion",
+ "units",
+ "weatherDataType"
+ ],
+ "type": "object",
+ "properties": {
+ "extensionVersion": {
+ "description": "Version of the weather data extension.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "weatherDataType": {
+ "description": "Type of weather data (forecast/historical).",
+ "minLength": 1,
+ "type": "string"
+ },
+ "extensionId": {
+ "description": "Id of the extension to be used for the providerInput. eg. DTN.ClearAg.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "extensionApiName": {
+ "description": "Extension api name to which request is to be made.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "language": {
+ "description": "Language (IETF BCP 47 language tag) in which search results should be returned by the data provider. Examples: 'en-US', 'es', 'es-MX', 'fr-FR'.",
+ "type": "string"
+ },
+ "startTimeHours": {
+ "format": "int32",
+ "description": "Start of time range. Hour 0 represents the current hour. (Only applicable for DTN.ClearAg extension.)",
+ "maximum": 240,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "endTimeHours": {
+ "format": "int32",
+ "description": "End of time range. (Only applicable for DTN.ClearAg extension.)",
+ "maximum": 240,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "duration": {
+ "format": "int32",
+ "description": "Specifies for how many days the daily forecast responses are returned. Available values are 1, 5, 10, 25 and 45. (Only applicable for Azure Weather Maps extension.)",
+ "type": "integer"
+ },
+ "units": {
+ "description": "Units for which request to data provider is to be sent. Supported values are 'e' for English units, 'm' for Metric units, 'h' for Hybrid units (UK) and 's' for Metric SI units.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "additionalParams": {
+ "$ref": "#/definitions/AdditionalProviderParameters"
+ }
+ }
+ },
+ "Zone": {
+ "description": "Api Model for Zone object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id associated with the Zone.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Type of the Zone.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "managementZoneId": {
+ "description": "Management Zone Id associated with the Zone.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "geometry": {
+ "$ref": "#/definitions/GeoJsonObject"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "ZoneMetaData": {
+ "description": "Api Model for Zone object.",
+ "type": "object",
+ "properties": {
+ "partyId": {
+ "description": "Party Id associated with the Zone.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Type of the Zone.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "managementZoneId": {
+ "description": "Management Zone Id associated with the Zone.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Unique resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eTag": {
+ "description": "The ETag value to implement optimistic concurrency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was created, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "modifiedDateTime": {
+ "format": "date-time",
+ "description": "Date-time when resource was last modified, sample format: yyyy-MM-ddTHH:mm:ssZ.",
+ "type": "string",
+ "readOnly": true,
+ "example": "2020-12-31T11:10:21Z"
+ },
+ "source": {
+ "description": "Source of the resource.",
+ "maxLength": 100,
+ "minLength": 2,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name to identify resource.",
+ "maxLength": 100,
+ "minLength": 0,
+ "type": "string"
+ },
+ "description": {
+ "description": "Textual description of the resource.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "createdBy": {
+ "description": "Created by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "modifiedBy": {
+ "description": "Modified by user/tenant id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "A collection of key value pairs that belongs to the resource.\r\nEach pair must not have a key greater than 50 characters\r\nand must not have a value greater than 150 characters.\r\nNote: A maximum of 25 key value pairs can be provided for a resource and only string,\r\nnumeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.",
+ "type": "object",
+ "additionalProperties": {},
+ "example": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ },
+ "ZoneMetaDataListResponse": {
+ "description": "Paged response contains list of requested objects and a skipToken to get the next set of results.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of requested objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ZoneMetaData"
+ }
+ },
+ "skipToken": {
+ "description": "Token used in retrieving the next page. If null, there are no additional pages.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "Bearer": {
+ "type": "apiKey",
+ "name": "Authorization",
+ "in": "header",
+ "description": "Please provide a valid bearer token for authorized API calls. Note that you might need to clear your browser cache if you tried un-authenticated calls before."
+ }
+ },
+ "security": [
+ {
+ "Bearer": []
+ }
+ ]
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..48b8475142a9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_CreateCascadeDeleteJob.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "applicationDataId": "ApplicationData123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'ApplicationData' resource with id 'ApplicationData123' and partyId 'PARTY123'.",
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "ApplicationData123",
+ "resourceType": "ApplicationData"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_CreateOrUpdate.json
new file mode 100644
index 000000000000..8e8d14071936
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_CreateOrUpdate.json
@@ -0,0 +1,257 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "applicationDataId": "APPLICATION123",
+ "api-version": "2023-07-01-preview",
+ "applicationData": {
+ "source": "Manual",
+ "name": "Application data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T11:12:12Z",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "area": {
+ "unit": "acre",
+ "value": 60
+ },
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 9
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.15
+ },
+ "applicationProductDetails": [
+ {
+ "productName": "POTASHVAR1",
+ "isCarrier": false,
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 4
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.2
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "APPLICATION123",
+ "source": "Manual",
+ "name": "Application data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T11:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 60
+ },
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 9
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.15
+ },
+ "applicationProductDetails": [
+ {
+ "productName": "POTASHVAR1",
+ "isCarrier": false,
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 4
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.2
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "APPLICATION123",
+ "source": "Manual",
+ "name": "Application data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T11:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 60
+ },
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 9
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.15
+ },
+ "applicationProductDetails": [
+ {
+ "productName": "POTASHVAR1",
+ "isCarrier": false,
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 4
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.2
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Delete.json
new file mode 100644
index 000000000000..264b1ecfb3af
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "applicationDataId": "APPLICATION123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Get.json
new file mode 100644
index 000000000000..0d91a624f053
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Get.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "applicationDataId": "APPLICATION123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "APPLICATION123",
+ "source": "Manual",
+ "name": "Application data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T11:12:12Z",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "area": {
+ "unit": "acre",
+ "value": 60
+ },
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 9
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.15
+ },
+ "applicationProductDetails": [
+ {
+ "productName": "POTASHVAR1",
+ "isCarrier": false,
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 4
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.2
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2020-12-31T11:10:21Z",
+ "modifiedDateTime": "2020-12-31T11:10:21Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..17d460dffeac
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "ApplicationData123",
+ "resourceType": "ApplicationData"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Search.json
new file mode 100644
index 000000000000..54617a7eade5
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ApplicationData_Search.json
@@ -0,0 +1,102 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchFarmOperationQuery": {
+ "minArea": 0,
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "APPLICATION123",
+ "source": "Manual",
+ "name": "Application data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T11:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "area": {
+ "unit": "acre",
+ "value": 60
+ },
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 9
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.15
+ },
+ "applicationProductDetails": [
+ {
+ "productName": "POTASHVAR1",
+ "isCarrier": false,
+ "totalMaterial": {
+ "unit": "kilos",
+ "value": 4
+ },
+ "avgMaterial": {
+ "unit": "kilosperacre",
+ "value": 0.2
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_CreateOrUpdate.json
new file mode 100644
index 000000000000..da2c05e89eb3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_CreateOrUpdate.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "attachmentId": "ATTACHMENT123",
+ "api-version": "2023-07-01-preview",
+ "file": "101010101"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "ATTACHMENT123",
+ "partyId": "PARTY123",
+ "resourceId": "PARTY123",
+ "resourceType": "Party",
+ "originalFileName": "attachment-file",
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "ATTACHMENT123",
+ "partyId": "PARTY123",
+ "resourceId": "PARTY123",
+ "resourceType": "Party",
+ "originalFileName": "attachment-file",
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Delete.json
new file mode 100644
index 000000000000..defb86ac9e9e
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "attachmentId": "ATTACHMENT123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Download.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Download.json
new file mode 100644
index 000000000000..089129ae1098
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Download.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "attachmentId": "ATTACHMENT123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": "101010101"
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Get.json
new file mode 100644
index 000000000000..7013dfebf032
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_Get.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "attachmentId": "ATTACHMENT123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "ATTACHMENT123",
+ "partyId": "PARTY123",
+ "resourceId": "PARTY123",
+ "resourceType": "Party",
+ "originalFileName": "attachment-file",
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_ListByPartyId.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_ListByPartyId.json
new file mode 100644
index 000000000000..a9c2f69eefc3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Attachments_ListByPartyId.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "ATTACHMENT123",
+ "partyId": "PARTY123",
+ "resourceId": "PARTY123",
+ "resourceType": "Party",
+ "originalFileName": "attachment-file",
+ "name": "John Smith's attachment",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/attachments/{{attachmentId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_CreateOrUpdate.json
new file mode 100644
index 000000000000..a2bcbacbc8ac
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_CreateOrUpdate.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "cropIds": [
+ "CORN123"
+ ],
+ "cropProductId": "SEED123",
+ "cropProduct": {
+ "brand": "BRAND123",
+ "product": "AGTECH",
+ "trait": "string",
+ "relativeMaturity": {
+ "unit": "string",
+ "value": 0
+ },
+ "treatments": [
+ "string"
+ ],
+ "status": "Active",
+ "name": "John Smith's Crop",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "SEED123",
+ "cropIds": [
+ "CORN123"
+ ],
+ "brand": "BRAND123",
+ "product": "AGTECH",
+ "trait": "string",
+ "relativeMaturity": {
+ "unit": "string",
+ "value": 0
+ },
+ "treatments": [
+ "string"
+ ],
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "SEED123",
+ "cropIds": [
+ "CORN123"
+ ],
+ "brand": "BRAND123",
+ "product": "AGTECH",
+ "trait": "string",
+ "relativeMaturity": {
+ "unit": "string",
+ "value": 0
+ },
+ "treatments": [
+ "string"
+ ],
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_Delete.json
new file mode 100644
index 000000000000..69176d27ee4d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "cropId": "CORN123",
+ "cropProductId": "SEED123"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_Get.json
new file mode 100644
index 000000000000..70fd08c8a1e3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_Get.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "cropId": "CORN123",
+ "cropProductId": "SEED123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "SEED123",
+ "brand": "BRAND123",
+ "product": "AGTECH",
+ "trait": "string",
+ "relativeMaturity": {
+ "unit": "string",
+ "value": 0
+ },
+ "treatments": [
+ "string"
+ ],
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_List.json
new file mode 100644
index 000000000000..b7caffe066e9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/CropProducts_List.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "SEED123",
+ "brand": "BRAND123",
+ "product": "AGTECH",
+ "trait": "string",
+ "relativeMaturity": {
+ "unit": "string",
+ "value": 0
+ },
+ "treatments": [
+ "string"
+ ],
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/crop-products/{{cropProductId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_CreateOrUpdate.json
new file mode 100644
index 000000000000..8d33829a4fb1
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_CreateOrUpdate.json
@@ -0,0 +1,102 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "cropId": "CORN123",
+ "crop": {
+ "phenotype": "Corn",
+ "breedingMethod": "VARIETY",
+ "measurements": {
+ "m1": {
+ "unit": "string",
+ "value": 0
+ },
+ "m2": {
+ "unit": "string",
+ "value": 0
+ },
+ "m3": {
+ "unit": "string",
+ "value": 0
+ }
+ },
+ "status": "Active",
+ "name": "John Smith's Crop",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "CORN123",
+ "phenotype": "Corn",
+ "breedingMethod": "VARIETY",
+ "measurements": {
+ "m1": {
+ "unit": "string",
+ "value": 0
+ },
+ "m2": {
+ "unit": "string",
+ "value": 0
+ },
+ "m3": {
+ "unit": "string",
+ "value": 0
+ }
+ },
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "CORN123",
+ "phenotype": "Corn",
+ "breedingMethod": "VARIETY",
+ "measurements": {
+ "m1": {
+ "unit": "string",
+ "value": 0
+ },
+ "m2": {
+ "unit": "string",
+ "value": 0
+ },
+ "m3": {
+ "unit": "string",
+ "value": 0
+ }
+ },
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_Delete.json
new file mode 100644
index 000000000000..e0107ee303a8
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_Delete.json
@@ -0,0 +1,9 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "cropId": "CORN123"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_Get.json
new file mode 100644
index 000000000000..99fd3d243e66
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_Get.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "cropId": "CORN123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "CORN123",
+ "phenotype": "Corn",
+ "breedingMethod": "VARIETY",
+ "measurements": {
+ "m1": {
+ "unit": "string",
+ "value": 0
+ },
+ "m2": {
+ "unit": "string",
+ "value": 0
+ },
+ "m3": {
+ "unit": "string",
+ "value": 0
+ }
+ },
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_List.json
new file mode 100644
index 000000000000..c73fde91efc8
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Crops_List.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "CORN123",
+ "phenotype": "Corn",
+ "breedingMethod": "VARIETY",
+ "measurements": {
+ "m1": {
+ "unit": "string",
+ "value": 0
+ },
+ "m2": {
+ "unit": "string",
+ "value": 0
+ },
+ "m3": {
+ "unit": "string",
+ "value": 0
+ }
+ },
+ "name": "John Smith's Crop",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_CreateOrUpdate.json
new file mode 100644
index 000000000000..f3f28871b865
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_CreateOrUpdate.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "deviceDataModelId": "ddm124",
+ "api-version": "2023-07-01-preview",
+ "deviceDataModelObject": {
+ "type": "Node",
+ "manufacturer": "Manufacturer1",
+ "productCode": "smt123",
+ "ports": [
+ {
+ "name": "sm",
+ "type": "Analog"
+ }
+ ],
+ "status": "new",
+ "name": "sm-device-model",
+ "description": "new device model for soil moisture measurement devices",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Node",
+ "manufacturer": "Manufacturer1",
+ "productCode": "smt123",
+ "ports": [
+ {
+ "name": "sm",
+ "type": "Analog"
+ }
+ ],
+ "sensorPartnerId": "sp1",
+ "id": "ddm124",
+ "status": "new",
+ "createdDateTime": "2022-01-21T09:52:16Z",
+ "modifiedDateTime": "2022-01-21T09:54:08Z",
+ "eTag": "7f002a96-0000-0700-0000-61ea82c00000",
+ "name": "sm-device-model",
+ "description": "new device model for soil moisture measurement devices",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "type": "Node",
+ "manufacturer": "Manufacturer1",
+ "productCode": "smt123",
+ "ports": [
+ {
+ "name": "sm",
+ "type": "Analog"
+ }
+ ],
+ "sensorPartnerId": "sp1",
+ "id": "ddm124",
+ "status": "new",
+ "createdDateTime": "2022-01-21T09:52:16Z",
+ "modifiedDateTime": "2022-01-21T09:52:16Z",
+ "eTag": "7f00bf76-0000-0700-0000-61ea82500000",
+ "name": "sm-device-model",
+ "description": "new device model for soil moisture measurement devices",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_Delete.json
new file mode 100644
index 000000000000..b7c87a59e5e0
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "deviceDataModelId": "ddm124",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_Get.json
new file mode 100644
index 000000000000..583fea0c0774
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_Get.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1",
+ "deviceDataModelId": "ddm124"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Node",
+ "manufacturer": "Manufacturer1",
+ "productCode": "smt123",
+ "ports": [
+ {
+ "name": "sm",
+ "type": "Analog"
+ }
+ ],
+ "sensorPartnerId": "sp1",
+ "id": "ddm124",
+ "status": "new",
+ "createdDateTime": "2022-01-21T09:52:16Z",
+ "modifiedDateTime": "2022-01-21T09:54:08Z",
+ "eTag": "7f002a96-0000-0700-0000-61ea82c00000",
+ "name": "sm-device-model",
+ "description": "new device model for soil moisture measurement devices",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_List.json
new file mode 100644
index 000000000000..dc18d3f262a0
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/DeviceDataModels_List.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "type": "Node",
+ "manufacturer": "Manufacturer1",
+ "productCode": "smt123",
+ "ports": [
+ {
+ "name": "sm",
+ "type": "Analog"
+ }
+ ],
+ "sensorPartnerId": "sp1",
+ "id": "ddm124",
+ "status": "new",
+ "createdDateTime": "2022-01-21T09:52:16Z",
+ "modifiedDateTime": "2022-01-21T09:54:08Z",
+ "eTag": "7f002a96-0000-0700-0000-61ea82c00000",
+ "name": "sm-device-model",
+ "description": "new device model for soil moisture measurement devices",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/{{sensorPartnerId}}/device-data-models?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_CreateOrUpdate.json
new file mode 100644
index 000000000000..c319fdc0f044
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_CreateOrUpdate.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "deviceId": "d124",
+ "api-version": "2023-07-01-preview",
+ "deviceDetails": {
+ "deviceDataModelId": "ddm124",
+ "integrationId": "string",
+ "type": "device",
+ "hardwareId": "HD156",
+ "reportingIntervalInSeconds": 10,
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "status": "new device",
+ "name": "my device",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "deviceDataModelId": "ddm124",
+ "integrationId": "string",
+ "type": "device",
+ "hardwareId": "HD156",
+ "reportingIntervalInSeconds": 10,
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "sensorPartnerId": "sp1",
+ "id": "d123",
+ "status": "new device",
+ "createdDateTime": "2022-01-24T06:20:47Z",
+ "modifiedDateTime": "2022-01-24T06:21:07Z",
+ "eTag": "0401a5cc-0000-0700-0000-61ee45540000",
+ "name": "my device",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "deviceDataModelId": "ddm124",
+ "integrationId": "string",
+ "type": "device",
+ "hardwareId": "HD156",
+ "reportingIntervalInSeconds": 10,
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "sensorPartnerId": "sp1",
+ "id": "d123",
+ "status": "new device",
+ "createdDateTime": "2022-01-24T06:20:47Z",
+ "modifiedDateTime": "2022-01-24T06:20:47Z",
+ "eTag": "0401baca-0000-0700-0000-61ee453f0000",
+ "name": "my device",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_Delete.json
new file mode 100644
index 000000000000..98c922790bf6
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "deviceId": "d124",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_Get.json
new file mode 100644
index 000000000000..2c9e4acda0b9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_Get.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1",
+ "deviceId": "d124"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "deviceDataModelId": "ddm124",
+ "integrationId": "string",
+ "type": "device",
+ "hardwareId": "HD156",
+ "reportingIntervalInSeconds": 10,
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "sensorPartnerId": "sp1",
+ "id": "d124",
+ "status": "new device",
+ "createdDateTime": "2022-01-24T06:22:41Z",
+ "modifiedDateTime": "2022-01-24T06:22:43Z",
+ "eTag": "04010fd5-0000-0700-0000-61ee45b30000",
+ "name": "my device",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_List.json
new file mode 100644
index 000000000000..f62c205dbab3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Devices_List.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "deviceDataModelId": "ddm124",
+ "integrationId": "string",
+ "type": "device",
+ "hardwareId": "HD156",
+ "reportingIntervalInSeconds": 10,
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "sensorPartnerId": "sp1",
+ "id": "d124",
+ "status": "new device",
+ "createdDateTime": "2022-01-24T06:22:41Z",
+ "modifiedDateTime": "2022-01-24T06:22:43Z",
+ "eTag": "04010fd5-0000-0700-0000-61ee45b30000",
+ "name": "my device",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/{{sensorPartnerId}}/device-data-models?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/FarmOperations_CreateDataIngestionJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/FarmOperations_CreateDataIngestionJob.json
new file mode 100644
index 000000000000..0c9877c30244
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/FarmOperations_CreateDataIngestionJob.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview",
+ "job": {
+ "partyId": "TEST-PARTY",
+ "authProviderId": "JOHNDEERE",
+ "operations": [
+ "AllOperations"
+ ],
+ "providerInput": {
+ "shapeType": "Point",
+ "shapeResolution": "EachSection"
+ },
+ "startYear": 2012,
+ "name": "Farm Operations Job",
+ "description": "For TEST-PARTY",
+ "properties": {
+ "Operation": "All"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "operations": [
+ "AllOperations"
+ ],
+ "startYear": 2012,
+ "providerInput": {
+ "shapeType": "Point",
+ "shapeResolution": "EachSection"
+ },
+ "durationInSeconds": 14.79,
+ "id": "sdi-0916aeec-ad8d-41d0-9797-63924f818cd7",
+ "status": "Waiting",
+ "message": "string",
+ "createdDateTime": "2021-03-15T07:14:14Z",
+ "lastActionDateTime": "2021-03-15T07:14:14Z",
+ "startTime": "2021-03-15T07:14:14Z",
+ "endTime": "2021-03-15T07:14:14Z",
+ "name": "Farm Operations Job",
+ "description": "For TEST-PARTY",
+ "properties": {
+ "Operation": "All"
+ },
+ "partyId": "TEST-PARTY",
+ "authProviderId": "JOHNDEERE"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/FarmOperations_GetDataIngestionJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/FarmOperations_GetDataIngestionJobDetails.json
new file mode 100644
index 000000000000..eb84e838405b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/FarmOperations_GetDataIngestionJobDetails.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "providerInput": {
+ "shapeType": "Point",
+ "shapeResolution": "EachSection"
+ },
+ "durationInSeconds": 11.2,
+ "id": "farm-operations-job",
+ "status": "Succeeded",
+ "message": "string",
+ "createdDateTime": "2021-04-16T08:24:50Z",
+ "lastActionDateTime": "2021-04-16T08:24:50Z",
+ "startTime": "2021-04-16T08:24:50Z",
+ "endTime": "2021-04-16T08:24:50Z",
+ "name": "Farm operations Job",
+ "description": "Test job",
+ "properties": {
+ "Region": "Asia"
+ },
+ "partyId": "PARTY123",
+ "authProviderId": "JOHNDEERE",
+ "operations": [
+ "AllOperations"
+ ],
+ "startYear": 2012
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..d598a156961b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "FARM123",
+ "resourceType": "farm"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_CreateOrUpdate.json
new file mode 100644
index 000000000000..3f439b759390
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_CreateOrUpdate.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "api-version": "2023-07-01-preview",
+ "farm": {
+ "status": "Active",
+ "name": "John Smith's Farm",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "FARM123",
+ "partyId": "PARTY123",
+ "name": "John Smith's Farm",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "FARM123",
+ "partyId": "PARTY123",
+ "name": "John Smith's Farm",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_Delete.json
new file mode 100644
index 000000000000..4dc2df67d520
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_Get.json
new file mode 100644
index 000000000000..484d14864c71
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_Get.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "farmId": "FARM123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "FARM123",
+ "partyId": "PARTY123",
+ "name": "John Smith's Farm",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..96eeaf46dd45
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "FARM123",
+ "resourceType": "farm"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_List.json
new file mode 100644
index 000000000000..0e3780560e7a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_List.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "FARM123",
+ "partyId": "PARTY123",
+ "name": "John Smith's Farm",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_ListByPartyId.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_ListByPartyId.json
new file mode 100644
index 000000000000..cfd7e0df9b82
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Farms_ListByPartyId.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "FARM123",
+ "partyId": "PARTY123",
+ "name": "John Smith's Farm",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/farms/{{farmId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..fcd8e89175f5
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "FIELD123",
+ "resourceType": "field"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_CreateOrUpdate.json
new file mode 100644
index 000000000000..85447a03eb56
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_CreateOrUpdate.json
@@ -0,0 +1,165 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "api-version": "2023-07-01-preview",
+ "field": {
+ "farmId": "FARM123",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "status": "Active",
+ "name": "John Smith's Field",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "FIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "FIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Delete.json
new file mode 100644
index 000000000000..0f8bfe2552f5
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Get.json
new file mode 100644
index 000000000000..b4d552d69c6a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Get.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "FIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..baf6deca27c9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "FIELD123",
+ "resourceType": "field"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Search.json
new file mode 100644
index 000000000000..2b71282f07ff
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Fields_Search.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchFieldQuery": {
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "FIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "name": "John Smith's Field",
+ "status": "Active",
+ "description": "Some description",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..91dc906fc2bd
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_CreateCascadeDeleteJob.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "harvestDataId": "HarvestData123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'harvestData' resource with id 'HarvestData123' and partyId 'PARTY123'.",
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "HarvestData123",
+ "resourceType": "farmoperationharvestdata"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_CreateOrUpdate.json
new file mode 100644
index 000000000000..52eae93b386c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_CreateOrUpdate.json
@@ -0,0 +1,350 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "harvestDataId": "HARVESTOP123",
+ "harvestData": {
+ "source": "Manual",
+ "name": "Harvest data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 50
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 1400
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 28
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 500
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 14.61
+ },
+ "avgSpeed": {
+ "unit": "kmsperhour",
+ "value": 7.2
+ },
+ "harvestProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 900
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 30
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 300
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 16.4
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "HARVESTOP123",
+ "source": "Manual",
+ "name": "Harvest data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 50
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 1400
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 28
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 500
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 14.61
+ },
+ "avgSpeed": {
+ "unit": "kmsperhour",
+ "value": 7.2
+ },
+ "harvestProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 900
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 30
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 300
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 16.4
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "HARVESTOP123",
+ "source": "Manual",
+ "name": "Harvest data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 50
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 1400
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 28
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 500
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 14.61
+ },
+ "avgSpeed": {
+ "unit": "kmsperhour",
+ "value": 7.2
+ },
+ "harvestProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 900
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 30
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 300
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 16.4
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Delete.json
new file mode 100644
index 000000000000..b19890dbb3c7
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "harvestDataId": "HARVESTOP123"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Get.json
new file mode 100644
index 000000000000..be0863d2685b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Get.json
@@ -0,0 +1,125 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "harvestDataId": "HARVESTOP123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "HARVESTOP123",
+ "source": "Manual",
+ "name": "Harvest data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 50
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 1400
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 28
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 500
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 14.61
+ },
+ "avgSpeed": {
+ "unit": "kmsperhour",
+ "value": 7.2
+ },
+ "harvestProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 900
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 30
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 300
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 16.4
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..aa858673b86b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 15,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "HarvestData123",
+ "resourceType": "farmoperationharvestdata"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Search.json
new file mode 100644
index 000000000000..765199394e40
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/HarvestData_Search.json
@@ -0,0 +1,133 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchFarmOperationQuery": {
+ "minArea": 0,
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "HARVESTOP123",
+ "source": "Manual",
+ "name": "Harvest data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "area": {
+ "unit": "acre",
+ "value": 50
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 1400
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 28
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 500
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 14.61
+ },
+ "avgSpeed": {
+ "unit": "kmsperhour",
+ "value": 7.2
+ },
+ "harvestProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalYield": {
+ "unit": "kilos",
+ "value": 900
+ },
+ "avgYield": {
+ "unit": "kilosperacre",
+ "value": 30
+ },
+ "totalWetMass": {
+ "unit": "kilos",
+ "value": 300
+ },
+ "avgWetMass": {
+ "unit": "kilosperacre",
+ "value": 10
+ },
+ "avgMoisture": {
+ "unit": "percent",
+ "value": 16.4
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ImageProcessing_CreateRasterizeJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ImageProcessing_CreateRasterizeJob.json
new file mode 100644
index 000000000000..8eb7fe8f683c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ImageProcessing_CreateRasterizeJob.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview",
+ "job": {
+ "partyId": "string",
+ "shapefileAttachmentId": "string",
+ "shapefileColumnNames": [
+ "string"
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "partyId": "string",
+ "shapefileAttachmentId": "string",
+ "shapefileColumnNames": [
+ "string"
+ ],
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ImageProcessing_GetRasterizeJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ImageProcessing_GetRasterizeJob.json
new file mode 100644
index 000000000000..8d6a869510cc
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ImageProcessing_GetRasterizeJob.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "string",
+ "shapefileAttachmentId": "string",
+ "shapefileColumnNames": [
+ "string"
+ ],
+ "id": "string",
+ "status": "string",
+ "durationInSeconds": 15,
+ "message": "string",
+ "createdDateTime": "2021-05-03T08:51:04.744Z",
+ "lastActionDateTime": "2021-05-03T08:51:04.744Z",
+ "startTime": "2021-05-03T08:51:04.744Z",
+ "endTime": "2021-05-03T08:51:04.744Z",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_CreateOrUpdate.json
new file mode 100644
index 000000000000..d6ab67d230d9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_CreateOrUpdate.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "partyId": "pjparty",
+ "modelId": "modelId",
+ "insightId": "insightId",
+ "insightAttachmentId": "insightAttachmentId",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "api-version": "2023-07-01-preview",
+ "body": {
+ "insightId": "insightId",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "status": "insightAttachmentStatus",
+ "name": "insightAttachmentName",
+ "description": "insightAttachmentDescription"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "insightAttachmentId",
+ "insightId": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "status": "insightAttachmentStatus",
+ "name": "insightAttachmentName",
+ "description": "insightAttachmentDescription"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "insightAttachmentId",
+ "insightId": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "status": "insightAttachmentStatus",
+ "name": "insightAttachmentName",
+ "description": "insightAttachmentDescription"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Delete.json
new file mode 100644
index 000000000000..596948ba3da5
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "modelId": "modelId",
+ "insightAttachmentId": "insightAttachmentId",
+ "resourceId": "resourceId",
+ "resourceType": "Farm",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Download.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Download.json
new file mode 100644
index 000000000000..92f29f078cc6
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Download.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "insightAttachmentId": "ATTACHMENT123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": "101010101"
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Get.json
new file mode 100644
index 000000000000..dadc7ad7ba8c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_Get.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "insightAttachmentId": "insightAttachmentId"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "insightAttachmentId",
+ "insightId": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "status": "insightAttachmentStatus",
+ "name": "insightAttachmentName",
+ "description": "insightAttachmentDescription"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_ListByPartyIdModelIdAndResource.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_ListByPartyIdModelIdAndResource.json
new file mode 100644
index 000000000000..769b121f2521
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/InsightAttachments_ListByPartyIdModelIdAndResource.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "insightAttachmentId",
+ "insightId": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "status": "insightAttachmentStatus",
+ "name": "insightAttachmentName",
+ "description": "insightAttachmentDescription"
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/models/{modelId}/resource-types/{resourceType}/resources/{resourceId}/insight-attachments?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..0c5729f8b32c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_CreateCascadeDeleteJob.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "insightId": "insightId",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_CreateOrUpdate.json
new file mode 100644
index 000000000000..5b75babc774e
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_CreateOrUpdate.json
@@ -0,0 +1,85 @@
+{
+ "parameters": {
+ "partyId": "pjparty",
+ "modelId": "BiomassModelId",
+ "insightId": "insightId",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "api-version": "2023-07-01-preview",
+ "insightData": {
+ "modelVersion": "1.0",
+ "insightStartDateTime": "2021-07-26T09:31:54.043Z",
+ "insightEndDateTime": "2021-07-26T09:31:54.043Z",
+ "measurements": {
+ "additionalPropKey1": {
+ "unit": "15m/s",
+ "value": 0
+ }
+ },
+ "name": "insightName",
+ "description": "insightDescription",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "modelVersion": "1.0",
+ "insightStartDateTime": "2021-07-26T09:31:54Z",
+ "insightEndDateTime": "2021-07-26T09:31:54Z",
+ "measurements": {
+ "additionalPropKey1": {
+ "unit": "15m/s",
+ "value": 0
+ }
+ },
+ "attachmentsLink": "https://contosa.farmbeats.azure.net/party/pjparty/insight-attachments/insightId?api-version=2023-06-01-preview&modelId=modelId&resourceType=Farm&resourceId=farmId",
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "name": "insightName",
+ "description": "insightDescription",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "modelVersion": "1.0",
+ "attachmentsLink": "https://contosa.farmbeats.azure.net/party/pjparty/insight-attachments/insightId?api-version=2023-06-01-preview&modelId=modelId&resourceType=Farm&resourceId=farmId",
+ "insightStartDateTime": "2021-07-26T09:31:54Z",
+ "insightEndDateTime": "2021-07-26T09:31:54Z",
+ "measurements": {
+ "additionalPropKey1": {
+ "unit": "15m/s",
+ "value": 0
+ }
+ },
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "name": "insightName",
+ "description": "insightDescription",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_Delete.json
new file mode 100644
index 000000000000..3264e5bb927a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "modelId": "modelId",
+ "insightId": "insightId",
+ "resourceId": "resourceId",
+ "resourceType": "Farm",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_Get.json
new file mode 100644
index 000000000000..f1952c297372
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_Get.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "insightId": "insightId"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "modelVersion": "1.0",
+ "insightStartDateTime": "2021-07-26T09:31:54Z",
+ "insightEndDateTime": "2021-07-26T09:31:54Z",
+ "measurements": {
+ "additionalPropKey1": {
+ "unit": "15m/s",
+ "value": 0
+ }
+ },
+ "attachmentsLink": "https://contosa.farmbeats.azure.net/party/pjparty/insight-attachments/insightId?api-version=2023-06-01-preview&modelId=modelId&resourceType=Farm&resourceId=farmId",
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "name": "insightName",
+ "description": "insightDescription",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..cb6f56eaa5c6
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_ListByPartyIdModelIdAndResource.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_ListByPartyIdModelIdAndResource.json
new file mode 100644
index 000000000000..3264a0ce6683
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Insights_ListByPartyIdModelIdAndResource.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "insightId",
+ "partyId": "pjparty",
+ "resourceId": "farmId",
+ "resourceType": "Farm",
+ "modelId": "modelId",
+ "modelVersion": "1.0",
+ "attachmentsLink": "https://contosa.farmbeats.azure.net/party/pjparty/insight-attachments/insightId?api-version=2023-06-01-preview&modelId=modelId&resourceType=Farm&resourceId=farmId",
+ "insightStartDateTime": "2021-07-26T09:31:54Z",
+ "insightEndDateTime": "2021-07-26T09:31:54Z",
+ "measurements": {
+ "additionalPropKey1": {
+ "unit": "15m/s",
+ "value": 0
+ }
+ },
+ "createdDateTime": "2021-07-26T11:19:11Z",
+ "modifiedDateTime": "2021-07-26T11:19:11Z",
+ "eTag": "00000000-0000-0000-8210-0ef9229601d7",
+ "name": "insightName",
+ "description": "insightDescription",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/insights?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..f3b47d647959
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "managementZoneId": "MANAGEMENTZONE123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "MANAGEMENTZONE123",
+ "resourceType": "managementzone"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_CreateOrUpdate.json
new file mode 100644
index 000000000000..8e0ed54bf631
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_CreateOrUpdate.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "managementZoneId": "ManagementZone123",
+ "api-version": "2023-07-01-preview",
+ "managementZone": {
+ "type": "Nutrient rich",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "status": "Active",
+ "name": "John Smith's ManagementZone",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "type": "Nutrient rich",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "type": "Nutrient rich",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_Delete.json
new file mode 100644
index 000000000000..cfa40ed3b4be
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "managementZoneId": "ManagementZone123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_Get.json
new file mode 100644
index 000000000000..d6497296512d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_Get.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "managementZoneId": "ManagementZone123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "type": "Nutrient rich",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..d876cbd6a9c1
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "MANAGEMENTZONE123",
+ "resourceType": "managementzone"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_List.json
new file mode 100644
index 000000000000..d71b35d3c675
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_List.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "type": "Nutrient rich",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/management-zones?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_ListByPartyId.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_ListByPartyId.json
new file mode 100644
index 000000000000..83d16876afbd
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ManagementZones_ListByPartyId.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "type": "Nutrient rich",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/management-zones?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateBiomassModelJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateBiomassModelJob.json
new file mode 100644
index 000000000000..bc6bb89aa676
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateBiomassModelJob.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview",
+ "job": {
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "cropName": "string",
+ "plantingStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "weatherExtensionId": "DTN.ClearAg",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "imageResolution": 10,
+ "imageFormat": "TIF"
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "cropName": "string",
+ "plantingStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "weatherExtensionId": "DTN.ClearAg",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "imageResolution": 10,
+ "imageFormat": "TIF",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateSensorPlacementModelJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateSensorPlacementModelJob.json
new file mode 100644
index 000000000000..70b8bf94ab92
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateSensorPlacementModelJob.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview",
+ "job": {
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "inferenceStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "sensorType": "SoilMoisture",
+ "isRanked": true
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "inferenceStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "sensorType": "SoilMoisture",
+ "isRanked": true,
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateSoilMoistureModelJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateSoilMoistureModelJob.json
new file mode 100644
index 000000000000..eb017bcca1c2
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_CreateSoilMoistureModelJob.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview",
+ "job": {
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "sensorDataModelId": "string",
+ "sensorPartnerId": "string",
+ "inferenceStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "sensorDefinition": {
+ "sensorMeasurement": "string",
+ "minProperty": "string",
+ "maxProperty": "string"
+ },
+ "imageResolution": 10,
+ "imageFormat": "TIF"
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "sensorDataModelId": "string",
+ "sensorPartnerId": "string",
+ "inferenceStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "imageResolution": 10,
+ "imageFormat": "TIF",
+ "sensorDefinition": {
+ "sensorMeasurement": "string",
+ "minProperty": "string",
+ "maxProperty": "string"
+ },
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetBiomassModelJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetBiomassModelJob.json
new file mode 100644
index 000000000000..85497c5411d0
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetBiomassModelJob.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "durationInSeconds": 52.4,
+ "id": "biomass-job",
+ "status": "Succeeded",
+ "message": "Successfully calculated biomass feature in the given date range and created relevant Insight(s) and InsightAttachment(s).",
+ "createdDateTime": "2021-04-16T08:24:50Z",
+ "lastActionDateTime": "2021-04-16T08:24:50Z",
+ "startTime": "2021-04-16T08:24:50Z",
+ "endTime": "2021-04-16T08:24:50Z",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ },
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "cropName": "string",
+ "plantingStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "weatherExtensionId": "DTN.ClearAg",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "imageResolution": 10,
+ "imageFormat": "TIF"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetSensorPlacementModelJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetSensorPlacementModelJob.json
new file mode 100644
index 000000000000..b87789e90cd8
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetSensorPlacementModelJob.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "durationInSeconds": 52.4,
+ "id": "sensor-placement-job",
+ "status": "Succeeded",
+ "message": "Successfully created sensor placement map for the given date range and created relevant Insight(s) and InsightAttachment(s).",
+ "createdDateTime": "2021-12-16T08:24:50Z",
+ "lastActionDateTime": "2021-12-16T08:24:50Z",
+ "startTime": "2021-12-16T08:24:50Z",
+ "endTime": "2021-12-16T08:24:50Z",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ },
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "inferenceStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "sensorType": "SoilMoisture",
+ "isRanked": true
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetSoilMoistureModelJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetSoilMoistureModelJob.json
new file mode 100644
index 000000000000..d17919a61425
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/ModelInference_GetSoilMoistureModelJob.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "durationInSeconds": 52.4,
+ "id": "biomass-job",
+ "status": "Succeeded",
+ "message": "Successfully calculated soil moisture feature in the given date range and created relevant Insight(s) and InsightAttachment(s).",
+ "createdDateTime": "2021-04-16T08:24:50Z",
+ "lastActionDateTime": "2021-04-16T08:24:50Z",
+ "startTime": "2021-04-16T08:24:50Z",
+ "endTime": "2021-04-16T08:24:50Z",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ },
+ "partyId": "string",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "modelVersion": "string",
+ "sensorDataModelId": "string",
+ "sensorPartnerId": "string",
+ "inferenceStartDateTime": "2020-04-16T10:14:12Z",
+ "inferenceEndDateTime": "2020-09-16T10:14:12Z",
+ "satelliteProvider": "Microsoft",
+ "satelliteSource": "Sentinel_2_L2A",
+ "sensorDefinition": {
+ "sensorMeasurement": "string",
+ "minProperty": "string",
+ "maxProperty": "string"
+ },
+ "imageResolution": 10,
+ "imageFormat": "TIF"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_CreateOrUpdate.json
new file mode 100644
index 000000000000..495be69a6a51
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_CreateOrUpdate.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "nutrientAnalysisId": "NutrientAnalysis123",
+ "api-version": "2023-07-01-preview",
+ "nutrientAnalysis": {
+ "parentId": "ParentId",
+ "parentType": "PlantTissueAnalysis",
+ "unit": "Unit",
+ "value": 250,
+ "referenceValueLow": 22,
+ "referenceValueHigh": 33,
+ "classification": "Classification",
+ "recommendation": "Advice",
+ "products": [
+ {
+ "rate": "Rate",
+ "instruction": "Instruction",
+ "product": "product"
+ }
+ ],
+ "status": "Active",
+ "name": "John Smith's Nutrient Analysis",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "parentId": "ParentId",
+ "parentType": "PlantTissueAnalysis",
+ "unit": "Unit",
+ "value": 250,
+ "referenceValueLow": 22,
+ "referenceValueHigh": 33,
+ "classification": "Classification",
+ "recommendation": "Advice",
+ "products": [
+ {
+ "rate": "Rate",
+ "instruction": "Instruction",
+ "product": "product"
+ }
+ ],
+ "name": "John Smith's NutrientAnalysis",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "parentId": "ParentId",
+ "parentType": "PlantTissueAnalysis",
+ "unit": "Unit",
+ "value": 250,
+ "referenceValueLow": 22,
+ "referenceValueHigh": 33,
+ "classification": "Classification",
+ "recommendation": "Advice",
+ "products": [
+ {
+ "rate": "Rate",
+ "instruction": "Instruction",
+ "product": "product"
+ }
+ ],
+ "name": "John Smith's NutrientAnalysis",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_Delete.json
new file mode 100644
index 000000000000..eb9fefbe2e0d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "nutrientAnalysisId": "NutrientAnalysis123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_Get.json
new file mode 100644
index 000000000000..1c992a730bdd
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_Get.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "nutrientAnalysisId": "NutrientAnalysis123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "parentId": "ParentId",
+ "parentType": "PlantTissueAnalysis",
+ "unit": "Unit",
+ "value": 250,
+ "referenceValueLow": 22,
+ "referenceValueHigh": 33,
+ "classification": "Classification",
+ "recommendation": "Advice",
+ "products": [
+ {
+ "rate": "Rate",
+ "instruction": "Instruction",
+ "product": "product"
+ }
+ ],
+ "name": "John Smith's NutrientAnalysis",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_List.json
new file mode 100644
index 000000000000..2ae32c07bcab
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_List.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "parentId": "ParentId",
+ "parentType": "PlantTissueAnalysis",
+ "unit": "Unit",
+ "value": 250,
+ "referenceValueLow": 22,
+ "referenceValueHigh": 33,
+ "classification": "Classification",
+ "recommendation": "Advice",
+ "products": [
+ {
+ "rate": "Rate",
+ "instruction": "Instruction",
+ "product": "product"
+ }
+ ],
+ "name": "John Smith's NutrientAnalysis",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/nutrient-analyses?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_ListByPartyId.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_ListByPartyId.json
new file mode 100644
index 000000000000..bfeba06d4df1
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/NutrientAnalyses_ListByPartyId.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "ManagementZone123",
+ "parentId": "ParentId",
+ "parentType": "PlantTissueAnalysis",
+ "unit": "Unit",
+ "value": 250,
+ "referenceValueLow": 22,
+ "referenceValueHigh": 33,
+ "classification": "Classification",
+ "recommendation": "Advice",
+ "products": [
+ {
+ "rate": "Rate",
+ "instruction": "Instruction",
+ "product": "product"
+ }
+ ],
+ "name": "John Smith's Nutrient analysis",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/nutrient-analyses?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..f82484b868a9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_CreateCascadeDeleteJob.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "oauthProviderId": "OAuthProvider123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "oauthProviderId": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'oauthprovider' resource with id 'OAuthProvider123'.",
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_CreateOrUpdate.json
new file mode 100644
index 000000000000..b8995d55cff7
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_CreateOrUpdate.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "oauthProviderId": "JOHNDEERE",
+ "api-version": "2023-07-01-preview",
+ "oauthProvider": {
+ "appId": "appId",
+ "appSecret": "appSecret",
+ "apiKey": "apiKey",
+ "isProductionApp": false,
+ "name": "JOHNDEERE",
+ "description": "some description",
+ "properties": {
+ "orgId": "ORG123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOHNDEERE",
+ "appId": "appId",
+ "appSecret": "appSecret",
+ "apiKey": "apiKey",
+ "isProductionApp": false,
+ "name": "JOHNDEERE",
+ "description": "some description",
+ "properties": {
+ "orgId": "ORG123"
+ },
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e",
+ "createdDateTime": "2021-04-23T11:31:10Z",
+ "modifiedDateTime": "2021-04-23T11:31:10Z"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "JOHNDEERE",
+ "appId": "appId",
+ "appSecret": "appSecret",
+ "apiKey": "apiKey",
+ "isProductionApp": false,
+ "name": "JOHNDEERE",
+ "description": "some description",
+ "properties": {
+ "orgId": "ORG123"
+ },
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e",
+ "createdDateTime": "2021-04-23T11:31:10Z",
+ "modifiedDateTime": "2021-04-23T11:31:10Z"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_Delete.json
new file mode 100644
index 000000000000..8492000469ec
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_Delete.json
@@ -0,0 +1,9 @@
+{
+ "parameters": {
+ "oauthProviderId": "JOHNDEERE",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_Get.json
new file mode 100644
index 000000000000..3dd709dbcbd1
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_Get.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "oauthProviderId": "JOHNDEERE",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "appId": "appId",
+ "appSecret": "appSecret",
+ "apiKey": "apiKey",
+ "isProductionApp": false,
+ "id": "JOHNDEERE",
+ "eTag": "f8fad5b-d9cb-469f-a165-70867728950e",
+ "createdDateTime": "2021-04-22T18:27:37Z",
+ "modifiedDateTime": "2021-04-22T18:27:37Z",
+ "name": "JD Integration",
+ "description": "Oauth Flow",
+ "properties": {
+ "Party": "123"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..d6b196bcf826
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "oauthProviderId": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_List.json
new file mode 100644
index 000000000000..2441e2f046c3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthProviders_List.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "appId": "appId",
+ "appSecret": "appSecret",
+ "apiKey": "apiKey",
+ "isProductionApp": false,
+ "id": "JOHNDEERE",
+ "eTag": "f8fad5b-d9cb-469f-a165-70867728950e",
+ "createdDateTime": "2021-04-22T18:27:37Z",
+ "modifiedDateTime": "2021-04-22T18:27:37Z",
+ "name": "JD Integration",
+ "description": "Oauth Flow",
+ "properties": {
+ "Party": "123"
+ }
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..ef1bf0613a04
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_CreateCascadeDeleteJob.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "oauthProviderId": "OAUTHPROVIDER123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'oauthtokeninfo' resource with id 'OAUTHPROVIDER123' and partyId 'PARTY123'.",
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "OAUTHPROVIDER123",
+ "resourceType": "oauthtokeninfo"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..e89c1c25e208
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "OAUTHPROVIDER123",
+ "resourceType": "oauthtokeninfo"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_GetOAuthConnectionLink.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_GetOAuthConnectionLink.json
new file mode 100644
index 000000000000..de655fadf92b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_GetOAuthConnectionLink.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "oauthConnectRequest": {
+ "partyId": "PARTY123",
+ "oAuthProviderId": "JOHNDEERE",
+ "userRedirectLink": "https://docs.microsoft.com",
+ "userRedirectState": "code"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": "Connection string"
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_List.json
new file mode 100644
index 000000000000..6f892114bf96
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/OAuthTokens_List.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "authProviderId": "JOHNDEERE",
+ "isValid": true,
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e",
+ "createdDateTime": "2021-04-22T18:49:25Z",
+ "modifiedDateTime": "2021-04-22T18:49:25Z"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..f3363b68042a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_CreateCascadeDeleteJob.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "PARTY123",
+ "resourceType": "party"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_CreateOrUpdate.json
new file mode 100644
index 000000000000..55caa8ee840c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_CreateOrUpdate.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview",
+ "party": {
+ "status": "Active",
+ "name": "John Smith",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "PARTY123",
+ "name": "John Smith",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "PARTY123",
+ "name": "John Smith",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_Delete.json
new file mode 100644
index 000000000000..11372424164c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_Delete.json
@@ -0,0 +1,9 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_GeoOverlap.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_GeoOverlap.json
new file mode 100644
index 000000000000..c3e11bb3b553
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_GeoOverlap.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "overlapResources": {
+ "resources": [
+ {
+ "partyId": "PARTY123",
+ "resourceType": "Field",
+ "resourceId": "FIELD123"
+ },
+ {
+ "partyId": "PARTY456",
+ "resourceType": "Field",
+ "resourceId": "FIELD456"
+ }
+ ]
+ },
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "resources": [
+ {
+ "partyId": "PARTY123",
+ "resourceType": "Field",
+ "resourceId": "FIELD123",
+ "resourceArea": 35
+ },
+ {
+ "partyId": "PARTY456",
+ "resourceType": "Field",
+ "resourceId": "FIELD456",
+ "resourceArea": 25
+ }
+ ],
+ "overlappingArea": 10
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_Get.json
new file mode 100644
index 000000000000..2641dd263dab
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_Get.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "PARTY123",
+ "name": "John Smith",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..8c17b6324f90
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "PARTY123",
+ "resourceType": "party"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_List.json
new file mode 100644
index 000000000000..808f131d0514
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Parties_List.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "PARTY123",
+ "name": "John Smith",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..700349dbbcdf
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_CreateCascadeDeleteJob.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "plantTissueAnalysisId": "PlantTissueAnalysis123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'planttissueanalysis' resource with id 'PlantTissueAnalysis123' and partyId 'PARTY123'.",
+ "createdDateTime": "2021-07-19T11:31:20Z",
+ "lastActionDateTime": "2021-07-19T11:31:34Z",
+ "startTime": "2021-07-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "PlantTissueAnalysis123",
+ "resourceType": "planttissueanalysis"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_CreateOrUpdate.json
new file mode 100644
index 000000000000..6c3aa96cd66d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_CreateOrUpdate.json
@@ -0,0 +1,175 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "plantTissueAnalysisId": "PLANTTISSUEANALYSIS123",
+ "api-version": "2023-07-01-preview",
+ "plantTissueAnalysis": {
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "plantingDateTime": "2022-05-11T07:00:10Z",
+ "plantPart": "PlantPart",
+ "plantPosition": "PlantPosition",
+ "plantAppearance": "PlantAppearance",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "sampleCollectionCondition": "SampleCollectionCondition",
+ "sampleCollectionDateTime": "2021-04-21T06:49:30Z",
+ "sampleReceivedDateTime": "2021-04-22T06:49:30Z",
+ "sampleTestResultDateTime": "2021-04-23T06:49:30Z",
+ "labDetails": {
+ "code": "LabId",
+ "name": "Name",
+ "address": "Address",
+ "description": "Description"
+ },
+ "status": "Active",
+ "name": "John Smith's ManagementZone",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "PLANTTISSUEANALYSIS123",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "plantingDateTime": "2021-04-21T06:49:30Z",
+ "plantPart": "PlantPart",
+ "plantPosition": "PlantPosition",
+ "plantAppearance": "PlantAppearance",
+ "sampleCollectionCondition": "SampleCollectionCondition",
+ "sampleCollectionDateTime": "2021-04-21T06:49:30Z",
+ "sampleReceivedDateTime": "2021-04-22T06:49:30Z",
+ "sampleTestResultDateTime": "2021-04-23T06:49:30Z",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "labDetails": {
+ "code": "LabId",
+ "name": "Name",
+ "address": "Address",
+ "description": "Description"
+ },
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "PLANTTISSUEANALYSIS123",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "plantingDateTime": "2021-04-21T06:49:30Z",
+ "plantPart": "PlantPart",
+ "plantPosition": "PlantPosition",
+ "plantAppearance": "PlantAppearance",
+ "sampleCollectionCondition": "SampleCollectionCondition",
+ "sampleCollectionDateTime": "2021-04-21T06:49:30Z",
+ "sampleReceivedDateTime": "2021-04-22T06:49:30Z",
+ "sampleTestResultDateTime": "2021-04-23T06:49:30Z",
+ "labDetails": {
+ "code": "LabId",
+ "name": "Name",
+ "address": "Address",
+ "description": "Description"
+ },
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Delete.json
new file mode 100644
index 000000000000..421d3e838054
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "plantTissueAnalysisId": "PLANTTISSUEANALYSES123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Get.json
new file mode 100644
index 000000000000..eface88c3704
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Get.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "plantTissueAnalysisId": "PLANTTISSUEANALYSES123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "PLANTTISSUEANALYSIS123",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "plantingDateTime": "2021-04-21T06:49:30Z",
+ "plantPart": "PlantPart",
+ "plantPosition": "PlantPosition",
+ "plantAppearance": "PlantAppearance",
+ "sampleCollectionCondition": "SampleCollectionCondition",
+ "sampleCollectionDateTime": "2021-04-21T06:49:30Z",
+ "sampleReceivedDateTime": "2021-04-22T06:49:30Z",
+ "sampleTestResultDateTime": "2021-04-23T06:49:30Z",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "labDetails": {
+ "code": "LabId",
+ "name": "Name",
+ "address": "Address",
+ "description": "Description"
+ },
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..e6001f57059d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-07-19T11:31:20Z",
+ "lastActionDateTime": "2021-07-19T11:31:34Z",
+ "startTime": "2021-07-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "PlantTissueAnalysis123",
+ "resourceType": "planttissueanalysis"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Search.json
new file mode 100644
index 000000000000..1c3560452196
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantTissueAnalyses_Search.json
@@ -0,0 +1,83 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchPlantTissueAnalysisQuery": {
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "PLANTTISSUEANALYSIS123",
+ "seasonId": "Season123",
+ "cropId": "Crop123",
+ "fieldId": "Field123",
+ "plantingDateTime": "2021-04-21T06:49:30Z",
+ "plantPart": "PlantPart",
+ "plantPosition": "PlantPosition",
+ "plantAppearance": "PlantAppearance",
+ "sampleCollectionCondition": "SampleCollectionCondition",
+ "sampleCollectionDateTime": "2021-04-21T06:49:30Z",
+ "sampleReceivedDateTime": "2021-04-22T06:49:30Z",
+ "sampleTestResultDateTime": "2021-04-23T06:49:30Z",
+ "labDetails": {
+ "code": "LabId",
+ "name": "Name",
+ "address": "Address",
+ "description": "Description"
+ },
+ "name": "John Smith's ManagementZone",
+ "status": "Active",
+ "description": "Some description",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..f959a4924eb5
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_CreateCascadeDeleteJob.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "plantingDataId": "PlantingData123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'PlantingData' resource with id 'PlantingData123' and partyId 'PARTY123'.",
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "PlantingData123",
+ "resourceType": "farmoperationplantingdata"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_CreateOrUpdate.json
new file mode 100644
index 000000000000..f74f3caa7e63
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_CreateOrUpdate.json
@@ -0,0 +1,278 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "plantingDataId": "PLANTINGOP123",
+ "plantingData": {
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "avgPlantingRate": {
+ "unit": "seedsperacre",
+ "value": 30
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 758814
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 25293
+ },
+ "plantingProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 20
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 389214
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 19460
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "PLANTINGOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "avgPlantingRate": {
+ "unit": "seedsperacre",
+ "value": 30
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 758814
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 25293
+ },
+ "plantingProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 20
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 389214
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 19460
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "PLANTINGOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "avgPlantingRate": {
+ "unit": "seedsperacre",
+ "value": 30
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 758814
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 25293
+ },
+ "plantingProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 20
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 389214
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 19460
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Delete.json
new file mode 100644
index 000000000000..cace04b99ea4
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "plantingDataId": "PLANTINGOP123"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Get.json
new file mode 100644
index 000000000000..adba54e8d19b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Get.json
@@ -0,0 +1,101 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "plantingDataId": "PLANTINGOP123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "PLANTINGOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "avgPlantingRate": {
+ "unit": "seedsperacre",
+ "value": 30
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 758814
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 25293
+ },
+ "plantingProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 20
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 389214
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 19460
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..3b5c8279b0ae
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "PlantingData123",
+ "resourceType": "PlantingData"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Search.json
new file mode 100644
index 000000000000..ab7f7996c1cc
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PlantingData_Search.json
@@ -0,0 +1,109 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchFarmOperationQuery": {
+ "minArea": 0,
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "PLANTINGOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "avgPlantingRate": {
+ "unit": "seedsperacre",
+ "value": 30
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 758814
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 25293
+ },
+ "plantingProductDetails": [
+ {
+ "productName": "VAR1",
+ "area": {
+ "unit": "acre",
+ "value": 20
+ },
+ "totalMaterial": {
+ "unit": "seeds",
+ "value": 389214
+ },
+ "avgMaterial": {
+ "unit": "seedsperacre",
+ "value": 19460
+ }
+ }
+ ],
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..dd41cd75f081
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTIONMAP123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "PRESCRIPTIONMAP123",
+ "resourceType": "prescriptionmap"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_CreateOrUpdate.json
new file mode 100644
index 000000000000..ad5300533db0
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_CreateOrUpdate.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTIONMAP123",
+ "api-version": "2023-07-01-preview",
+ "prescriptionMap": {
+ "fieldId": "FIELD123",
+ "seasonId": "SEASON123",
+ "cropId": "CROP123",
+ "type": "Planting",
+ "status": "Active",
+ "name": "John Smith's Prescription map",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "PRESCRIPTIONMAP123",
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "seasonId": "SEASON123",
+ "cropId": "CROP123",
+ "type": "Planting",
+ "name": "John Smith's Prescription map",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "PRESCRIPTIONMAP123",
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "seasonId": "SEASON123",
+ "cropId": "CROP123",
+ "type": "Planting",
+ "name": "John Smith's Prescription map",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_Delete.json
new file mode 100644
index 000000000000..f33c2a4dd1fb
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTIONMAP123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_Get.json
new file mode 100644
index 000000000000..0d82a5cb0568
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTIONMAP123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "PRESCRIPTIONMAP123",
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "seasonId": "SEASON123",
+ "cropId": "CROP123",
+ "type": "Planting",
+ "name": "John Smith's Prescription map",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..bbc944ae602b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "PRESCRIPTIONMAP123",
+ "resourceType": "prescriptionmap"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_List.json
new file mode 100644
index 000000000000..48968e22fc4f
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_List.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "PRESCRIPTIONMAP123",
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "seasonId": "SEASON123",
+ "cropId": "CROP123",
+ "type": "Planting",
+ "name": "John Smith's Prescription map",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/prescription-maps?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_ListByPartyId.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_ListByPartyId.json
new file mode 100644
index 000000000000..ae3872b0fe7a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/PrescriptionMaps_ListByPartyId.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "PRESCRIPTIONMAP123",
+ "partyId": "PARTY123",
+ "fieldId": "FIELD123",
+ "seasonId": "SEASON123",
+ "cropId": "CROP123",
+ "type": "Planting",
+ "name": "John Smith's Prescription map",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/prescription-maps?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..4340b7958277
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "prescriptionId": "PRESCRIPTION123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "PRESCRIPTION123",
+ "resourceType": "prescription"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_CreateOrUpdate.json
new file mode 100644
index 000000000000..f6e8c5609560
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_CreateOrUpdate.json
@@ -0,0 +1,204 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "prescriptionId": "PRESCRIPTION123",
+ "api-version": "2023-07-01-preview",
+ "prescription": {
+ "prescriptionMapId": "PRESCRIPTINMAP123",
+ "productCode": "PRODUCTCODE123",
+ "productName": "Some name",
+ "type": "Planting",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "measurements": {
+ "total material": {
+ "value": 12,
+ "unit": "pounds"
+ },
+ "rate": {
+ "value": 13,
+ "unit": "Km/hr"
+ }
+ },
+ "status": "Active",
+ "name": "John Smith's Prescription",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "PRESCRIPTION123",
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTINMAP123",
+ "productCode": "PRODUCTCODE123",
+ "productName": "Some name",
+ "type": "Planting",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "measurements": {
+ "total material": {
+ "value": 12,
+ "unit": "pounds"
+ },
+ "rate": {
+ "value": 13,
+ "unit": "Km/hr"
+ }
+ },
+ "name": "John Smith's Prescription",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "PRESCRIPTION123",
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTINMAP123",
+ "productCode": "PRODUCTCODE123",
+ "productName": "Some name",
+ "type": "Planting",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "measurements": {
+ "total material": {
+ "value": 12,
+ "unit": "pounds"
+ },
+ "rate": {
+ "value": 13,
+ "unit": "Km/hr"
+ }
+ },
+ "name": "John Smith's Prescription",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Delete.json
new file mode 100644
index 000000000000..2112cf53c83e
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "prescriptionId": "PRESCRIPTION123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Get.json
new file mode 100644
index 000000000000..04089ebcbd2d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Get.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "prescriptionId": "PRESCRIPTION123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "PRESCRIPTION123",
+ "partyId": "PARTY123",
+ "prescriptionMapId": "PRESCRIPTINMAP123",
+ "productCode": "PRODUCTCODE123",
+ "productName": "Some name",
+ "type": "Planting",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "measurements": {
+ "total material": {
+ "value": 12,
+ "unit": "pounds"
+ },
+ "rate": {
+ "value": 13,
+ "unit": "Km/hr"
+ }
+ },
+ "name": "John Smith's Prescription",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..67f41c66d34c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "PRESCRIPTION123",
+ "resourceType": "prescription"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Search.json
new file mode 100644
index 000000000000..cdfeb730b269
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Prescriptions_Search.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchPrescriptionQuery": {
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "Prescription123",
+ "prescriptionMapId": "PrescriptionMap123",
+ "type": "Nutrient rich",
+ "status": "Active",
+ "source": "Agronomist",
+ "name": "John Smith",
+ "description": "Some description",
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_CreateSatelliteDataIngestionJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_CreateSatelliteDataIngestionJob.json
new file mode 100644
index 000000000000..bd4a1deb0cfe
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_CreateSatelliteDataIngestionJob.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview",
+ "job": {
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "partyId": "PARTY123",
+ "startDateTime": "2020-04-16T10:14:12Z",
+ "endDateTime": "2021-04-16T10:14:12Z",
+ "provider": "SentinelHub",
+ "credentials": {
+ "kind": "OAuthClientCredentials",
+ "clientId": "string",
+ "clientSecret": {
+ "keyVaultUri": "https://.vault.azure.net/",
+ "keyName": "string",
+ "keyVersion": "string"
+ }
+ },
+ "source": "Sentinel_2_L2A",
+ "name": "North Farm 2019 satellite imagery",
+ "description": "Test job",
+ "data": {
+ "imageFormats": [
+ "Tif"
+ ],
+ "imageNames": [
+ "NDVI"
+ ],
+ "imageResolutions": [
+ 10.0
+ ]
+ },
+ "properties": {
+ "Region": "Asia"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "durationInSeconds": 12.4,
+ "id": "satellite-job",
+ "status": "Created",
+ "message": "Created job 'satellite-job' to fetch satellite data for resource 'FIELD123' for startDate '01/01/2019 00:00:00' and endDate '03/30/2019 00:00:00' (both inclusive)",
+ "createdDateTime": "2021-04-16T07:56:05Z",
+ "lastActionDateTime": "2021-04-16T07:56:05Z",
+ "startDateTime": "2021-04-16T07:56:05Z",
+ "endDateTime": "2021-04-16T07:56:05Z",
+ "partyId": "PARTY123",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "credentials": {
+ "kind": "OAuthClientCredentials",
+ "clientId": "string",
+ "clientSecret": {
+ "keyVaultUri": "string",
+ "keyName": "string",
+ "keyVersion": "string"
+ }
+ },
+ "source": "Sentinel_2_L2A",
+ "provider": "SentinelHub",
+ "name": "North Farm 2019 satellite imagery",
+ "description": "Test job",
+ "properties": {
+ "Region": "Asia"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_Download.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_Download.json
new file mode 100644
index 000000000000..5dbbc7b81b0c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_Download.json
@@ -0,0 +1,11 @@
+{
+ "parameters": {
+ "filePath": "https://filePath",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": "101010101"
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_GetSatelliteDataIngestionJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_GetSatelliteDataIngestionJobDetails.json
new file mode 100644
index 000000000000..398b22f665cd
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_GetSatelliteDataIngestionJobDetails.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "jobId": "JOB123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "durationInSeconds": 12.4,
+ "id": "satellite-job",
+ "status": "Succeeded",
+ "message": "Satellite data is available for 73 days from provider in the requested date range. Successfully fetched data for 73 days.",
+ "createdDateTime": "2021-04-16T08:24:50Z",
+ "lastActionDateTime": "2021-04-16T08:24:50Z",
+ "startTime": "2021-04-16T08:24:50Z",
+ "endTime": "2021-04-16T08:24:50Z",
+ "name": "North Farm 2019 satellite imagery",
+ "description": "Test job",
+ "properties": {
+ "Region": "Asia"
+ },
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "partyId": "PARTY123",
+ "credentials": {
+ "kind": "OAuthClientCredentials",
+ "clientId": "string",
+ "clientSecret": {
+ "keyVaultUri": "https://.vault.azure.net/",
+ "keyName": "string",
+ "keyVersion": "string"
+ }
+ },
+ "startDateTime": "2020-04-16T10:14:12Z",
+ "endDateTime": "2021-04-16T10:14:12Z",
+ "provider": "Microsoft",
+ "source": "Sentinel_2_L2A",
+ "data": {
+ "imageFormats": [
+ "Tif"
+ ],
+ "imageNames": [
+ "NDVI"
+ ],
+ "imageResolutions": [
+ 10.0
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_List.json
new file mode 100644
index 000000000000..ef298de7f73c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_List.json
@@ -0,0 +1,148 @@
+{
+ "parameters": {
+ "provider": "Microsoft",
+ "partyId": "PARTY123",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "source": "Sentinel_2_L2A",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "400e200f-ccc4-0cea-c120-3fdc6a41f99f",
+ "sceneDateTime": "2019-01-27T00:00:00Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "partyId": "PARTY123",
+ "provider": "Microsoft",
+ "source": "Sentinel_2_L2A",
+ "cloudCoverPercentage": 67.2,
+ "darkPixelPercentage": 2.4,
+ "imageFormat": "TIF",
+ "imageFiles": [
+ {
+ "name": "B08",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b08_10.tif"
+ },
+ {
+ "name": "B03",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b03_10.tif"
+ },
+ {
+ "name": "B11",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b11_10.tif"
+ },
+ {
+ "name": "SNW",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/snw_10.tif"
+ },
+ {
+ "name": "B05",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b05_10.tif"
+ },
+ {
+ "name": "B06",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b06_10.tif"
+ },
+ {
+ "name": "dataMask",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/datamask_10.tif"
+ },
+ {
+ "name": "B07",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b07_10.tif"
+ },
+ {
+ "name": "CLP",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/clp_10.tif"
+ },
+ {
+ "name": "NDVI",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/ndvi_10.tif"
+ },
+ {
+ "name": "SCL",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/scl_10.tif"
+ },
+ {
+ "name": "B09",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b09_10.tif"
+ },
+ {
+ "name": "B01",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b01_10.tif"
+ },
+ {
+ "name": "NDWI",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/ndwi_10.tif"
+ },
+ {
+ "name": "AOT",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/aot_10.tif"
+ },
+ {
+ "name": "CLD",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/cld_10.tif"
+ },
+ {
+ "name": "CLM",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/clm_10.tif"
+ },
+ {
+ "name": "B02",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b02_10.tif"
+ },
+ {
+ "name": "B04",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b04_10.tif"
+ },
+ {
+ "name": "B8A",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b8a_10.tif"
+ },
+ {
+ "name": "EVI",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/evi_10.tif"
+ },
+ {
+ "name": "B12",
+ "resolution": 10.0,
+ "fileLink": "https://{{resourceName}}.farmbeats.azure.net/scenes/downloadFiles?api-version=2023-06-01-preview& filePath=microsoft/sentinel_2_l2a/PARTY123/BOUNDARY123/2019-01-27/00-00-00/b12_10.tif"
+ }
+ ]
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/scenes?provider=Microsoft&partyId=PARTY123&boundaryId=BOUNDARY123&api-version=2020-10-16-preview&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7ehK8eAKzdo1PTnwcAAAAAAA%3d%3d%23RT%3a1%23TRC%3a10%23ISV%3a2%23IEO%3a65551%23FPC%3aAdOfBwAAAAAA7Z8HAAAAAAA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_SearchFeatures.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_SearchFeatures.json
new file mode 100644
index 000000000000..fe1255178686
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Scenes_SearchFeatures.json
@@ -0,0 +1,449 @@
+{
+ "parameters": {
+ "collectionId": "Sentinel_2_L2A",
+ "maxpagesize": 2,
+ "skip": 15,
+ "api-version": "2023-07-01-preview",
+ "searchFeaturesQuery": {
+ "credentials": {
+ "kind": "OAuthClientCredentials",
+ "clientId": "string",
+ "clientSecret": {
+ "keyVaultUri": "https://.vault.azure.net/",
+ "keyName": "string",
+ "keyVersion": "string"
+ }
+ },
+ "startDateTime": "2022-01-26T14:53:23.825Z",
+ "endDateTime": "2023-01-26T14:53:23.825Z",
+ "intersects": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 7.662878883920398,
+ 47.845905986476225
+ ],
+ [
+ 7.687601396600625,
+ 46.85818510350441
+ ],
+ [
+ 9.12804406196848,
+ 46.86563725992561
+ ],
+ [
+ 9.130456971517189,
+ 47.85361872819965
+ ],
+ [
+ 7.662878883920398,
+ 47.845905986476225
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "features": [
+ {
+ "stacVersion": "0.9.0",
+ "stacExtensions": [
+ "eo",
+ "projection"
+ ],
+ "id": "S2B_MSIL2A_20230121T102239_N0509_R065_T32UMU_20230121T113700",
+ "type": "Feature",
+ "geometry": {
+ "type": "MultiPolygon",
+ "crs": {
+ "type": "name",
+ "properties": {
+ "name": "urn:ogc:def:crs:OGC::CRS84"
+ }
+ },
+ "coordinates": [
+ [
+ [
+ [
+ 8.463630109874195,
+ 48.75175579972667
+ ],
+ [
+ 8.09718328627216,
+ 47.761624720018254
+ ],
+ [
+ 9.130235487170578,
+ 47.76510167563715
+ ],
+ [
+ 9.13276898152643,
+ 48.75292752793247
+ ],
+ [
+ 8.463630109874195,
+ 48.75175579972667
+ ]
+ ]
+ ]
+ ]
+ },
+ "bbox": [
+ 8.09718328627216,
+ 47.761624720018254,
+ 9.13276898152643,
+ 48.75292752793247
+ ],
+ "properties": {
+ "datetime": "2023-01-21T10:27:32Z",
+ "platform": "sentinel-2b",
+ "instruments": [
+ "msi"
+ ],
+ "constellation": "sentinel-2",
+ "eo:gsd": 10,
+ "eo:cloud_cover": 80.46,
+ "eo:bands": [
+ {
+ "name": "B01",
+ "common_name": "coastal",
+ "center_wavelength": 0.4427,
+ "full_width_half_max": 0.021
+ },
+ {
+ "name": "B02",
+ "common_name": "blue",
+ "center_wavelength": 0.4924,
+ "full_width_half_max": 0.066
+ },
+ {
+ "name": "B03",
+ "common_name": "green",
+ "center_wavelength": 0.5598,
+ "full_width_half_max": 0.036
+ },
+ {
+ "name": "B04",
+ "common_name": "red",
+ "center_wavelength": 0.6646,
+ "full_width_half_max": 0.031
+ },
+ {
+ "name": "B05",
+ "center_wavelength": 0.7041,
+ "full_width_half_max": 0.015
+ },
+ {
+ "name": "B06",
+ "center_wavelength": 0.7405,
+ "full_width_half_max": 0.015
+ },
+ {
+ "name": "B07",
+ "center_wavelength": 0.7828,
+ "full_width_half_max": 0.02
+ },
+ {
+ "name": "B08",
+ "common_name": "nir",
+ "center_wavelength": 0.8328,
+ "full_width_half_max": 0.106
+ },
+ {
+ "name": "B8A",
+ "common_name": "nir08",
+ "center_wavelength": 0.8647,
+ "full_width_half_max": 0.021
+ },
+ {
+ "name": "B09",
+ "common_name": "nir09",
+ "center_wavelength": 0.9451,
+ "full_width_half_max": 0.02
+ },
+ {
+ "name": "B11",
+ "common_name": "swir16",
+ "center_wavelength": 1.6137,
+ "full_width_half_max": 0.091
+ },
+ {
+ "name": "B12",
+ "common_name": "swir22",
+ "center_wavelength": 2.2024,
+ "full_width_half_max": 0.175
+ }
+ ],
+ "proj:epsg": 32632,
+ "proj:bbox": [
+ 399960,
+ 5290200,
+ 509760,
+ 5400000
+ ],
+ "proj:geometry": {
+ "type": "MultiPolygon",
+ "crs": {
+ "type": "name",
+ "properties": {
+ "name": "urn:ogc:def:crs:EPSG::32632"
+ }
+ },
+ "coordinates": [
+ [
+ [
+ [
+ 460574.0276522319,
+ 5399999.00024835
+ ],
+ [
+ 432344.5418597979,
+ 5290201.00021934
+ ],
+ [
+ 509758.99999999994,
+ 5290201.000219454
+ ],
+ [
+ 509759,
+ 5399999.000248388
+ ],
+ [
+ 460574.0276522319,
+ 5399999.00024835
+ ]
+ ]
+ ]
+ ]
+ }
+ },
+ "links": [
+ {
+ "href": "https://services.sentinel-hub.com/api/v1/catalog/collections/sentinel-2-l2a/items/S2B_MSIL2A_20230121T102239_N0509_R065_T32UMU_20230121T113700",
+ "rel": "self",
+ "type": "application/json"
+ },
+ {
+ "href": "https://services.sentinel-hub.com/api/v1/catalog/collections/sentinel-2-l2a",
+ "rel": "parent"
+ },
+ {
+ "href": "https://scihub.copernicus.eu/dhus/odata/v1/Products('ece4b170-065b-4d3c-a005-9c20b8f383fe')/$value",
+ "rel": "derived_from",
+ "title": "scihub download"
+ }
+ ],
+ "assets": {
+ "thumbnail": {
+ "href": "https://roda.sentinel-hub.com/sentinel-s2-l1c/tiles/32/T/MT/2023/1/4/0/preview.jpg",
+ "title": "thumbnail",
+ "type": "image/png"
+ }
+ }
+ },
+ {
+ "stacVersion": "0.9.0",
+ "stacExtensions": [
+ "eo",
+ "projection"
+ ],
+ "id": "S2B_MSIL2A_20230121T102239_N0509_R065_T32UNU_20230121T113700",
+ "type": "Feature",
+ "geometry": {
+ "type": "MultiPolygon",
+ "crs": {
+ "type": "name",
+ "properties": {
+ "name": "urn:ogc:def:crs:OGC::CRS84"
+ }
+ },
+ "coordinates": [
+ [
+ [
+ [
+ 8.999741508947052,
+ 48.753004006975516
+ ],
+ [
+ 8.999746441483957,
+ 47.76517556280485
+ ],
+ [
+ 10.46477378099951,
+ 47.7558278091967
+ ],
+ [
+ 10.493255611543965,
+ 48.743328406398774
+ ],
+ [
+ 8.999741508947052,
+ 48.753004006975516
+ ]
+ ]
+ ]
+ ]
+ },
+ "bbox": [
+ 8.999741508947052,
+ 47.7558278091967,
+ 10.493255611543965,
+ 48.753004006975516
+ ],
+ "properties": {
+ "datetime": "2023-01-21T10:27:28Z",
+ "platform": "sentinel-2b",
+ "instruments": [
+ "msi"
+ ],
+ "constellation": "sentinel-2",
+ "eo:gsd": 10,
+ "eo:cloud_cover": 95.46,
+ "eo:bands": [
+ {
+ "name": "B01",
+ "common_name": "coastal",
+ "center_wavelength": 0.4427,
+ "full_width_half_max": 0.021
+ },
+ {
+ "name": "B02",
+ "common_name": "blue",
+ "center_wavelength": 0.4924,
+ "full_width_half_max": 0.066
+ },
+ {
+ "name": "B03",
+ "common_name": "green",
+ "center_wavelength": 0.5598,
+ "full_width_half_max": 0.036
+ },
+ {
+ "name": "B04",
+ "common_name": "red",
+ "center_wavelength": 0.6646,
+ "full_width_half_max": 0.031
+ },
+ {
+ "name": "B05",
+ "center_wavelength": 0.7041,
+ "full_width_half_max": 0.015
+ },
+ {
+ "name": "B06",
+ "center_wavelength": 0.7405,
+ "full_width_half_max": 0.015
+ },
+ {
+ "name": "B07",
+ "center_wavelength": 0.7828,
+ "full_width_half_max": 0.02
+ },
+ {
+ "name": "B08",
+ "common_name": "nir",
+ "center_wavelength": 0.8328,
+ "full_width_half_max": 0.106
+ },
+ {
+ "name": "B8A",
+ "common_name": "nir08",
+ "center_wavelength": 0.8647,
+ "full_width_half_max": 0.021
+ },
+ {
+ "name": "B09",
+ "common_name": "nir09",
+ "center_wavelength": 0.9451,
+ "full_width_half_max": 0.02
+ },
+ {
+ "name": "B11",
+ "common_name": "swir16",
+ "center_wavelength": 1.6137,
+ "full_width_half_max": 0.091
+ },
+ {
+ "name": "B12",
+ "common_name": "swir22",
+ "center_wavelength": 2.2024,
+ "full_width_half_max": 0.175
+ }
+ ],
+ "proj:epsg": 32632,
+ "proj:bbox": [
+ 499980,
+ 5290200,
+ 609780,
+ 5400000
+ ],
+ "proj:geometry": {
+ "type": "MultiPolygon",
+ "crs": {
+ "type": "name",
+ "properties": {
+ "name": "urn:ogc:def:crs:EPSG::32632"
+ }
+ },
+ "coordinates": [
+ [
+ [
+ [
+ 499981,
+ 5399999.000248392
+ ],
+ [
+ 499981,
+ 5290201.000219455
+ ],
+ [
+ 609779.0000024929,
+ 5290201.000219092
+ ],
+ [
+ 609779.0000028561,
+ 5399999.000247997
+ ],
+ [
+ 499981,
+ 5399999.000248392
+ ]
+ ]
+ ]
+ ]
+ }
+ },
+ "links": [
+ {
+ "href": "https://services.sentinel-hub.com/api/v1/catalog/collections/sentinel-2-l2a/items/S2B_MSIL2A_20230121T102239_N0509_R065_T32UNU_20230121T113700",
+ "rel": "self",
+ "type": "application/json"
+ },
+ {
+ "href": "https://services.sentinel-hub.com/api/v1/catalog/collections/sentinel-2-l2a",
+ "rel": "parent"
+ },
+ {
+ "href": "https://scihub.copernicus.eu/dhus/odata/v1/Products('986643df-22f1-4c6b-be20-7db66ecbc699')/$value",
+ "rel": "derived_from",
+ "title": "scihub download"
+ }
+ ],
+ "assets": {
+ "thumbnail": {
+ "href": "https://roda.sentinel-hub.com/sentinel-s2-l1c/tiles/32/T/MT/2023/1/4/0/preview.jpg",
+ "title": "thumbnail",
+ "type": "image/png"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net//scenes/stac-collections/Sentinel_2_L2A:search?api-version={{apiVersion}}&maxpagesize=2&skip=17"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..9b800af16568
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "seasonalFieldId": "SEASONALFIELD123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "SEASONALFIELD123",
+ "resourceType": "seasonalfield"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_CreateOrUpdate.json
new file mode 100644
index 000000000000..5faa45206311
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_CreateOrUpdate.json
@@ -0,0 +1,174 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "seasonalFieldId": "SEASONALFIELD123",
+ "api-version": "2023-07-01-preview",
+ "seasonalField": {
+ "farmId": "FARM123",
+ "fieldId": "FIELD123",
+ "seasonId": "WINTER_WHEAT_2021",
+ "cropId": "WHEAT",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Seasonal Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "SEASONALFIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "fieldId": "FIELD123",
+ "seasonId": "WINTER_WHEAT_2021",
+ "cropId": "WHEAT",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Seasonal Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "SEASONALFIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "fieldId": "FIELD123",
+ "seasonId": "WINTER_WHEAT_2021",
+ "cropId": "WHEAT",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Seasonal Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Delete.json
new file mode 100644
index 000000000000..5e23fc44b0e4
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "seasonalFieldId": "SEASONALFIELD123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Get.json
new file mode 100644
index 000000000000..ed43856c05e3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Get.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "seasonalFieldId": "SEASONALFIELD123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "SEASONALFIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "fieldId": "FIELD123",
+ "seasonId": "WINTER_WHEAT_2021",
+ "cropId": "WHEAT",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Seasonal Field",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..216cfe4cf362
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "SEASONALFIELD123",
+ "resourceType": "seasonalfield"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Search.json
new file mode 100644
index 000000000000..71ed384c6d0d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SeasonalFields_Search.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchSeasonalFieldQuery": {
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "SEASONALFIELD123",
+ "partyId": "PARTY123",
+ "farmId": "FARM123",
+ "fieldId": "FIELD123",
+ "seasonId": "WINTER_WHEAT_2021",
+ "cropId": "WHEAT",
+ "name": "John Smith's Seasonal Field",
+ "status": "Active",
+ "description": "Some description",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_CreateOrUpdate.json
new file mode 100644
index 000000000000..2cde0b4577ec
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_CreateOrUpdate.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "seasonId": "SEASON123",
+ "season": {
+ "startDateTime": "2021-04-22T17:56:28Z",
+ "endDateTime": "2021-04-22T17:56:28Z",
+ "year": 2012,
+ "status": "Active",
+ "name": "John Smith's Season",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "startDateTime": "2021-04-22T17:50:26Z",
+ "endDateTime": "2021-04-22T17:50:26Z",
+ "year": 2012,
+ "id": "SEASON123",
+ "name": "John Smith's Season",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "startDateTime": "2021-04-22T17:50:26Z",
+ "endDateTime": "2021-04-22T17:50:26Z",
+ "year": 2012,
+ "id": "SEASON123",
+ "name": "John Smith's Season",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_Delete.json
new file mode 100644
index 000000000000..9802e9fba34e
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_Delete.json
@@ -0,0 +1,9 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "seasonId": "SEASON123"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_Get.json
new file mode 100644
index 000000000000..3d85d7c8bdbc
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "seasonId": "SEASON123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "startDateTime": "2021-04-22T17:50:26Z",
+ "endDateTime": "2021-04-22T17:50:26Z",
+ "year": 2012,
+ "id": "SEASON123",
+ "name": "John Smith's Season",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_List.json
new file mode 100644
index 000000000000..c54a8c28fdea
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Seasons_List.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "startDateTime": "2021-04-22T17:50:26Z",
+ "endDateTime": "2021-04-22T17:50:26Z",
+ "year": 2012,
+ "id": "SEASON123",
+ "name": "John Smith's Season",
+ "status": "Active",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes",
+ "RetailerId": "Retailer123"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/parties/{{partyId}}/seasonalFields/{{seasonalFieldId}}?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_CreateOrUpdate.json
new file mode 100644
index 000000000000..128a794d7b2b
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_CreateOrUpdate.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "sensorDataModelId": "sdm124",
+ "api-version": "2023-07-01-preview",
+ "sensorDataModelObject": {
+ "type": "Sensor",
+ "manufacturer": "Some sensor manufacturer",
+ "productCode": "soil m",
+ "measures": {
+ "soilMoisture": {
+ "description": "measures soil moisture",
+ "dataType": "Bool",
+ "type": "sm",
+ "unit": "none",
+ "properties": {
+ "abc": "def",
+ "elevation": 5
+ }
+ }
+ },
+ "status": "new",
+ "name": "my sdm for soil moisture",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Sensor",
+ "manufacturer": "Some sensor manufacturer",
+ "productCode": "soil m",
+ "measures": {
+ "soilMoisture": {
+ "description": "measures soil moisture",
+ "dataType": "Bool",
+ "type": "sm",
+ "unit": "none",
+ "properties": {
+ "abc": "def",
+ "elevation": 5
+ }
+ }
+ },
+ "sensorPartnerId": "sp1",
+ "id": "sdm124",
+ "status": "new",
+ "createdDateTime": "2022-01-24T06:12:15Z",
+ "modifiedDateTime": "2022-01-24T06:12:42Z",
+ "eTag": "040161a2-0000-0700-0000-61ee435a0000",
+ "name": "my sdm for soil moisture",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "type": "Sensor",
+ "manufacturer": "Some sensor manufacturer",
+ "productCode": "soil m",
+ "measures": {
+ "soilMoisture": {
+ "description": "measures soil moisture",
+ "dataType": "Bool",
+ "type": "sm",
+ "unit": "none",
+ "properties": {
+ "abc": "def",
+ "elevation": 5
+ }
+ }
+ },
+ "sensorPartnerId": "sp1",
+ "id": "sdm124",
+ "status": "new",
+ "createdDateTime": "2022-01-24T06:12:15Z",
+ "modifiedDateTime": "2022-01-24T06:12:15Z",
+ "eTag": "040158a0-0000-0700-0000-61ee433f0000",
+ "name": "my sdm for soil moisture",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_Delete.json
new file mode 100644
index 000000000000..bd66f44f5698
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "sensorDataModelId": "ddm124",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_Get.json
new file mode 100644
index 000000000000..3d048fc4be97
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_Get.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1",
+ "sensorDataModelId": "sdm124"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Sensor",
+ "manufacturer": "Some sensor manufacturer",
+ "productCode": "soil m",
+ "measures": {
+ "soilMoisture": {
+ "description": "measures soil moisture",
+ "dataType": "Bool",
+ "type": "sm",
+ "unit": "none",
+ "properties": {
+ "abc": "def",
+ "elevation": 5
+ }
+ }
+ },
+ "sensorPartnerId": "sp1",
+ "id": "sdm124",
+ "status": "new",
+ "createdDateTime": "2022-01-24T06:12:15Z",
+ "modifiedDateTime": "2022-01-24T06:12:42Z",
+ "eTag": "040161a2-0000-0700-0000-61ee435a0000",
+ "name": "my sdm for soil moisture",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_List.json
new file mode 100644
index 000000000000..eaf48079ff94
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorDataModels_List.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "type": "Sensor",
+ "manufacturer": "Some sensor manufacturer",
+ "productCode": "soil m",
+ "measures": {
+ "soilMoisture": {
+ "description": "measures soil moisture",
+ "dataType": "Bool",
+ "type": "sm",
+ "unit": "none",
+ "properties": {
+ "abc": "def",
+ "elevation": 5
+ }
+ }
+ },
+ "sensorPartnerId": "sp1",
+ "id": "sdm124",
+ "status": "new",
+ "createdDateTime": "2022-01-24T06:12:15Z",
+ "modifiedDateTime": "2022-01-24T06:12:42Z",
+ "eTag": "040161a2-0000-0700-0000-61ee435a0000",
+ "name": "my sdm for soil moisture",
+ "description": "description goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/{{sensorPartnerId}}/sensor-data-models?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorEvents_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorEvents_List.json
new file mode 100644
index 000000000000..fa1988d100c3
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorEvents_List.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorId": "S124",
+ "sensorPartnerId": "Davis",
+ "startDateTime": "2018-01-01T00:00:43Z",
+ "endDateTime": "2019-01-01T00:00:43Z",
+ "excludeDuplicateEvents": true
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "prbhad-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "eventDateTime": "2018-01-01T00:30:00Z",
+ "ingestionDateTime": "2021-09-20T05:56:09Z",
+ "measures": {
+ "soil_moisture": {
+ "unit": "m",
+ "value": 30.1
+ }
+ }
+ },
+ {
+ "partyId": "prbhad-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "eventDateTime": "2018-01-01T00:31:00Z",
+ "ingestionDateTime": "2021-09-20T05:56:09Z",
+ "measures": {
+ "soil_moisture": {
+ "unit": "m",
+ "value": 31.1
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_CreateOrUpdate.json
new file mode 100644
index 000000000000..f5ff4230c7cf
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_CreateOrUpdate.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "sensorMappingId": "sm124",
+ "api-version": "2023-07-01-preview",
+ "sensorMappingObject": {
+ "sensorId": "s124",
+ "sensorPartnerId": "sp1",
+ "partyId": "aksaxena-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "status": "sensor map created",
+ "name": "my new sensor map",
+ "description": "description for mapping",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sensorId": "s124",
+ "sensorPartnerId": "sp1",
+ "partyId": "aksaxena-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "id": "sm124",
+ "status": "sensor map created",
+ "createdDateTime": "2022-01-24T06:40:48Z",
+ "modifiedDateTime": "2022-01-24T06:41:05Z",
+ "eTag": "0501f236-0000-0700-0000-61ee4a010000",
+ "name": "my new sensor map",
+ "description": "description for mapping",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "sensorId": "s124",
+ "sensorPartnerId": "sp1",
+ "partyId": "aksaxena-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "id": "sm124",
+ "status": "sensor map created",
+ "createdDateTime": "2022-01-24T06:40:48Z",
+ "modifiedDateTime": "2022-01-24T06:40:48Z",
+ "eTag": "05018f35-0000-0700-0000-61ee49f00000",
+ "name": "my new sensor map",
+ "description": "description for mapping",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_Delete.json
new file mode 100644
index 000000000000..6c27758ba85a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_Delete.json
@@ -0,0 +1,9 @@
+{
+ "parameters": {
+ "sensorMappingId": "sm124",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_Get.json
new file mode 100644
index 000000000000..5bf7c771e68c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_Get.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorMappingId": "sm124"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sensorId": "s124",
+ "sensorPartnerId": "sp1",
+ "partyId": "aksaxena-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "id": "sm124",
+ "status": "sensor map created",
+ "createdDateTime": "2022-01-24T06:40:48Z",
+ "modifiedDateTime": "2022-01-24T06:41:05Z",
+ "eTag": "0501f236-0000-0700-0000-61ee4a010000",
+ "name": "my new sensor map",
+ "description": "description for mapping",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_List.json
new file mode 100644
index 000000000000..485252235254
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorMappings_List.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "sensorId": "s124",
+ "sensorPartnerId": "sp1",
+ "partyId": "aksaxena-party",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "id": "sm124",
+ "status": "sensor map created",
+ "createdDateTime": "2022-01-24T06:40:48Z",
+ "modifiedDateTime": "2022-01-24T06:41:05Z",
+ "eTag": "0501f236-0000-0700-0000-61ee4a010000",
+ "name": "my new sensor map",
+ "description": "description for mapping",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/{{sensorPartnerId}}/sensor-data-models?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_CheckConsent.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_CheckConsent.json
new file mode 100644
index 000000000000..ba61278d605a
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_CheckConsent.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "Davis",
+ "integrationId": "I123",
+ "key": "CuDBfxEiFdTJFk40MNVMO22zvLBG7CA8",
+ "body": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "consented": true,
+ "sensorPartnerId": "Davis",
+ "integrationId": "I123"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_CreateOrUpdate.json
new file mode 100644
index 000000000000..34f70ef4b602
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_CreateOrUpdate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "Davis",
+ "integrationId": "I123",
+ "sensorPartnerIntegrationModel": {
+ "partyId": "prbhad-party",
+ "status": "string",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "integrationId": "I123",
+ "partyId": "prbhad-party",
+ "sensorPartnerId": "Davis",
+ "id": "I123",
+ "status": "string",
+ "createdDateTime": "2021-11-22T05:07:14Z",
+ "modifiedDateTime": "2022-03-16T11:38:45Z",
+ "eTag": "73023740-0000-0700-0000-6231cc450000",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "integrationId": "I123",
+ "partyId": "prbhad-party",
+ "sensorPartnerId": "Davis",
+ "id": "I123",
+ "status": "string",
+ "createdDateTime": "2022-03-16T11:39:41Z",
+ "modifiedDateTime": "2022-03-16T11:39:41Z",
+ "eTag": "73023a53-0000-0700-0000-6231cc7d0000",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_Delete.json
new file mode 100644
index 000000000000..35113d3532d1
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "sensorPartnerId": "Davis",
+ "integrationId": "I123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_GenerateConsentLink.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_GenerateConsentLink.json
new file mode 100644
index 000000000000..702c8e5e3546
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_GenerateConsentLink.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "Davis",
+ "integrationId": "I123",
+ "body": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "consentLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/Davis/integrations/I123/:check-consent?key=CuDBfxEiFdTJFk40MNVMO22zvLBG7CA8&apiVersion=2023-06-01-preview",
+ "consentExpiryDateTime": "2022-03-17T11:56:40Z"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_Get.json
new file mode 100644
index 000000000000..a65cd0dc7da0
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_Get.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "Davis",
+ "integrationId": "I123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "integrationId": "I123",
+ "partyId": "prbhad-party",
+ "sensorPartnerId": "Davis",
+ "id": "I123",
+ "status": "string",
+ "createdDateTime": "2021-11-22T05:07:14Z",
+ "modifiedDateTime": "2022-03-16T11:38:45Z",
+ "eTag": "73023740-0000-0700-0000-6231cc450000",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_List.json
new file mode 100644
index 000000000000..4a5a3aa815d9
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SensorPartnerIntegrations_List.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "sensorPartnerId": "Davis",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "integrationId": "I123",
+ "partyId": "prbhad-party",
+ "sensorPartnerId": "Davis",
+ "id": "I123",
+ "status": "string",
+ "createdDateTime": "2021-11-22T05:07:14Z",
+ "modifiedDateTime": "2022-01-04T11:17:08Z",
+ "eTag": "8900a6d8-0000-0700-0000-61d42cb40000",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ },
+ {
+ "integrationId": "I456",
+ "partyId": "prbhad-party2",
+ "sensorPartnerId": "Davis",
+ "id": "I456",
+ "status": "string",
+ "createdDateTime": "2022-01-12T10:33:54Z",
+ "modifiedDateTime": "2022-01-12T10:33:54Z",
+ "eTag": "8d014fe2-0000-0700-0000-61deae920000",
+ "name": "string",
+ "description": "string",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "string",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/Davis/integrations?maxPageSize=10&api-version=2023-06-01-preview&skipToken=W3sidG9rZW4iOiIrUklEOn4xQ1VyQU9zRU8zMXZucGdCQUFBQUFBPT0jUlQ6MSNUUkM6MTAjSVNWOjIjSUVPOjY1NTUxI1FDRjo0I0ZQQzpBZ0ppQm1JR1lnWUVBRytlRDRBPSIsInJhbmdlIjp7Im1pbiI6IiIsIm1heCI6IkZGIn19XQ"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_CreateOrUpdate.json
new file mode 100644
index 000000000000..e4d39d2781cc
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_CreateOrUpdate.json
@@ -0,0 +1,89 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "sensorId": "s124",
+ "api-version": "2023-07-01-preview",
+ "sensorDetails": {
+ "sensorDataModelId": "sdm124",
+ "integrationId": "string",
+ "hardwareId": "SMHD 456",
+ "deviceId": "d124",
+ "type": "SM",
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "port": {
+ "name": "measure",
+ "type": "digital"
+ },
+ "status": "sm created",
+ "name": "my new sm",
+ "description": "description for sensor goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sensorDataModelId": "sdm124",
+ "integrationId": "string",
+ "hardwareId": "SMHD-456",
+ "deviceId": "d124",
+ "type": "SM",
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "port": {
+ "name": "measure",
+ "type": "digital"
+ },
+ "sensorPartnerId": "sp1",
+ "id": "s124",
+ "status": "sm created",
+ "createdDateTime": "2022-01-24T06:27:05Z",
+ "modifiedDateTime": "2022-01-24T06:27:05Z",
+ "eTag": "040139eb-0000-0700-0000-61ee46b90000",
+ "name": "my new sm",
+ "description": "description for sensor goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "sensorDataModelId": "sdm124",
+ "integrationId": "string",
+ "hardwareId": "SMHD-456",
+ "deviceId": "d124",
+ "type": "SM",
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "port": {
+ "name": "measure",
+ "type": "digital"
+ },
+ "sensorPartnerId": "sp1",
+ "id": "s124",
+ "status": "sm created",
+ "createdDateTime": "2022-01-24T06:27:05Z",
+ "modifiedDateTime": "2022-01-24T06:27:05Z",
+ "eTag": "040139eb-0000-0700-0000-61ee46b90000",
+ "name": "my new sm",
+ "description": "description for sensor goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_Delete.json
new file mode 100644
index 000000000000..2010825c44d0
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "sensorPartnerId": "sp1",
+ "sensorId": "s124",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_Get.json
new file mode 100644
index 000000000000..534d067396d8
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_Get.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1",
+ "sensorId": "s124"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sensorDataModelId": "sdm124",
+ "integrationId": "string",
+ "hardwareId": "SMHD-456",
+ "deviceId": "d124",
+ "type": "SM",
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "port": {
+ "name": "measure",
+ "type": "digital"
+ },
+ "sensorPartnerId": "sp1",
+ "id": "s124",
+ "status": "sm created",
+ "createdDateTime": "2022-01-24T06:27:05Z",
+ "modifiedDateTime": "2022-01-24T06:27:31Z",
+ "eTag": "04019fed-0000-0700-0000-61ee46d30000",
+ "name": "my new sm",
+ "description": "description for sensor goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_GetConnectionString.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_GetConnectionString.json
new file mode 100644
index 000000000000..72d86437b6ab
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_GetConnectionString.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1",
+ "sensorId": "s124",
+ "body": {
+ "connectionStringType": "Primary"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "primaryDeviceConnectionString": "HostName=iothubName.azure-devices.net;DeviceId=809f4379-b4d3-de01-6425-f088de6645f5;SharedAccessKey=****",
+ "secondaryDeviceConnectionString": "HostName=iothubName.azure-devices.net;DeviceId=809f4379-b4d3-de01-6425-f088de6645f5;SharedAccessKey=****"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_List.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_List.json
new file mode 100644
index 000000000000..7d4f22bc00e6
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_List.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "sensorDataModelId": "sdm124",
+ "integrationId": "string",
+ "hardwareId": "SMHD-456",
+ "deviceId": "d124",
+ "type": "SM",
+ "location": {
+ "latitude": 23.5,
+ "longitude": 42.7
+ },
+ "port": {
+ "name": "measure",
+ "type": "digital"
+ },
+ "sensorPartnerId": "sp1",
+ "id": "s124",
+ "status": "sm created",
+ "createdDateTime": "2022-01-24T06:27:05Z",
+ "modifiedDateTime": "2022-01-24T06:27:31Z",
+ "eTag": "04019fed-0000-0700-0000-61ee46d30000",
+ "name": "my new sm",
+ "description": "description for sensor goes here",
+ "properties": {
+ "key1": "value1",
+ "key2": 123.45
+ }
+ }
+ ],
+ "skipToken": "skipToken",
+ "nextLink": "https://{{resourceName}}.farmbeats.azure.net/sensor-partners/{{sensorPartnerId}}/device-data-models?api-version={{apiVersion}}&skipToken=%5b%7b%22token%22%3a%22%2bRID%3a%7e23TRC%3a10%23ISA%3d%22%2c%22range%22%3a%7b%22min%22%3a%22%22%2c%22max%22%3a%22FF%22%7d%7d%5d"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_RenewConnectionString.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_RenewConnectionString.json
new file mode 100644
index 000000000000..346eec6efd6e
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Sensors_RenewConnectionString.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "sensorPartnerId": "sp1",
+ "sensorId": "s124",
+ "renewConnectionStringModel": {
+ "connectionStringType": "Primary"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "primaryDeviceConnectionString": "HostName=iothubName.azure-devices.net;DeviceId=809f4379-b4d3-de01-6425-f088de6645f5;SharedAccessKey=****",
+ "secondaryDeviceConnectionString": "HostName=iothubName.azure-devices.net;DeviceId=809f4379-b4d3-de01-6425-f088de6645f5;SharedAccessKey=****"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_Cancel.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_Cancel.json
new file mode 100644
index 000000000000..1d43b05f2f3d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_Cancel.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "solutionId": "solution.solutionId",
+ "jobId": "jobId",
+ "requestPath": "/v1/resources/jobId",
+ "api-version": "2023-07-01-preview",
+ "solutionInferenceRequest": {
+ "requestPath": "string"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "requestPath": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_CreateOrUpdate.json
new file mode 100644
index 000000000000..7a340920aee2
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_CreateOrUpdate.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "solutionId": "solution.solutionId",
+ "jobId": "jobId",
+ "requestPath": "/v1/resources/jobId",
+ "api-version": "2023-07-01-preview",
+ "solutionInferenceRequest": {
+ "requestPath": "string"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "location"
+ },
+ "body": {
+ "requestPath": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_Fetch.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_Fetch.json
new file mode 100644
index 000000000000..878683981848
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/SolutionInference_Fetch.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "solutionId": "solution.solutionId",
+ "jobId": "jobId",
+ "requestPath": "/v1/resources/jobId",
+ "solutionInferenceRequest": {
+ "requestPath": "string"
+ },
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "source": "Manual",
+ "name": "Application data for North Farm",
+ "description": "some description"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..fa0cb9503602
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_CreateCascadeDeleteJob.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "tillageDataId": "TillageData123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Waiting",
+ "message": "Created cascade delete job for 'farmoperationtillagedata' resource with id 'TillageData123' and partyId 'PARTY123'.",
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "TillageData123",
+ "resourceType": "farmoperationtillagedata"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_CreateOrUpdate.json
new file mode 100644
index 000000000000..8d067e07bbc5
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_CreateOrUpdate.json
@@ -0,0 +1,215 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "tillageDataId": "TILLAGEOP123",
+ "tillageData": {
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "tillagePressure": {
+ "unit": "kg per sq cms",
+ "value": 950
+ },
+ "tillageDepth": {
+ "unit": "cms",
+ "value": 9.5
+ },
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "TILLAGEOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "tillagePressure": {
+ "unit": "kg per sq cms",
+ "value": 950
+ },
+ "tillageDepth": {
+ "unit": "cms",
+ "value": 9.5
+ },
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "TILLAGEOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:12:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "tillagePressure": {
+ "unit": "kg per sq cms",
+ "value": 950
+ },
+ "tillageDepth": {
+ "unit": "cms",
+ "value": 9.5
+ },
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Delete.json
new file mode 100644
index 000000000000..3feeeeb28bcc
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "tillageDataId": "TILLAGEOP123"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Get.json
new file mode 100644
index 000000000000..c63576515add
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Get.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "tillageDataId": "TILLAGEOP123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "TILLAGEOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FIELD123"
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "tillagePressure": {
+ "unit": "kg per sq cms",
+ "value": 950
+ },
+ "tillageDepth": {
+ "unit": "cms",
+ "value": 9.5
+ },
+ "properties": {
+ "Region": "Asia",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..9b75fd27931d
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "partyId": "PARTY123",
+ "resourceId": "TillageData123",
+ "resourceType": "farmoperationtillagedata"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Search.json
new file mode 100644
index 000000000000..6d7a2bf2ca1c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/TillageData_Search.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchFarmOperationQuery": {
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "TILLAGEOP123",
+ "source": "Manual",
+ "name": "Planting data for North Farm",
+ "description": "some description",
+ "status": "Active",
+ "operationStartDateTime": "2021-02-25T16:57:04Z",
+ "operationEndDateTime": "2021-02-27T10:13:06Z",
+ "operationModifiedDateTime": "2021-02-28T10:14:12Z",
+ "associatedResource": {
+ "type": "Field",
+ "id": "FieldId"
+ },
+ "area": {
+ "unit": "acre",
+ "value": 30
+ },
+ "tillagePressure": {
+ "unit": "kg per sq cms",
+ "value": 950
+ },
+ "tillageDepth": {
+ "unit": "cms",
+ "value": 9.5
+ },
+ "properties": {
+ "Region": "Europe",
+ "CountyCode": 123
+ },
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "cb00a3ac-0000-0100-0000-601d21ec0000"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/WeatherData_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/WeatherData_Get.json
new file mode 100644
index 000000000000..625462d7e33e
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/WeatherData_Get.json
@@ -0,0 +1,136 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "weatherDataProviderRequest": {
+ "extensionId": "IBM.TWC",
+ "extensionApiName": "currents-on-demand",
+ "locations": [
+ {
+ "type": "LatLong",
+ "value": "33,-97"
+ }
+ ],
+ "language": "en-US",
+ "units": "e",
+ "credentials": {
+ "kind": "ApiKeyAuthCredentials",
+ "apiKey": {
+ "keyVaultUri": "https://.vault.azure.net/",
+ "keyName": "string",
+ "keyVersion": "string"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "weatherMetadata": {
+ "extensionVersion": "1.0",
+ "weatherDataType": "current",
+ "extensionId": "IBM.TWC",
+ "extensionApiName": "currents-on-demand",
+ "units": "e"
+ },
+ "status": "Succeeded",
+ "locations": [
+ {
+ "location": {
+ "type": "LatLong",
+ "value": "33,-97"
+ },
+ "lastRefreshedDateTime": "2023-02-09T13:02:20Z",
+ "data": {
+ "dayOfWeek": [
+ "Wednesday"
+ ],
+ "dayOrNight": [
+ "Night"
+ ],
+ "pressureMeanSeaLevel": {
+ "unit": "inches of mercury",
+ "values": [
+ 1021.1
+ ]
+ },
+ "relativeHumidity": {
+ "unit": "percentage",
+ "values": [
+ 84
+ ]
+ },
+ "temperature": {
+ "unit": "fahrenheit",
+ "values": [
+ 49
+ ]
+ },
+ "temperatureDewPoint": {
+ "unit": "fahrenheit",
+ "values": [
+ 44
+ ]
+ },
+ "temperatureFeelsLike": {
+ "unit": "fahrenheit",
+ "values": [
+ 47
+ ]
+ },
+ "temperatureHeatIndex": {
+ "unit": "fahrenheit",
+ "values": [
+ 49
+ ]
+ },
+ "temperatureWindChill": {
+ "unit": "fahrenheit",
+ "values": [
+ 47
+ ]
+ },
+ "uvDescription": [
+ "Low"
+ ],
+ "uvIndex": [
+ 0
+ ],
+ "visibility": {
+ "unit": "miles",
+ "values": [
+ 10
+ ]
+ },
+ "windDirection": {
+ "unit": "degree",
+ "values": [
+ 150
+ ]
+ },
+ "windGust": {
+ "unit": "miles/hour",
+ "values": [
+ 0
+ ]
+ },
+ "windSpeed": {
+ "unit": "miles/hour",
+ "values": [
+ 4
+ ]
+ },
+ "additionalAttributes": {
+ "cloudCoverPhrase": [
+ "Partly Cloudy"
+ ]
+ }
+ }
+ }
+ ],
+ "errors": {
+ "locations": []
+ }
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_CreateCascadeDeleteJob.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_CreateCascadeDeleteJob.json
new file mode 100644
index 000000000000..940f38acda09
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_CreateCascadeDeleteJob.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "zoneId": "ZONE123",
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "ZONE123",
+ "resourceType": "zone"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_CreateOrUpdate.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_CreateOrUpdate.json
new file mode 100644
index 000000000000..dc785957a834
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_CreateOrUpdate.json
@@ -0,0 +1,165 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "zoneId": "Zone123",
+ "api-version": "2023-07-01-preview",
+ "zone": {
+ "managementZoneId": "ManagementZone123",
+ "type": "Nutrient rich",
+ "status": "Active",
+ "name": "John Smith's Zone",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "Zone123",
+ "managementZoneId": "ManagementZone123",
+ "type": "Nutrient rich",
+ "status": "Active",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Zone",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ },
+ "201": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "Zone123",
+ "managementZoneId": "ManagementZone123",
+ "type": "Nutrient rich",
+ "status": "Active",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "name": "John Smith's Zone",
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Delete.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Delete.json
new file mode 100644
index 000000000000..549ed048ad65
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Delete.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "partyId": "PARTY123",
+ "zoneId": "Zone123",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Get.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Get.json
new file mode 100644
index 000000000000..6882cf07358c
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Get.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "partyId": "PARTY123",
+ "zoneId": "Zone123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "partyId": "PARTY123",
+ "id": "Zone123",
+ "managementZoneId": "ManagementZone123",
+ "type": "Nutrient rich",
+ "status": "Active",
+ "name": "John Smith's Zone",
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ },
+ "description": "Some description",
+ "source": "source",
+ "properties": {
+ "Irrigated": "Yes"
+ },
+ "createdDateTime": "2021-04-21T06:49:30Z",
+ "modifiedDateTime": "2021-04-21T06:49:30Z",
+ "createdBy": "00000000-0000-0000-0000-000000000000",
+ "modifiedBy": "00000000-0000-0000-0000-000000000000",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_GetCascadeDeleteJobDetails.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_GetCascadeDeleteJobDetails.json
new file mode 100644
index 000000000000..21c4bdcf10ca
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_GetCascadeDeleteJobDetails.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "jobId": "JOB123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JOB123",
+ "status": "Succeeded",
+ "message": "Job completed successfully.",
+ "durationInSeconds": 14.7977857,
+ "createdDateTime": "2021-04-19T11:31:20Z",
+ "lastActionDateTime": "2021-04-19T11:31:34Z",
+ "startTime": "2021-04-19T11:31:19Z",
+ "endTime": "2021-04-19T11:31:34Z",
+ "partyId": "PARTY123",
+ "resourceId": "ZONE123",
+ "resourceType": "zone"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Search.json b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Search.json
new file mode 100644
index 000000000000..067c363f0022
--- /dev/null
+++ b/specification/agrifood/data-plane/Microsoft.AgFoodPlatform/preview/2023-07-01-preview/examples/Zones_Search.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "maxPageSize": 50,
+ "skipToken": "string",
+ "searchZoneQuery": {
+ "intersectsWithGeometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ],
+ [
+ 73.70448589324951,
+ 20.542411534243367
+ ],
+ [
+ 73.70877742767334,
+ 20.541688176010233
+ ],
+ [
+ 73.71023654937744,
+ 20.545083911372505
+ ],
+ [
+ 73.70663166046143,
+ 20.546992723579137
+ ],
+ [
+ 73.70457172393799,
+ 20.545385304358106
+ ]
+ ]
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "partyId": "PARTY123",
+ "id": "Zone123",
+ "managementZoneId": "ManagementZone123",
+ "type": "Nutrient rich",
+ "status": "Active",
+ "source": "Agronomist",
+ "name": "John Smith",
+ "description": "Some description",
+ "createdDateTime": "2022-05-11T07:00:10.2750191Z",
+ "modifiedDateTime": "2022-05-11T07:00:10.2750191Z",
+ "eTag": "0f8fad5b-d9cb-469f-a165-70867728950e"
+ }
+ ],
+ "skipToken": "string"
+ }
+ }
+ }
+}
diff --git a/specification/agrifood/data-plane/readme.md b/specification/agrifood/data-plane/readme.md
index e46fff3a7125..a46038857b25 100644
--- a/specification/agrifood/data-plane/readme.md
+++ b/specification/agrifood/data-plane/readme.md
@@ -27,7 +27,7 @@ These are the global settings for the agfood.
```yaml
openapi-type: data-plane
-tag: package-2023-06-01-preview
+tag: package-2023-07-01-preview
directive:
- suppress: LongRunningResponseStatusCode
@@ -79,6 +79,15 @@ input-file:
- Microsoft.AgFoodPlatform/preview/2023-06-01-preview/agfood.json
```
+### Tag: package-2023-07-01-preview
+
+These settings apply only when `--tag=package-2023-07-01-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-07-01-preview'
+input-file:
+ - Microsoft.AgFoodPlatform/preview/2023-07-01-preview/agfood.json
+```
+
# Code Generation
## Swagger to SDK
diff --git a/specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/agfood.json b/specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/agfood.json
index e71b73b5e034..45eb8e9fc046 100644
--- a/specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/agfood.json
+++ b/specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/agfood.json
@@ -1876,19 +1876,16 @@
"allOf": [
{
"$ref": "#/definitions/AuthCredentials"
- },
- {
- "required": [
- "apiKey"
- ],
- "type": "object",
- "properties": {
- "apiKey": {
- "$ref": "#/definitions/KeyVaultProperties"
- }
- }
}
],
+ "required": [
+ "apiKey"
+ ],
+ "properties": {
+ "apiKey": {
+ "$ref": "#/definitions/KeyVaultProperties"
+ }
+ },
"x-ms-discriminator-value": "ApiKeyAuthCredentials"
},
"ApiProperties": {
@@ -2577,25 +2574,22 @@
"allOf": [
{
"$ref": "#/definitions/AuthCredentials"
- },
- {
- "required": [
- "clientId",
- "clientSecret"
- ],
- "type": "object",
- "properties": {
- "clientId": {
- "description": "ClientId associated with the provider.",
- "minLength": 1,
- "type": "string"
- },
- "clientSecret": {
- "$ref": "#/definitions/KeyVaultProperties"
- }
- }
}
],
+ "required": [
+ "clientId",
+ "clientSecret"
+ ],
+ "properties": {
+ "clientId": {
+ "description": "ClientId associated with the provider.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "clientSecret": {
+ "$ref": "#/definitions/KeyVaultProperties"
+ }
+ },
"x-ms-discriminator-value": "OAuthClientCredentials"
},
"PublicNetworkAccess": {
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
index 843fdfe1a456..8fde816481be 100644
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
+++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
@@ -19,7 +19,7 @@
"field": "essentials.alertRule"
}
],
- "correlationInterval": "00:30:00",
+ "correlationInterval": "PT30M",
"priority": 50,
"notificationsForCorrelatedAlerts": "SuppressAlways"
}
@@ -52,7 +52,7 @@
"field": "essentials.alertRule"
}
],
- "correlationInterval": "00:30:00",
+ "correlationInterval": "PT30M",
"priority": 50,
"notificationsForCorrelatedAlerts": "SuppressAlways"
}
@@ -89,7 +89,7 @@
"field": "essentials.alertRule"
}
],
- "correlationInterval": "00:30:00",
+ "correlationInterval": "PT30M",
"priority": 50,
"notificationsForCorrelatedAlerts": "SuppressAlways"
}
diff --git a/specification/apicenter/resource-manager/readme.python.md b/specification/apicenter/resource-manager/readme.python.md
index 11f22bed5a6f..ca0545ca2c3a 100644
--- a/specification/apicenter/resource-manager/readme.python.md
+++ b/specification/apicenter/resource-manager/readme.python.md
@@ -4,6 +4,7 @@ These settings apply only when `--python` is specified on the command line.
Please also specify `--python-sdks-folder=`.
``` yaml $(python)
+title: ApiCenterMgmtClient
azure-arm: true
license-header: MICROSOFT_MIT_NO_VERSION
package-name: azure-mgmt-apicenter
diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAuthorizationProviderGenericOAuth2.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAuthorizationProviderGenericOAuth2.json
index cf2a5e26584c..d317a2e0a6d2 100644
--- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAuthorizationProviderGenericOAuth2.json
+++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAuthorizationProviderGenericOAuth2.json
@@ -15,7 +15,7 @@
"authorizationCode": {
"clientId": "ZYIJTBTABHOUQQDLZY",
"clientSecret": "Q3iPSaKQ~fZFcJk5vKmqzUAfJagcJ8",
- "scopes": null,
+ "scopes": "",
"authorizationUrl": "https://www.eventbrite.com/oauth/authorize",
"refreshUrl": "https://www.eventbrite.com/oauth/token",
"tokenUrl": "https://www.eventbrite.com/oauth/token"
@@ -39,7 +39,7 @@
"grantTypes": {
"authorizationCode": {
"clientId": "ZYIJTBTABHOUQQDLZY",
- "scopes": null,
+ "scopes": "",
"authorizationUrl": "https://www.eventbrite.com/oauth/authorize",
"refreshUrl": "https://www.eventbrite.com/oauth/token",
"tokenUrl": "https://www.eventbrite.com/oauth/token"
@@ -62,7 +62,7 @@
"grantTypes": {
"authorizationCode": {
"clientId": "ZYIJTBTABHOUQQDLZY",
- "scopes": null,
+ "scopes": "",
"authorizationUrl": "https://www.eventbrite.com/oauth/authorize",
"refreshUrl": "https://www.eventbrite.com/oauth/token",
"tokenUrl": "https://www.eventbrite.com/oauth/token"
diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementDeleteDocumentation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementDeleteDocumentation.json
index abe4d12da7dc..5a19c72f7805 100644
--- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementDeleteDocumentation.json
+++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementDeleteDocumentation.json
@@ -4,7 +4,8 @@
"resourceGroupName": "rg1",
"api-version": "2022-08-01",
"subscriptionId": "subid",
- "documentationId": "57d1f7558aa04f15146d9d8a"
+ "documentationId": "57d1f7558aa04f15146d9d8a",
+ "If-Match": "*"
},
"responses": {
"200": {},
diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementListAuthorizationProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementListAuthorizationProviders.json
index 861402e86a99..203cb0f0cd35 100644
--- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementListAuthorizationProviders.json
+++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementListAuthorizationProviders.json
@@ -80,7 +80,7 @@
"grantTypes": {
"authorizationCode": {
"clientId": "ZYIJTBTABHOUQQDLZY",
- "scopes": null,
+ "scopes": "",
"authorizationUrl": "https://www.eventbrite.com/oauth/authorize",
"refreshUrl": "https://www.eventbrite.com/oauth/token",
"tokenUrl": "https://www.eventbrite.com/oauth/token"
diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementUpdateDocumentation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementUpdateDocumentation.json
index 764a08724095..871c0d3f458f 100644
--- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementUpdateDocumentation.json
+++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementUpdateDocumentation.json
@@ -5,6 +5,7 @@
"api-version": "2022-08-01",
"subscriptionId": "subid",
"documentationId": "57d1f7558aa04f15146d9d8a",
+ "If-Match": "*",
"parameters": {
"properties": {
"title": "Title updated",
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/Jobs.json b/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/Jobs.json
index c0966687ef14..2842db8f0521 100644
--- a/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/Jobs.json
+++ b/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/Jobs.json
@@ -352,8 +352,8 @@
{
"name": "template",
"in": "body",
- "description": "Properties used to start a job instance.",
- "required": true,
+ "description": "Properties used to start a job execution.",
+ "required": false,
"schema": {
"$ref": "#/definitions/JobExecutionTemplate"
}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json b/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
index 2ea10c4c5a6a..76a35318aaaa 100644
--- a/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
+++ b/specification/app/resource-manager/Microsoft.App/preview/2022-11-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
@@ -1,168 +1,168 @@
-{
- "parameters": {
- "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
- "resourceGroupName": "examplerg",
- "environmentName": "testcontainerenv",
- "api-version": "2022-11-01-preview",
- "environmentEnvelope": {
- "location": "East US",
- "properties": {
- "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
- "appLogsConfiguration": {
- "logAnalyticsConfiguration": {
- "customerId": "string",
- "sharedKey": "string"
- }
- },
- "zoneRedundant": true,
- "vnetConfiguration": {
- "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
- },
- "customDomainConfiguration": {
- "dnsSuffix": "www.my-name.com",
- "certificateValue": "Y2VydA==",
- "certificatePassword": "1234"
- },
- "workloadProfiles": [
- {
- "name": "My-GP-01",
- "workloadProfileType": "GeneralPurpose",
- "minimumCount": 3,
- "maximumCount": 12
- },
- {
- "name": "My-MO-01",
- "workloadProfileType": "MemoryOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-CO-01",
- "workloadProfileType": "ComputeOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-consumption-01",
- "workloadProfileType": "Consumption"
- }
- ],
- "infrastructureResourceGroup": "myInfrastructureRgName"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
- "name": "testcontainerenv",
- "type": "Microsoft.App/managedEnvironments",
- "location": "East US",
- "properties": {
- "provisioningState": "Succeeded",
- "deploymentErrors": null,
- "defaultDomain": "testcontainerenv.k4apps.io",
- "staticIp": "1.2.3.4",
- "appLogsConfiguration": {
- "logAnalyticsConfiguration": {
- "customerId": "string"
- }
- },
- "zoneRedundant": true,
- "vnetConfiguration": {
- "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
- },
- "customDomainConfiguration": {
- "customDomainVerificationId": "custom domain verification id",
- "dnsSuffix": "www.my-name.com",
- "subjectName": "CN=www.my-name.com",
- "expirationDate": "2022-11-06T04:00:00Z",
- "thumbprint": "CERTIFICATE_THUMBPRINT"
- },
- "eventStreamEndpoint": "testEndpoint",
- "workloadProfiles": [
- {
- "name": "My-GP-01",
- "workloadProfileType": "GeneralPurpose",
- "minimumCount": 3,
- "maximumCount": 12
- },
- {
- "name": "My-MO-01",
- "workloadProfileType": "MemoryOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-CO-01",
- "workloadProfileType": "ComputeOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-consumption-01",
- "workloadProfileType": "Consumption"
- }
- ],
- "infrastructureResourceGroup": "myInfrastructureRgName"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
- "name": "testcontainerenv",
- "type": "Microsoft.App/managedEnvironments",
- "location": "East US",
- "properties": {
- "provisioningState": "InitializationInProgress",
- "deploymentErrors": null,
- "defaultDomain": "testcontainerenv.k4apps.io",
- "staticIp": "1.2.3.4",
- "appLogsConfiguration": {
- "logAnalyticsConfiguration": {
- "customerId": "string"
- }
- },
- "zoneRedundant": true,
- "vnetConfiguration": {
- "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
- },
- "customDomainConfiguration": {
- "customDomainVerificationId": "custom domain verification id",
- "dnsSuffix": "www.my-name.com",
- "subjectName": "CN=www.my-name.com",
- "expirationDate": "2022-11-06T04:00:00Z",
- "thumbprint": "CERTIFICATE_THUMBPRINT"
- },
- "eventStreamEndpoint": "testEndpoint",
- "workloadProfiles": [
- {
- "name": "My-GP-01",
- "workloadProfileType": "GeneralPurpose",
- "minimumCount": 3,
- "maximumCount": 12
- },
- {
- "name": "My-MO-01",
- "workloadProfileType": "MemoryOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-CO-01",
- "workloadProfileType": "ComputeOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-consumption-01",
- "workloadProfileType": "Consumption"
- }
- ],
- "infrastructureResourceGroup": "myInfrastructureRgName"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2022-11-01-preview",
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string",
+ "sharedKey": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "1234"
+ },
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InitializationInProgress",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/Jobs.json b/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/Jobs.json
index a3c40cdf794b..6432dc1fd423 100644
--- a/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/Jobs.json
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/Jobs.json
@@ -333,8 +333,8 @@
{
"name": "template",
"in": "body",
- "description": "Properties used to start a job instance.",
- "required": true,
+ "description": "Properties used to start a job execution.",
+ "required": false,
"schema": {
"$ref": "#/definitions/JobExecutionTemplate"
}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json b/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
index 550c10c505fa..0d7dd9485074 100644
--- a/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-04-01-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
@@ -1,168 +1,168 @@
-{
- "parameters": {
- "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
- "resourceGroupName": "examplerg",
- "environmentName": "testcontainerenv",
- "api-version": "2023-04-01-preview",
- "environmentEnvelope": {
- "location": "East US",
- "properties": {
- "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
- "appLogsConfiguration": {
- "logAnalyticsConfiguration": {
- "customerId": "string",
- "sharedKey": "string"
- }
- },
- "zoneRedundant": true,
- "vnetConfiguration": {
- "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
- },
- "customDomainConfiguration": {
- "dnsSuffix": "www.my-name.com",
- "certificateValue": "Y2VydA==",
- "certificatePassword": "1234"
- },
- "workloadProfiles": [
- {
- "name": "My-GP-01",
- "workloadProfileType": "GeneralPurpose",
- "minimumCount": 3,
- "maximumCount": 12
- },
- {
- "name": "My-MO-01",
- "workloadProfileType": "MemoryOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-CO-01",
- "workloadProfileType": "ComputeOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-consumption-01",
- "workloadProfileType": "Consumption"
- }
- ],
- "infrastructureResourceGroup": "myInfrastructureRgName"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
- "name": "testcontainerenv",
- "type": "Microsoft.App/managedEnvironments",
- "location": "East US",
- "properties": {
- "provisioningState": "Succeeded",
- "deploymentErrors": null,
- "defaultDomain": "testcontainerenv.k4apps.io",
- "staticIp": "1.2.3.4",
- "appLogsConfiguration": {
- "logAnalyticsConfiguration": {
- "customerId": "string"
- }
- },
- "zoneRedundant": true,
- "vnetConfiguration": {
- "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
- },
- "customDomainConfiguration": {
- "customDomainVerificationId": "custom domain verification id",
- "dnsSuffix": "www.my-name.com",
- "subjectName": "CN=www.my-name.com",
- "expirationDate": "2022-11-06T04:00:00Z",
- "thumbprint": "CERTIFICATE_THUMBPRINT"
- },
- "eventStreamEndpoint": "testEndpoint",
- "workloadProfiles": [
- {
- "name": "My-GP-01",
- "workloadProfileType": "GeneralPurpose",
- "minimumCount": 3,
- "maximumCount": 12
- },
- {
- "name": "My-MO-01",
- "workloadProfileType": "MemoryOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-CO-01",
- "workloadProfileType": "ComputeOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-consumption-01",
- "workloadProfileType": "Consumption"
- }
- ],
- "infrastructureResourceGroup": "myInfrastructureRgName"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
- "name": "testcontainerenv",
- "type": "Microsoft.App/managedEnvironments",
- "location": "East US",
- "properties": {
- "provisioningState": "InitializationInProgress",
- "deploymentErrors": null,
- "defaultDomain": "testcontainerenv.k4apps.io",
- "staticIp": "1.2.3.4",
- "appLogsConfiguration": {
- "logAnalyticsConfiguration": {
- "customerId": "string"
- }
- },
- "zoneRedundant": true,
- "vnetConfiguration": {
- "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
- },
- "customDomainConfiguration": {
- "customDomainVerificationId": "custom domain verification id",
- "dnsSuffix": "www.my-name.com",
- "subjectName": "CN=www.my-name.com",
- "expirationDate": "2022-11-06T04:00:00Z",
- "thumbprint": "CERTIFICATE_THUMBPRINT"
- },
- "eventStreamEndpoint": "testEndpoint",
- "workloadProfiles": [
- {
- "name": "My-GP-01",
- "workloadProfileType": "GeneralPurpose",
- "minimumCount": 3,
- "maximumCount": 12
- },
- {
- "name": "My-MO-01",
- "workloadProfileType": "MemoryOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-CO-01",
- "workloadProfileType": "ComputeOptimized",
- "minimumCount": 3,
- "maximumCount": 6
- },
- {
- "name": "My-consumption-01",
- "workloadProfileType": "Consumption"
- }
- ],
- "infrastructureResourceGroup": "myInfrastructureRgName"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-04-01-preview",
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string",
+ "sharedKey": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "1234"
+ },
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InitializationInProgress",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/AuthConfigs.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/AuthConfigs.json
new file mode 100644
index 000000000000..23f3b635b441
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/AuthConfigs.json
@@ -0,0 +1,1034 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs": {
+ "get": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Get the Container App AuthConfigs in a given resource group.",
+ "operationId": "ContainerAppsAuthConfigs_ListByContainerApp",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AuthConfigCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Auth Configs by Container Apps": {
+ "$ref": "./examples/AuthConfigs_ListByContainer.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs/{authConfigName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Get a AuthConfig of a Container App.",
+ "operationId": "ContainerAppsAuthConfigs_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigName",
+ "in": "path",
+ "description": "Name of the Container App AuthConfig.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's AuthConfig": {
+ "$ref": "./examples/AuthConfigs_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Create or update the AuthConfig for a Container App.",
+ "description": "Create or update the AuthConfig for a Container App.",
+ "operationId": "ContainerAppsAuthConfigs_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigName",
+ "in": "path",
+ "description": "Name of the Container App AuthConfig.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigEnvelope",
+ "in": "body",
+ "description": "Properties used to create a Container App AuthConfig",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container App AuthConfig": {
+ "$ref": "./examples/AuthConfigs_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Delete a Container App AuthConfig.",
+ "description": "Delete a Container App AuthConfig.",
+ "operationId": "ContainerAppsAuthConfigs_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigName",
+ "in": "path",
+ "description": "Name of the Container App AuthConfig.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App deleted successfully."
+ },
+ "204": {
+ "description": "Container App AuthConfig does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container App AuthConfig": {
+ "$ref": "./examples/AuthConfigs_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AuthConfigCollection": {
+ "description": "AuthConfig collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "AuthConfig": {
+ "description": "Configuration settings for the Azure ContainerApp Service Authentication / Authorization feature.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "AuthConfig resource specific properties",
+ "type": "object",
+ "properties": {
+ "platform": {
+ "$ref": "#/definitions/AuthPlatform",
+ "description": "The configuration settings of the platform of ContainerApp Service Authentication/Authorization."
+ },
+ "globalValidation": {
+ "$ref": "#/definitions/GlobalValidation",
+ "description": "The configuration settings that determines the validation flow of users using Service Authentication/Authorization."
+ },
+ "identityProviders": {
+ "$ref": "#/definitions/IdentityProviders",
+ "description": "The configuration settings of each of the identity providers used to configure ContainerApp Service Authentication/Authorization."
+ },
+ "login": {
+ "$ref": "#/definitions/Login",
+ "description": "The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization."
+ },
+ "httpSettings": {
+ "$ref": "#/definitions/HttpSettings",
+ "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp Service Authentication/Authorization."
+ },
+ "encryptionSettings": {
+ "$ref": "#/definitions/EncryptionSettings",
+ "description": "The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service Authentication/Authorization."
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "AuthPlatform": {
+ "description": "The configuration settings of the platform of ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "true if the Authentication / Authorization feature is enabled for the current app; otherwise, false.",
+ "type": "boolean"
+ },
+ "runtimeVersion": {
+ "description": "The RuntimeVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of certain features in the Authentication / Authorization module.",
+ "type": "string"
+ }
+ }
+ },
+ "GlobalValidation": {
+ "description": "The configuration settings that determines the validation flow of users using ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "unauthenticatedClientAction": {
+ "description": "The action to take when an unauthenticated client attempts to access the app.",
+ "enum": [
+ "RedirectToLoginPage",
+ "AllowAnonymous",
+ "Return401",
+ "Return403"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "UnauthenticatedClientActionV2",
+ "modelAsString": false
+ }
+ },
+ "redirectToProvider": {
+ "description": "The default authentication provider to use when multiple providers are configured.\nThis setting is only needed if multiple providers are configured and the unauthenticated client\naction is set to \"RedirectToLoginPage\".",
+ "type": "string"
+ },
+ "excludedPaths": {
+ "description": "The paths for which unauthenticated flow would not be redirected to the login page.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "HttpSettings": {
+ "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "requireHttps": {
+ "description": "false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true.",
+ "type": "boolean"
+ },
+ "routes": {
+ "$ref": "#/definitions/HttpSettingsRoutes",
+ "description": "The configuration settings of the paths HTTP requests."
+ },
+ "forwardProxy": {
+ "$ref": "#/definitions/ForwardProxy",
+ "description": "The configuration settings of a forward proxy used to make the requests."
+ }
+ }
+ },
+ "EncryptionSettings": {
+ "description": "The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "containerAppAuthEncryptionSecretName": {
+ "description": "The secret name which is referenced for EncryptionKey.",
+ "type": "string"
+ },
+ "containerAppAuthSigningSecretName": {
+ "description": "The secret name which is referenced for SigningKey.",
+ "type": "string"
+ }
+ }
+ },
+ "HttpSettingsRoutes": {
+ "description": "The configuration settings of the paths HTTP requests.",
+ "type": "object",
+ "properties": {
+ "apiPrefix": {
+ "description": "The prefix that should precede all the authentication/authorization paths.",
+ "type": "string"
+ }
+ }
+ },
+ "ForwardProxy": {
+ "description": "The configuration settings of a forward proxy used to make the requests.",
+ "type": "object",
+ "properties": {
+ "convention": {
+ "description": "The convention used to determine the url of the request made.",
+ "enum": [
+ "NoProxy",
+ "Standard",
+ "Custom"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ForwardProxyConvention",
+ "modelAsString": false
+ }
+ },
+ "customHostHeaderName": {
+ "description": "The name of the header containing the host of the request.",
+ "type": "string"
+ },
+ "customProtoHeaderName": {
+ "description": "The name of the header containing the scheme of the request.",
+ "type": "string"
+ }
+ }
+ },
+ "Login": {
+ "description": "The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "routes": {
+ "$ref": "#/definitions/LoginRoutes",
+ "description": "The routes that specify the endpoints used for login and logout requests."
+ },
+ "tokenStore": {
+ "$ref": "#/definitions/TokenStore",
+ "description": "The configuration settings of the token store."
+ },
+ "preserveUrlFragmentsForLogins": {
+ "description": "true if the fragments from the request are preserved after the login request is made; otherwise, false.",
+ "type": "boolean"
+ },
+ "allowedExternalRedirectUrls": {
+ "description": "External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored.\nThis is an advanced setting typically only needed by Windows Store application backends.\nNote that URLs within the current domain are always implicitly allowed.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cookieExpiration": {
+ "$ref": "#/definitions/CookieExpiration",
+ "description": "The configuration settings of the session cookie's expiration."
+ },
+ "nonce": {
+ "$ref": "#/definitions/Nonce",
+ "description": "The configuration settings of the nonce used in the login flow."
+ }
+ }
+ },
+ "LoginRoutes": {
+ "description": "The routes that specify the endpoints used for login and logout requests.",
+ "type": "object",
+ "properties": {
+ "logoutEndpoint": {
+ "description": "The endpoint at which a logout request should be made.",
+ "type": "string"
+ }
+ }
+ },
+ "TokenStore": {
+ "description": "The configuration settings of the token store.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false.\n The default is false.",
+ "type": "boolean"
+ },
+ "tokenRefreshExtensionHours": {
+ "format": "double",
+ "description": "The number of hours after session token expiration that a session token can be used to\ncall the token refresh API. The default is 72 hours.",
+ "type": "number"
+ },
+ "azureBlobStorage": {
+ "$ref": "#/definitions/BlobStorageTokenStore",
+ "description": "The configuration settings of the storage of the tokens if blob storage is used."
+ }
+ }
+ },
+ "BlobStorageTokenStore": {
+ "description": "The configuration settings of the storage of the tokens if blob storage is used.",
+ "type": "object",
+ "required": [
+ "sasUrlSettingName"
+ ],
+ "properties": {
+ "sasUrlSettingName": {
+ "description": "The name of the app secrets containing the SAS URL of the blob storage containing the tokens.",
+ "type": "string"
+ }
+ }
+ },
+ "CookieExpiration": {
+ "description": "The configuration settings of the session cookie's expiration.",
+ "type": "object",
+ "properties": {
+ "convention": {
+ "description": "The convention used when determining the session cookie's expiration.",
+ "enum": [
+ "FixedTime",
+ "IdentityProviderDerived"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CookieExpirationConvention",
+ "modelAsString": false
+ }
+ },
+ "timeToExpiration": {
+ "description": "The time after the request is made when the session cookie should expire.",
+ "type": "string"
+ }
+ }
+ },
+ "Nonce": {
+ "description": "The configuration settings of the nonce used in the login flow.",
+ "type": "object",
+ "properties": {
+ "validateNonce": {
+ "description": "false if the nonce should not be validated while completing the login flow; otherwise, true.",
+ "type": "boolean"
+ },
+ "nonceExpirationInterval": {
+ "description": "The time after the request is made when the nonce should expire.",
+ "type": "string"
+ }
+ }
+ },
+ "IdentityProviders": {
+ "description": "The configuration settings of each of the identity providers used to configure ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "azureActiveDirectory": {
+ "$ref": "#/definitions/AzureActiveDirectory",
+ "description": "The configuration settings of the Azure Active directory provider."
+ },
+ "facebook": {
+ "$ref": "#/definitions/Facebook",
+ "description": "The configuration settings of the Facebook provider."
+ },
+ "gitHub": {
+ "$ref": "#/definitions/GitHub",
+ "description": "The configuration settings of the GitHub provider."
+ },
+ "google": {
+ "$ref": "#/definitions/Google",
+ "description": "The configuration settings of the Google provider."
+ },
+ "twitter": {
+ "$ref": "#/definitions/Twitter",
+ "description": "The configuration settings of the Twitter provider."
+ },
+ "apple": {
+ "$ref": "#/definitions/Apple",
+ "description": "The configuration settings of the Apple provider."
+ },
+ "azureStaticWebApps": {
+ "$ref": "#/definitions/AzureStaticWebApps",
+ "description": "The configuration settings of the Azure Static Web Apps provider."
+ },
+ "customOpenIdConnectProviders": {
+ "description": "The map of the name of the alias of each custom Open ID Connect provider to the\nconfiguration settings of the custom Open ID Connect provider.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/CustomOpenIdConnectProvider"
+ }
+ }
+ }
+ },
+ "AzureActiveDirectory": {
+ "description": "The configuration settings of the Azure Active directory provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AzureActiveDirectoryRegistration",
+ "description": "The configuration settings of the Azure Active Directory app registration."
+ },
+ "login": {
+ "$ref": "#/definitions/AzureActiveDirectoryLogin",
+ "description": "The configuration settings of the Azure Active Directory login flow."
+ },
+ "validation": {
+ "$ref": "#/definitions/AzureActiveDirectoryValidation",
+ "description": "The configuration settings of the Azure Active Directory token validation flow."
+ },
+ "isAutoProvisioned": {
+ "description": "Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling.\nThis is an internal flag primarily intended to support the Azure Management Portal. Users should not\nread or write to this property.",
+ "type": "boolean"
+ }
+ }
+ },
+ "AzureActiveDirectoryLogin": {
+ "description": "The configuration settings of the Azure Active Directory login flow.",
+ "type": "object",
+ "properties": {
+ "loginParameters": {
+ "description": "Login parameters to send to the OpenID Connect authorization endpoint when\na user logs in. Each parameter must be in the form \"key=value\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "disableWWWAuthenticate": {
+ "description": "true if the www-authenticate provider should be omitted from the request; otherwise, false.",
+ "type": "boolean"
+ }
+ }
+ },
+ "AzureActiveDirectoryRegistration": {
+ "description": "The configuration settings of the Azure Active Directory app registration.",
+ "type": "object",
+ "properties": {
+ "openIdIssuer": {
+ "description": "The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.\nWhen using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/.\nThis URI is a case-sensitive identifier for the token issuer.\nMore information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html",
+ "type": "string"
+ },
+ "clientId": {
+ "description": "The Client ID of this relying party application, known as the client_id.\nThis setting is required for enabling OpenID Connection authentication with Azure Active Directory or \nother 3rd party OpenID Connect providers.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html",
+ "type": "string"
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting name that contains the client secret of the relying party application.",
+ "type": "string"
+ },
+ "clientSecretCertificateThumbprint": {
+ "description": "An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret. It is also optional.",
+ "type": "string"
+ },
+ "clientSecretCertificateSubjectAlternativeName": {
+ "description": "An alternative to the client secret thumbprint, that is the subject alternative name of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret Certificate Thumbprint. It is also optional.",
+ "type": "string"
+ },
+ "clientSecretCertificateIssuer": {
+ "description": "An alternative to the client secret thumbprint, that is the issuer of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret Certificate Thumbprint. It is also optional.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureActiveDirectoryValidation": {
+ "description": "The configuration settings of the Azure Active Directory token validation flow.",
+ "type": "object",
+ "properties": {
+ "jwtClaimChecks": {
+ "$ref": "#/definitions/JwtClaimChecks",
+ "description": "The configuration settings of the checks that should be made while validating the JWT Claims."
+ },
+ "allowedAudiences": {
+ "description": "The list of audiences that can make successful authentication/authorization requests.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "defaultAuthorizationPolicy": {
+ "$ref": "#/definitions/DefaultAuthorizationPolicy",
+ "description": "The configuration settings of the default authorization policy."
+ }
+ }
+ },
+ "JwtClaimChecks": {
+ "description": "The configuration settings of the checks that should be made while validating the JWT Claims.",
+ "type": "object",
+ "properties": {
+ "allowedGroups": {
+ "description": "The list of the allowed groups.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "allowedClientApplications": {
+ "description": "The list of the allowed client applications.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "DefaultAuthorizationPolicy": {
+ "description": "The configuration settings of the Azure Active Directory default authorization policy.",
+ "type": "object",
+ "properties": {
+ "allowedPrincipals": {
+ "$ref": "#/definitions/AllowedPrincipals",
+ "description": "The configuration settings of the Azure Active Directory allowed principals."
+ },
+ "allowedApplications": {
+ "description": "The configuration settings of the Azure Active Directory allowed applications.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "AllowedPrincipals": {
+ "description": "The configuration settings of the Azure Active Directory allowed principals.",
+ "type": "object",
+ "properties": {
+ "groups": {
+ "description": "The list of the allowed groups.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "identities": {
+ "description": "The list of the allowed identities.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "Facebook": {
+ "description": "The configuration settings of the Facebook provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Facebook provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AppRegistration",
+ "description": "The configuration settings of the app registration for the Facebook provider."
+ },
+ "graphApiVersion": {
+ "description": "The version of the Facebook api to be used while logging in.",
+ "type": "string"
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ }
+ }
+ },
+ "AppRegistration": {
+ "description": "The configuration settings of the app registration for providers that have app ids and app secrets",
+ "type": "object",
+ "properties": {
+ "appId": {
+ "description": "The App ID of the app used for login.",
+ "type": "string"
+ },
+ "appSecretSettingName": {
+ "description": "The app setting name that contains the app secret.",
+ "type": "string"
+ }
+ }
+ },
+ "LoginScopes": {
+ "description": "The configuration settings of the login flow, including the scopes that should be requested.",
+ "type": "object",
+ "properties": {
+ "scopes": {
+ "description": "A list of the scopes that should be requested while authenticating.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "GitHub": {
+ "description": "The configuration settings of the GitHub provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the GitHub provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/ClientRegistration",
+ "description": "The configuration settings of the app registration for the GitHub provider."
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ }
+ }
+ },
+ "ClientRegistration": {
+ "description": "The configuration settings of the app registration for providers that have client ids and client secrets",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The Client ID of the app used for login.",
+ "type": "string"
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting name that contains the client secret.",
+ "type": "string"
+ }
+ }
+ },
+ "Google": {
+ "description": "The configuration settings of the Google provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Google provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/ClientRegistration",
+ "description": "The configuration settings of the app registration for the Google provider."
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ },
+ "validation": {
+ "$ref": "#/definitions/AllowedAudiencesValidation",
+ "description": "The configuration settings of the Azure Active Directory token validation flow."
+ }
+ }
+ },
+ "AllowedAudiencesValidation": {
+ "description": "The configuration settings of the Allowed Audiences validation flow.",
+ "type": "object",
+ "properties": {
+ "allowedAudiences": {
+ "description": "The configuration settings of the allowed list of audiences from which to validate the JWT token.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "Twitter": {
+ "description": "The configuration settings of the Twitter provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Twitter provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/TwitterRegistration",
+ "description": "The configuration settings of the app registration for the Twitter provider."
+ }
+ }
+ },
+ "TwitterRegistration": {
+ "description": "The configuration settings of the app registration for the Twitter provider.",
+ "type": "object",
+ "properties": {
+ "consumerKey": {
+ "description": "The OAuth 1.0a consumer key of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in",
+ "type": "string"
+ },
+ "consumerSecretSettingName": {
+ "description": "The app setting name that contains the OAuth 1.0a consumer secret of the Twitter\napplication used for sign-in.",
+ "type": "string"
+ }
+ }
+ },
+ "Apple": {
+ "description": "The configuration settings of the Apple provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Apple provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AppleRegistration",
+ "description": "The configuration settings of the Apple registration."
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ }
+ }
+ },
+ "AppleRegistration": {
+ "description": "The configuration settings of the registration for the Apple provider",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The Client ID of the app used for login.",
+ "type": "string"
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting name that contains the client secret.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureStaticWebApps": {
+ "description": "The configuration settings of the Azure Static Web Apps provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AzureStaticWebAppsRegistration",
+ "description": "The configuration settings of the Azure Static Web Apps registration."
+ }
+ }
+ },
+ "AzureStaticWebAppsRegistration": {
+ "description": "The configuration settings of the registration for the Azure Static Web Apps provider",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The Client ID of the app used for login.",
+ "type": "string"
+ }
+ }
+ },
+ "CustomOpenIdConnectProvider": {
+ "description": "The configuration settings of the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the custom Open ID provider provider should not be enabled; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/OpenIdConnectRegistration",
+ "description": "The configuration settings of the app registration for the custom Open ID Connect provider."
+ },
+ "login": {
+ "$ref": "#/definitions/OpenIdConnectLogin",
+ "description": "The configuration settings of the login flow of the custom Open ID Connect provider."
+ }
+ }
+ },
+ "OpenIdConnectRegistration": {
+ "description": "The configuration settings of the app registration for the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The client id of the custom Open ID Connect provider.",
+ "type": "string"
+ },
+ "clientCredential": {
+ "$ref": "#/definitions/OpenIdConnectClientCredential",
+ "description": "The authentication credentials of the custom Open ID Connect provider."
+ },
+ "openIdConnectConfiguration": {
+ "$ref": "#/definitions/OpenIdConnectConfig",
+ "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider."
+ }
+ }
+ },
+ "OpenIdConnectClientCredential": {
+ "description": "The authentication client credentials of the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "method": {
+ "description": "The method that should be used to authenticate the user.",
+ "enum": [
+ "ClientSecretPost"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ClientCredentialMethod",
+ "modelAsString": false
+ }
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting that contains the client secret for the custom Open ID Connect provider.",
+ "type": "string"
+ }
+ }
+ },
+ "OpenIdConnectConfig": {
+ "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "authorizationEndpoint": {
+ "description": "The endpoint to be used to make an authorization request.",
+ "type": "string"
+ },
+ "tokenEndpoint": {
+ "description": "The endpoint to be used to request a token.",
+ "type": "string"
+ },
+ "issuer": {
+ "description": "The endpoint that issues the token.",
+ "type": "string"
+ },
+ "certificationUri": {
+ "description": "The endpoint that provides the keys necessary to validate the token.",
+ "type": "string"
+ },
+ "wellKnownOpenIdConfiguration": {
+ "description": "The endpoint that contains all the configuration endpoints for the provider.",
+ "type": "string"
+ }
+ }
+ },
+ "OpenIdConnectLogin": {
+ "description": "The configuration settings of the login flow of the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "nameClaimType": {
+ "description": "The name of the claim that contains the users name.",
+ "type": "string"
+ },
+ "scopes": {
+ "description": "A list of the scopes that should be requested while authenticating.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/AvailableWorkloadProfiles.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/AvailableWorkloadProfiles.json
new file mode 100644
index 000000000000..74d513fc7454
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/AvailableWorkloadProfiles.json
@@ -0,0 +1,144 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/locations/{location}/availableManagedEnvironmentsWorkloadProfileTypes": {
+ "get": {
+ "tags": [
+ "AvailableWorkloadProfiles"
+ ],
+ "summary": "Get available workload profiles by location.",
+ "description": "Get all available workload profiles for a location.",
+ "operationId": "AvailableWorkloadProfiles_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailableWorkloadProfilesCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "BillingMeters_Get": {
+ "$ref": "./examples/AvailableWorkloadProfiles_Get.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AvailableWorkloadProfile": {
+ "description": "A workload profile with specific hardware configure to run container apps.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "Region of the workload profile."
+ },
+ "properties": {
+ "description": "Revision resource specific properties",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "Used to categorize workload profiles.",
+ "type": "string"
+ },
+ "applicability": {
+ "type": "string",
+ "description": "indicates whether the profile is default for the location.",
+ "enum": [
+ "LocationDefault",
+ "Custom"
+ ],
+ "x-ms-enum": {
+ "name": "Applicability",
+ "modelAsString": true
+ }
+ },
+ "cores": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of cores in CPU."
+ },
+ "memoryGiB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Memory in GiB."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The everyday name of the workload profile."
+ }
+ }
+ }
+ }
+ },
+ "AvailableWorkloadProfilesCollection": {
+ "description": "Collection of available workload profiles in the location.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of workload profiles.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AvailableWorkloadProfile"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/BillingMeters.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/BillingMeters.json
new file mode 100644
index 000000000000..a71eb3118d06
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/BillingMeters.json
@@ -0,0 +1,118 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/locations/{location}/billingMeters": {
+ "get": {
+ "tags": [
+ "BillingMeters"
+ ],
+ "summary": "Get billing meters by location.",
+ "description": "Get all billingMeters for a location.",
+ "operationId": "BillingMeters_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/BillingMeterCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "BillingMeters_Get": {
+ "$ref": "./examples/BillingMeters_Get.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BillingMeter": {
+ "description": "Billing meter.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "Region for the billing meter."
+ },
+ "properties": {
+ "description": "Revision resource specific properties",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "Used to categorize billing meters.",
+ "type": "string"
+ },
+ "meterType": {
+ "type": "string",
+ "description": "Billing meter type."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The everyday name of the billing meter."
+ }
+ }
+ }
+ }
+ },
+ "BillingMeterCollection": {
+ "description": "Collection of billing meters.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of billing meters.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BillingMeter"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "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/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/CommonDefinitions.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/CommonDefinitions.json
new file mode 100644
index 000000000000..19214aad5669
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/CommonDefinitions.json
@@ -0,0 +1,1196 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {},
+ "definitions": {
+ "EnvironmentVar": {
+ "description": "Container App container environment variable.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Environment variable name.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Non-secret environment variable value.",
+ "type": "string"
+ },
+ "secretRef": {
+ "description": "Name of the Container App secret from which to pull the environment variable value.",
+ "type": "string"
+ }
+ }
+ },
+ "WorkloadProfileName": {
+ "description": "Workload profile name for container apps to execute on.",
+ "type": "string"
+ },
+ "WorkloadProfileType": {
+ "description": "Workload profile type for container apps to execute on.",
+ "type": "string"
+ },
+ "BaseContainer": {
+ "description": "Container App base container definition.",
+ "type": "object",
+ "properties": {
+ "image": {
+ "description": "Container image tag.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Custom container name.",
+ "type": "string"
+ },
+ "command": {
+ "description": "Container start command.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "args": {
+ "description": "Container start command arguments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "env": {
+ "description": "Container environment variables.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EnvironmentVar"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "resources": {
+ "$ref": "#/definitions/ContainerResources",
+ "description": "Container resource requirements."
+ },
+ "volumeMounts": {
+ "description": "Container volume mounts.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeMount"
+ },
+ "x-ms-identifiers": [
+ "volumeName"
+ ]
+ }
+ }
+ },
+ "InitContainer": {
+ "description": "Container App init container definition",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseContainer"
+ }
+ ]
+ },
+ "Container": {
+ "description": "Container App container definition",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseContainer"
+ }
+ ],
+ "properties": {
+ "probes": {
+ "description": "List of probes for the container.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerAppProbe"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ }
+ }
+ },
+ "ContainerResources": {
+ "description": "Container App container resource requirements.",
+ "type": "object",
+ "properties": {
+ "cpu": {
+ "format": "double",
+ "description": "Required CPU in cores, e.g. 0.5",
+ "type": "number"
+ },
+ "memory": {
+ "description": "Required memory, e.g. \"250Mb\"",
+ "type": "string"
+ },
+ "ephemeralStorage": {
+ "description": "Ephemeral Storage, e.g. \"1Gi\"",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ContainerAppProbe": {
+ "description": "Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.",
+ "type": "object",
+ "properties": {
+ "failureThreshold": {
+ "description": "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. Maximum value is 10.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "httpGet": {
+ "description": "HTTPGet specifies the http request to perform.",
+ "type": "object",
+ "required": [
+ "port"
+ ],
+ "properties": {
+ "host": {
+ "description": "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead.",
+ "type": "string"
+ },
+ "httpHeaders": {
+ "description": "Custom headers to set in the request. HTTP allows repeated headers.",
+ "type": "array",
+ "items": {
+ "description": "HTTPHeader describes a custom header to be used in HTTP probes",
+ "type": "object",
+ "required": [
+ "name",
+ "value"
+ ],
+ "properties": {
+ "name": {
+ "description": "The header field name",
+ "type": "string"
+ },
+ "value": {
+ "description": "The header field value",
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "path": {
+ "description": "Path to access on the HTTP server.",
+ "type": "string"
+ },
+ "port": {
+ "description": "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "scheme": {
+ "description": "Scheme to use for connecting to the host. Defaults to HTTP.",
+ "enum": [
+ "HTTP",
+ "HTTPS"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Scheme",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "initialDelaySeconds": {
+ "description": "Number of seconds after the container has started before liveness probes are initiated. Minimum value is 1. Maximum value is 60.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "periodSeconds": {
+ "description": "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "successThreshold": {
+ "description": "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. Maximum value is 10.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "tcpSocket": {
+ "description": "TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported.",
+ "type": "object",
+ "required": [
+ "port"
+ ],
+ "properties": {
+ "host": {
+ "description": "Optional: Host name to connect to, defaults to the pod IP.",
+ "type": "string"
+ },
+ "port": {
+ "description": "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "terminationGracePeriodSeconds": {
+ "description": "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is an alpha field and requires enabling ProbeTerminationGracePeriod feature gate. Maximum value is 3600 seconds (1 hour)",
+ "type": "integer",
+ "format": "int64"
+ },
+ "timeoutSeconds": {
+ "description": "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 240.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "type": {
+ "description": "The type of probe.",
+ "enum": [
+ "Liveness",
+ "Readiness",
+ "Startup"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Type",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CustomScaleRule": {
+ "description": "Container App container Custom scaling rule.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Type of the custom scale rule\neg: azure-servicebus, redis etc.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata properties to describe custom scale rule.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "auth": {
+ "description": "Authentication secrets for the custom scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "CustomDomainConfiguration": {
+ "type": "object",
+ "description": "Configuration properties for apps environment custom domain",
+ "properties": {
+ "customDomainVerificationId": {
+ "description": "Id used to verify domain name ownership",
+ "type": "string",
+ "readOnly": true
+ },
+ "dnsSuffix": {
+ "type": "string",
+ "description": "Dns suffix for the environment domain",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "certificateValue": {
+ "format": "byte",
+ "description": "PFX or PEM blob",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "certificatePassword": {
+ "description": "Certificate password",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "expirationDate": {
+ "format": "date-time",
+ "description": "Certificate expiration date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "thumbprint": {
+ "description": "Certificate thumbprint.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subjectName": {
+ "description": "Subject name of the certificate.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DefaultErrorResponse": {
+ "description": "App Service error response.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "description": "Error model.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "details": {
+ "type": "array",
+ "description": "Details or the error",
+ "items": {
+ "description": "Detailed errors.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "x-ms-identifiers": [
+ "code"
+ ]
+ },
+ "innererror": {
+ "description": "More information to debug error.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "HttpScaleRule": {
+ "description": "Container App container Http scaling rule.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata properties to describe http scale rule.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "auth": {
+ "description": "Authentication secrets for the custom scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "TcpScaleRule": {
+ "description": "Container App container Tcp scaling rule.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata properties to describe tcp scale rule.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "auth": {
+ "description": "Authentication secrets for the tcp scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "QueueScaleRule": {
+ "description": "Container App container Azure Queue based scaling rule.",
+ "type": "object",
+ "properties": {
+ "queueName": {
+ "description": "Queue name.",
+ "type": "string"
+ },
+ "queueLength": {
+ "format": "int32",
+ "description": "Queue length.",
+ "type": "integer"
+ },
+ "auth": {
+ "description": "Authentication secrets for the queue scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "Scale": {
+ "description": "Container App scaling configurations.",
+ "type": "object",
+ "properties": {
+ "minReplicas": {
+ "format": "int32",
+ "description": "Optional. Minimum number of container replicas.",
+ "type": "integer"
+ },
+ "maxReplicas": {
+ "format": "int32",
+ "description": "Optional. Maximum number of container replicas. Defaults to 10 if not set.",
+ "type": "integer",
+ "default": 10
+ },
+ "rules": {
+ "description": "Scaling rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRule"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ScaleRule": {
+ "description": "Container App container scaling rule.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Scale Rule Name",
+ "type": "string"
+ },
+ "azureQueue": {
+ "$ref": "#/definitions/QueueScaleRule",
+ "description": "Azure Queue based scaling."
+ },
+ "custom": {
+ "$ref": "#/definitions/CustomScaleRule",
+ "description": "Custom scale rule."
+ },
+ "http": {
+ "$ref": "#/definitions/HttpScaleRule",
+ "description": "HTTP requests based scaling."
+ },
+ "tcp": {
+ "$ref": "#/definitions/TcpScaleRule",
+ "description": "Tcp requests based scaling."
+ }
+ }
+ },
+ "ScaleRuleAuth": {
+ "description": "Auth Secrets for Scale Rule",
+ "type": "object",
+ "properties": {
+ "secretRef": {
+ "description": "Name of the secret from which to pull the auth params.",
+ "type": "string"
+ },
+ "triggerParameter": {
+ "description": "Trigger Parameter that uses the secret",
+ "type": "string"
+ }
+ }
+ },
+ "Secret": {
+ "description": "Secret definition.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Secret Name.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Secret Value.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "identity": {
+ "description": "Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a system-assigned identity.",
+ "type": "string"
+ },
+ "keyVaultUrl": {
+ "description": "Azure Key Vault URL pointing to the secret referenced by the container app.",
+ "type": "string"
+ }
+ }
+ },
+ "Template": {
+ "description": "Container App versioned application definition.\nDefines the desired state of an immutable revision.\nAny changes to this section Will result in a new revision being created",
+ "type": "object",
+ "properties": {
+ "revisionSuffix": {
+ "description": "User friendly suffix that is appended to the revision name",
+ "type": "string"
+ },
+ "terminationGracePeriodSeconds": {
+ "description": "Optional duration in seconds the Container App Instance needs to terminate gracefully. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). If this value is nil, the default grace period will be used instead. Set this value longer than the expected cleanup time for your process. Defaults to 30 seconds.",
+ "format": "int64",
+ "type": "integer"
+ },
+ "initContainers": {
+ "description": "List of specialized containers that run before app containers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InitContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "containers": {
+ "description": "List of container definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Container"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "scale": {
+ "$ref": "#/definitions/Scale",
+ "description": "Scaling properties for the Container App."
+ },
+ "volumes": {
+ "description": "List of volume definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "serviceBinds": {
+ "description": "List of container app services bound to the app",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ServiceBind"
+ },
+ "x-ms-identifier": [
+ "name"
+ ]
+ }
+ }
+ },
+ "Volume": {
+ "description": "Volume definitions for the Container App.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Volume name.",
+ "type": "string"
+ },
+ "storageType": {
+ "description": "Storage type for the volume. If not provided, use EmptyDir.",
+ "enum": [
+ "AzureFile",
+ "EmptyDir",
+ "Secret"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "StorageType",
+ "modelAsString": true
+ }
+ },
+ "storageName": {
+ "description": "Name of storage resource. No need to provide for EmptyDir and Secret.",
+ "type": "string"
+ },
+ "secrets": {
+ "description": "List of secrets to be added in volume. If no secrets are provided, all secrets in collection will be added to volume.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SecretVolumeItem"
+ },
+ "x-ms-identifiers": [
+ "secretRef"
+ ]
+ },
+ "mountOptions": {
+ "description": "Mount options used while mounting the AzureFile. Must be a comma-separated string.",
+ "type": "string"
+ }
+ }
+ },
+ "SecretVolumeItem": {
+ "description": "Secret to be added to volume.",
+ "type": "object",
+ "properties": {
+ "secretRef": {
+ "description": "Name of the Container App secret from which to pull the secret value.",
+ "type": "string"
+ },
+ "path": {
+ "description": "Path to project secret to. If no path is provided, path defaults to name of secret listed in secretRef.",
+ "type": "string"
+ }
+ }
+ },
+ "VolumeMount": {
+ "description": "Volume mount for the Container App.",
+ "type": "object",
+ "properties": {
+ "volumeName": {
+ "description": "This must match the Name of a Volume.",
+ "type": "string"
+ },
+ "mountPath": {
+ "description": "Path within the container at which the volume should be mounted.Must not contain ':'.",
+ "type": "string"
+ },
+ "subPath": {
+ "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).",
+ "type": "string"
+ }
+ }
+ },
+ "DaprComponentsCollection": {
+ "description": "Dapr Components ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DaprComponent"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DaprComponent": {
+ "description": "Dapr Component.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Dapr Component resource specific properties",
+ "type": "object",
+ "properties": {
+ "componentType": {
+ "description": "Component type",
+ "type": "string"
+ },
+ "version": {
+ "description": "Component version",
+ "type": "string"
+ },
+ "ignoreErrors": {
+ "description": "Boolean describing if the component errors are ignores",
+ "type": "boolean",
+ "default": false
+ },
+ "initTimeout": {
+ "description": "Initialization timeout",
+ "type": "string"
+ },
+ "secrets": {
+ "description": "Collection of secrets used by a Dapr component",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "secretStoreComponent": {
+ "description": "Name of a Dapr component to retrieve component secrets from",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Component metadata",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DaprMetadata"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "scopes": {
+ "description": "Names of container apps that can use this Dapr component",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "DaprMetadata": {
+ "description": "Dapr component metadata.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Metadata property name.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Metadata property value.",
+ "type": "string"
+ },
+ "secretRef": {
+ "description": "Name of the Dapr Component secret from which to pull the metadata property value.",
+ "type": "string"
+ }
+ }
+ },
+ "DaprSecretsCollection": {
+ "description": "Dapr component Secrets Collection for ListSecrets Action.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of secrets used by a Dapr component",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprSecret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "DaprSecret": {
+ "description": "Dapr component Secret for ListSecrets Action",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Secret Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "Secret Value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ }
+ }
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "description": "The complex type of the extended location.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extended location."
+ },
+ "type": {
+ "$ref": "#/definitions/ExtendedLocationType",
+ "description": "The type of the extended location."
+ }
+ }
+ },
+ "ExtendedLocationType": {
+ "type": "string",
+ "description": "The type of extendedLocation.",
+ "enum": [
+ "CustomLocation"
+ ],
+ "x-ms-enum": {
+ "name": "ExtendedLocationTypes",
+ "modelAsString": true
+ }
+ },
+ "AzureFileProperties": {
+ "description": "Azure File Properties.",
+ "type": "object",
+ "properties": {
+ "accountName": {
+ "description": "Storage account name for azure file.",
+ "type": "string"
+ },
+ "accountKey": {
+ "description": "Storage account key for azure file.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "accessMode": {
+ "description": "Access mode for storage",
+ "enum": [
+ "ReadOnly",
+ "ReadWrite"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AccessMode",
+ "modelAsString": true
+ }
+ },
+ "shareName": {
+ "description": "Azure file share name.",
+ "type": "string"
+ }
+ }
+ },
+ "Certificate": {
+ "description": "Certificate used for Custom Domain bindings of Container Apps in a Managed Environment",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Certificate resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the certificate.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "DeleteFailed",
+ "Pending"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "CertificateProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "password": {
+ "description": "Certificate password.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "subjectName": {
+ "description": "Subject name of the certificate.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subjectAlternativeNames": {
+ "description": "Subject alternative names the certificate applies to.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "value": {
+ "format": "byte",
+ "description": "PFX or PEM blob",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "issuer": {
+ "description": "Certificate issuer.",
+ "type": "string",
+ "readOnly": true
+ },
+ "issueDate": {
+ "format": "date-time",
+ "description": "Certificate issue Date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "expirationDate": {
+ "format": "date-time",
+ "description": "Certificate expiration date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "thumbprint": {
+ "description": "Certificate thumbprint.",
+ "type": "string",
+ "readOnly": true
+ },
+ "valid": {
+ "description": "Is the certificate valid?.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "publicKeyHash": {
+ "description": "Public key hash.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ },
+ "CertificateCollection": {
+ "description": "Collection of Certificates.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Certificate"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CertificatePatch": {
+ "description": "A certificate to update",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Application-specific metadata in the form of key-value pairs."
+ }
+ }
+ },
+ "ManagedCertificate": {
+ "description": "Managed certificates used for Custom Domain bindings of Container Apps in a Managed Environment",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Certificate resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the certificate.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "DeleteFailed",
+ "Pending"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "CertificateProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "subjectName": {
+ "description": "Subject name of the certificate.",
+ "type": "string"
+ },
+ "error": {
+ "description": "Any error occurred during the certificate provision.",
+ "type": "string",
+ "readOnly": true
+ },
+ "domainControlValidation": {
+ "description": "Selected type of domain control validation for managed certificates.",
+ "enum": [
+ "CNAME",
+ "HTTP",
+ "TXT"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ManagedCertificateDomainControlValidation",
+ "modelAsString": true
+ }
+ },
+ "validationToken": {
+ "description": "A TXT token used for DNS TXT domain control validation when issuing this type of managed certificates.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ },
+ "ManagedCertificatePatch": {
+ "description": "A managed certificate to update",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Application-specific metadata in the form of key-value pairs."
+ }
+ }
+ },
+ "ManagedCertificateCollection": {
+ "description": "Collection of Managed Certificates.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedCertificate"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "JobTemplate": {
+ "description": "Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to this section Will result in a new revision being created",
+ "type": "object",
+ "properties": {
+ "initContainers": {
+ "description": "List of specialized containers that run before app containers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InitContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "containers": {
+ "description": "List of container definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Container"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "volumes": {
+ "description": "List of volume definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ServiceBind": {
+ "description": "Configuration to bind a ContainerApp to a dev ContainerApp Service",
+ "type": "object",
+ "properties": {
+ "serviceId": {
+ "description": "Resource id of the target service",
+ "type": "string"
+ },
+ "name": {
+ "description": "Name of the service bind",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironments.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironments.json
new file mode 100644
index 000000000000..58480cf7036b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironments.json
@@ -0,0 +1,469 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/connectedEnvironments": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Get all connectedEnvironments for a subscription.",
+ "description": "Get all connectedEnvironments for a subscription.",
+ "operationId": "ConnectedEnvironments_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List connected environments by subscription": {
+ "$ref": "./examples/ConnectedEnvironments_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "operationId": "ConnectedEnvironments_ListByResourceGroup",
+ "description": "Get all connectedEnvironments in a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by resource group": {
+ "$ref": "./examples/ConnectedEnvironments_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "operationId": "ConnectedEnvironments_Get",
+ "description": "Get the properties of an connectedEnvironment.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get connected environment by connectedEnvironmentName": {
+ "$ref": "./examples/ConnectedEnvironments_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "description": "Creates or updates an connectedEnvironment.",
+ "operationId": "ConnectedEnvironments_CreateOrUpdate",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "environmentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the connectedEnvironment.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create kube environments": {
+ "$ref": "./examples/ConnectedEnvironments_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Delete an connectedEnvironment.",
+ "description": "Delete an connectedEnvironment.",
+ "operationId": "ConnectedEnvironments_Delete",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "202": {
+ "description": "Delete operation is accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "ConnectedEnvironment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete connected environment by connectedEnvironmentName": {
+ "$ref": "./examples/ConnectedEnvironments_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Update connected Environment's properties.",
+ "description": "Patches a Managed Environment. Only patching of tags is supported currently",
+ "operationId": "ConnectedEnvironments_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Managed Environment": {
+ "$ref": "./examples/ConnectedEnvironments_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Checks the resource connectedEnvironmentName availability.",
+ "description": "Checks if resource connectedEnvironmentName is available.",
+ "operationId": "ConnectedEnvironments_CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "checkNameAvailabilityRequest",
+ "in": "body",
+ "description": "The check connectedEnvironmentName availability request.",
+ "required": true,
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Certificates_CheckNameAvailability": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConnectedEnvironment": {
+ "description": "An environment for Kubernetes cluster specialized for web workloads by Azure App Service",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "./CommonDefinitions.json#/definitions/ExtendedLocation"
+ },
+ "properties": {
+ "description": "ConnectedEnvironment resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Kubernetes Environment.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Waiting",
+ "InitializationInProgress",
+ "InfrastructureSetupInProgress",
+ "InfrastructureSetupComplete",
+ "ScheduledForDelete"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ConnectedEnvironmentProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "deploymentErrors": {
+ "description": "Any errors that occurred during deployment or deployment validation",
+ "type": "string",
+ "readOnly": true
+ },
+ "defaultDomain": {
+ "description": "Default Domain Name for the cluster",
+ "type": "string",
+ "readOnly": true
+ },
+ "staticIp": {
+ "description": "Static IP of the connectedEnvironment",
+ "type": "string"
+ },
+ "daprAIConnectionString": {
+ "type": "string",
+ "description": "Application Insights connection string used by Dapr to export Service to Service communication telemetry",
+ "x-ms-secret": true
+ },
+ "customDomainConfiguration": {
+ "$ref": "./CommonDefinitions.json#/definitions/CustomDomainConfiguration",
+ "description": "Custom domain configuration for the environment"
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ConnectedEnvironmentCollection": {
+ "description": "Collection of connectedEnvironments",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsCertificates.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsCertificates.json
new file mode 100644
index 000000000000..7e3eefd47dfd
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsCertificates.json
@@ -0,0 +1,315 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/certificates": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the Certificates in a given connected environment.",
+ "operationId": "ConnectedEnvironmentsCertificates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificateCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Certificates by Connected Environment": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/certificates/{certificateName}": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the specified Certificate.",
+ "operationId": "ConnectedEnvironmentsCertificates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificate_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Create or Update a Certificate.",
+ "operationId": "ConnectedEnvironmentsCertificates_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "description": "Certificate to be created or updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Deletes the specified Certificate.",
+ "operationId": "ConnectedEnvironmentsCertificates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Certificate does not exist"
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificate_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Update properties of a certificate",
+ "description": "Patches a certificate. Currently only patching of tags is supported",
+ "operationId": "ConnectedEnvironmentsCertificates_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a certificate that need to be updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificatePatch"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Certificate updated successfully.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificates_Patch.json"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsDaprComponents.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsDaprComponents.json
new file mode 100644
index 000000000000..da139b6bd140
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsDaprComponents.json
@@ -0,0 +1,307 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/daprComponents": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get the Dapr Components for a connected environment.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Dapr Components": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/daprComponents/{componentName}": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get a dapr component.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Dapr Component": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Creates or updates a Dapr Component.",
+ "description": "Creates or updates a Dapr Component in a connected environment.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "daprComponentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Dapr Component.",
+ "required": true,
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create or update dapr component": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Delete a Dapr Component.",
+ "description": "Delete a Dapr Component from a connected environment.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Environment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete dapr component": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": false
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/daprComponents/{componentName}/listSecrets": {
+ "post": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "List secrets for a dapr component",
+ "operationId": "ConnectedEnvironmentsDaprComponents_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprSecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Secrets": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsStorages.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsStorages.json
new file mode 100644
index 000000000000..474d338ad414
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsStorages.json
@@ -0,0 +1,290 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/storages": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Get all storages for a connectedEnvironment.",
+ "description": "Get all storages for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStoragesCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/storages/{storageName}": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Get storage for a connectedEnvironment.",
+ "description": "Get storage for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "get a environments storage properties by subscription": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Create or update storage for a connectedEnvironment.",
+ "description": "Create or update storage for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageEnvelope",
+ "in": "body",
+ "description": "Configuration details of storage.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update environments storage": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Delete storage for a connectedEnvironment.",
+ "description": "Delete storage for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "Storage does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConnectedEnvironmentStoragesCollection": {
+ "description": "Collection of Storage for Environments",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of storage resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ }
+ }
+ },
+ "ConnectedEnvironmentStorage": {
+ "description": "Storage resource for connectedEnvironment.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Storage properties",
+ "type": "object",
+ "properties": {
+ "azureFile": {
+ "$ref": "./CommonDefinitions.json#/definitions/AzureFileProperties",
+ "description": "Azure file properties"
+ }
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ContainerApps.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ContainerApps.json
new file mode 100644
index 000000000000..d4c0aff57af9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ContainerApps.json
@@ -0,0 +1,1397 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/containerApps": {
+ "get": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get the Container Apps in a given subscription.",
+ "operationId": "ContainerApps_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps by subscription": {
+ "$ref": "./examples/ContainerApps_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps": {
+ "get": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get the Container Apps in a given resource group.",
+ "operationId": "ContainerApps_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps by resource group": {
+ "$ref": "./examples/ContainerApps_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}": {
+ "get": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get the properties of a Container App.",
+ "operationId": "ContainerApps_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "404": {
+ "description": "Not found.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App": {
+ "$ref": "./examples/ContainerApps_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Create or update a Container App.",
+ "description": "Create or update a Container App.",
+ "operationId": "ContainerApps_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "containerAppEnvelope",
+ "in": "body",
+ "description": "Properties used to create a container app",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "No change performed on the Container App.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "201": {
+ "description": "Container App create or update has been started.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container App": {
+ "$ref": "./examples/ContainerApps_CreateOrUpdate.json"
+ },
+ "Create or Update Tcp App": {
+ "$ref": "./examples/ContainerApps_TcpApp_CreateOrUpdate.json"
+ },
+ "Create or Update ManagedBy App": {
+ "$ref": "./examples/ContainerApps_ManagedBy_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Delete a Container App.",
+ "description": "Delete a Container App.",
+ "operationId": "ContainerApps_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App deleted successfully."
+ },
+ "202": {
+ "description": "Delete operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "Container App does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container App": {
+ "$ref": "./examples/ContainerApps_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Update properties of a Container App",
+ "description": "Patches a Container App using JSON Merge Patch",
+ "operationId": "ContainerApps_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "containerAppEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a Container App that need to be updated",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "202": {
+ "description": "Patch operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Container App": {
+ "$ref": "./examples/ContainerApps_Patch.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/listCustomHostNameAnalysis": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Analyzes a custom hostname for a Container App",
+ "operationId": "ContainerApps_ListCustomHostNameAnalysis",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customHostname",
+ "in": "query",
+ "description": "Custom hostname.",
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CustomHostnameAnalysisResult"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Analyze Custom Hostname": {
+ "$ref": "./examples/ContainerApps_ListCustomHostNameAnalysis.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/listSecrets": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "List secrets for a container app",
+ "operationId": "ContainerApps_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Secrets": {
+ "$ref": "./examples/ContainerApps_ListSecrets.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/getAuthtoken": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get auth token for a container app",
+ "operationId": "ContainerApps_GetAuthToken",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppAuthToken"
+ }
+ },
+ "404": {
+ "description": "Not found.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App Auth Token": {
+ "$ref": "./examples/ContainerApps_GetAuthToken.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/start": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Start a container app",
+ "operationId": "ContainerApps_Start",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App started successfully.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "202": {
+ "description": "Start operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Start Container App": {
+ "$ref": "./examples/ContainerApps_Start.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/stop": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Stop a container app",
+ "operationId": "ContainerApps_Stop",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App stopped successfully.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "202": {
+ "description": "Stop operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Stop Container App": {
+ "$ref": "./examples/ContainerApps_Stop.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Configuration": {
+ "description": "Non versioned Container App configuration properties that define the mutable settings of a Container app",
+ "type": "object",
+ "properties": {
+ "secrets": {
+ "description": "Collection of secrets used by a Container app",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "activeRevisionsMode": {
+ "description": "ActiveRevisionsMode controls how active revisions are handled for the Container app:\n- Multiple: multiple revisions can be active.
- Single: Only one revision can be active at a time. Revision weights can not be used in this mode. If no value if provided, this is the default.
",
+ "enum": [
+ "Multiple",
+ "Single"
+ ],
+ "type": "string",
+ "default": "Single",
+ "x-ms-enum": {
+ "name": "ActiveRevisionsMode",
+ "modelAsString": true
+ }
+ },
+ "ingress": {
+ "$ref": "#/definitions/Ingress",
+ "description": "Ingress configurations."
+ },
+ "registries": {
+ "description": "Collection of private container registry credentials for containers used by the Container app",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryCredentials"
+ },
+ "x-ms-identifiers": [
+ "server"
+ ]
+ },
+ "dapr": {
+ "$ref": "#/definitions/Dapr",
+ "description": "Dapr configuration for the Container App."
+ },
+ "maxInactiveRevisions": {
+ "format": "int32",
+ "description": "Optional. Max inactive revisions a Container App can have.",
+ "type": "integer"
+ },
+ "service": {
+ "$ref": "#/definitions/Service",
+ "description": "Container App to be a dev Container App Service"
+ }
+ }
+ },
+ "ContainerApp": {
+ "description": "Container App.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "./CommonDefinitions.json#/definitions/ExtendedLocation"
+ },
+ "identity": {
+ "description": "managed identities for the Container App to interact with other Azure services without maintaining any secrets or credentials in code.",
+ "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity"
+ },
+ "managedBy": {
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ],
+ "description": "The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource."
+ },
+ "properties": {
+ "description": "ContainerApp resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Container App.",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleting"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ContainerAppProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "managedEnvironmentId": {
+ "description": "Deprecated. Resource ID of the Container App's environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "environmentId": {
+ "description": "Resource ID of environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "workloadProfileName": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileName",
+ "description": "Workload profile name to pin for container app execution."
+ },
+ "latestRevisionName": {
+ "description": "Name of the latest revision of the Container App.",
+ "type": "string",
+ "readOnly": true
+ },
+ "latestReadyRevisionName": {
+ "description": "Name of the latest ready revision of the Container App.",
+ "type": "string",
+ "readOnly": true
+ },
+ "latestRevisionFqdn": {
+ "description": "Fully Qualified Domain Name of the latest revision of the Container App.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customDomainVerificationId": {
+ "description": "Id used to verify domain name ownership",
+ "type": "string",
+ "readOnly": true
+ },
+ "configuration": {
+ "$ref": "#/definitions/Configuration",
+ "description": "Non versioned Container App configuration properties."
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/Template",
+ "description": "Container App versioned application definition."
+ },
+ "outboundIpAddresses": {
+ "description": "Outbound IP Addresses for container app.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the container app.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ContainerAppCollection": {
+ "description": "Container App collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Dapr": {
+ "description": "Container App Dapr configuration.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "Boolean indicating if the Dapr side car is enabled",
+ "type": "boolean",
+ "default": false
+ },
+ "appId": {
+ "description": "Dapr application identifier",
+ "type": "string"
+ },
+ "appProtocol": {
+ "description": "Tells Dapr which protocol your application is using. Valid options are http and grpc. Default is http",
+ "enum": [
+ "http",
+ "grpc"
+ ],
+ "type": "string",
+ "default": "http",
+ "x-ms-enum": {
+ "name": "appProtocol",
+ "modelAsString": true
+ }
+ },
+ "appPort": {
+ "format": "int32",
+ "description": "Tells Dapr which port your application is listening on",
+ "type": "integer"
+ },
+ "httpReadBufferSize": {
+ "type": "integer",
+ "description": "Dapr max size of http header read buffer in KB to handle when sending multi-KB headers. Default is 65KB.",
+ "format": "int32"
+ },
+ "httpMaxRequestSize": {
+ "type": "integer",
+ "description": "Increasing max size of request body http and grpc servers parameter in MB to handle uploading of big files. Default is 4 MB.",
+ "format": "int32"
+ },
+ "logLevel": {
+ "description": "Sets the log level for the Dapr sidecar. Allowed values are debug, info, warn, error. Default is info.",
+ "enum": [
+ "info",
+ "debug",
+ "warn",
+ "error"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "logLevel",
+ "modelAsString": true
+ }
+ },
+ "enableApiLogging": {
+ "description": "Enables API logging for the Dapr sidecar",
+ "type": "boolean"
+ }
+ }
+ },
+ "Ingress": {
+ "description": "Container App Ingress configuration.",
+ "type": "object",
+ "properties": {
+ "fqdn": {
+ "description": "Hostname.",
+ "type": "string",
+ "readOnly": true
+ },
+ "external": {
+ "description": "Bool indicating if app exposes an external http endpoint",
+ "default": false,
+ "type": "boolean"
+ },
+ "targetPort": {
+ "format": "int32",
+ "description": "Target Port in containers for traffic from ingress",
+ "type": "integer"
+ },
+ "exposedPort": {
+ "format": "int32",
+ "description": "Exposed Port in containers for TCP traffic from ingress",
+ "type": "integer"
+ },
+ "transport": {
+ "description": "Ingress transport protocol",
+ "enum": [
+ "auto",
+ "http",
+ "http2",
+ "tcp"
+ ],
+ "type": "string",
+ "default": "auto",
+ "x-ms-enum": {
+ "name": "IngressTransportMethod",
+ "modelAsString": true
+ }
+ },
+ "traffic": {
+ "description": "Traffic weights for app's revisions",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TrafficWeight"
+ },
+ "x-ms-identifiers": [
+ "revisionName"
+ ]
+ },
+ "customDomains": {
+ "description": "custom domain bindings for Container Apps' hostnames.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CustomDomain"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "allowInsecure": {
+ "description": "Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically redirected to HTTPS connections",
+ "type": "boolean",
+ "default": false
+ },
+ "ipSecurityRestrictions": {
+ "description": "Rules to restrict incoming IP address.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IpSecurityRestrictionRule"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "stickySessions": {
+ "description": "Sticky Sessions for Single Revision Mode",
+ "type": "object",
+ "properties": {
+ "affinity": {
+ "description": "Sticky Session Affinity",
+ "enum": [
+ "sticky",
+ "none"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "affinity",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "clientCertificateMode": {
+ "description": "Client certificate mode for mTLS authentication. Ignore indicates server drops client certificate on forwarding. Accept indicates server forwards client certificate but does not require a client certificate. Require indicates server requires a client certificate.",
+ "enum": [
+ "ignore",
+ "accept",
+ "require"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "IngressClientCertificateMode",
+ "modelAsString": true
+ }
+ },
+ "corsPolicy": {
+ "description": "CORS policy for container app",
+ "$ref": "#/definitions/CorsPolicy"
+ },
+ "additionalPortMappings": {
+ "description": "Settings to expose additional ports on container app",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IngressPortMapping"
+ },
+ "x-ms-identifiers": [
+ "targetPort"
+ ]
+ }
+ }
+ },
+ "RegistryCredentials": {
+ "description": "Container App Private Registry",
+ "type": "object",
+ "properties": {
+ "server": {
+ "description": "Container Registry Server",
+ "type": "string"
+ },
+ "username": {
+ "description": "Container Registry Username",
+ "type": "string"
+ },
+ "passwordSecretRef": {
+ "description": "The name of the Secret that contains the registry login password",
+ "type": "string"
+ },
+ "identity": {
+ "description": "A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned identities, use the full user-assigned identity Resource ID. For system-assigned identities, use 'system'",
+ "type": "string"
+ }
+ }
+ },
+ "SecretsCollection": {
+ "description": "Container App Secrets Collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerAppSecret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ContainerAppSecret": {
+ "description": "Container App Secret.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Secret Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "Secret Value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ },
+ "identity": {
+ "description": "Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a system-assigned identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "keyVaultUrl": {
+ "description": "Azure Key Vault URL pointing to the secret referenced by the container app.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TrafficWeight": {
+ "description": "Traffic weight assigned to a revision",
+ "type": "object",
+ "properties": {
+ "revisionName": {
+ "description": "Name of a revision",
+ "type": "string"
+ },
+ "weight": {
+ "format": "int32",
+ "description": "Traffic weight assigned to a revision",
+ "type": "integer"
+ },
+ "latestRevision": {
+ "description": "Indicates that the traffic weight belongs to a latest stable revision",
+ "default": false,
+ "type": "boolean"
+ },
+ "label": {
+ "description": "Associates a traffic label with a revision",
+ "type": "string"
+ }
+ }
+ },
+ "CustomDomain": {
+ "description": "Custom Domain of a Container App",
+ "type": "object",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "description": "Hostname.",
+ "type": "string"
+ },
+ "bindingType": {
+ "description": "Custom Domain binding type.",
+ "enum": [
+ "Disabled",
+ "SniEnabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "bindingType",
+ "modelAsString": true
+ }
+ },
+ "certificateId": {
+ "description": "Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.",
+ "type": "string"
+ }
+ }
+ },
+ "IpSecurityRestrictionRule": {
+ "description": "Rule to restrict incoming IP address.",
+ "type": "object",
+ "required": [
+ "name",
+ "ipAddressRange",
+ "action"
+ ],
+ "properties": {
+ "name": {
+ "description": "Name for the IP restriction rule.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Describe the IP restriction rule that is being sent to the container-app. This is an optional field.",
+ "type": "string"
+ },
+ "ipAddressRange": {
+ "description": "CIDR notation to match incoming IP address",
+ "type": "string"
+ },
+ "action": {
+ "description": "Allow or Deny rules to determine for incoming IP. Note: Rules can only consist of ALL Allow or ALL Deny",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "action",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CorsPolicy": {
+ "description": "Cross-Origin-Resource-Sharing policy",
+ "type": "object",
+ "required": [
+ "allowedOrigins"
+ ],
+ "properties": {
+ "allowedOrigins": {
+ "description": "Specifies the content for the access-control-allow-origins header",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "allowedMethods": {
+ "description": "Specifies the content for the access-control-allow-methods header",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "allowedHeaders": {
+ "description": "Specifies the content for the access-control-allow-headers header",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "exposeHeaders": {
+ "description": "Specifies the content for the access-control-expose-headers header ",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "maxAge": {
+ "format": "int32",
+ "description": "Specifies the content for the access-control-max-age header",
+ "type": "integer"
+ },
+ "allowCredentials": {
+ "description": "Specifies whether the resource allows credentials",
+ "type": "boolean"
+ }
+ }
+ },
+ "IngressPortMapping": {
+ "description": "Port mappings of container app ingress",
+ "type": "object",
+ "required": [
+ "external",
+ "targetPort"
+ ],
+ "properties": {
+ "external": {
+ "description": "Specifies whether the app port is accessible outside of the environment",
+ "type": "boolean"
+ },
+ "targetPort": {
+ "format": "int32",
+ "description": "Specifies the port user's container listens on",
+ "type": "integer"
+ },
+ "exposedPort": {
+ "format": "int32",
+ "description": "Specifies the exposed port for the target port. If not specified, it defaults to target port",
+ "type": "integer"
+ }
+ }
+ },
+ "CustomHostnameAnalysisResult": {
+ "description": "Custom domain analysis.",
+ "type": "object",
+ "properties": {
+ "hostName": {
+ "description": "Host name that was analyzed",
+ "type": "string",
+ "readOnly": true
+ },
+ "isHostnameAlreadyVerified": {
+ "description": "true if hostname is already verified; otherwise, false.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "customDomainVerificationTest": {
+ "description": "DNS verification test result.",
+ "enum": [
+ "Passed",
+ "Failed",
+ "Skipped"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "DnsVerificationTestResult",
+ "modelAsString": false
+ }
+ },
+ "customDomainVerificationFailureInfo": {
+ "description": "Raw failure information if DNS verification fails.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "details": {
+ "type": "array",
+ "description": "Details or the error",
+ "items": {
+ "description": "Detailed errors.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "x-ms-identifiers": [
+ "code"
+ ]
+ }
+ },
+ "readOnly": true
+ },
+ "hasConflictOnManagedEnvironment": {
+ "description": "true if there is a conflict on the Container App's managed environment; otherwise, false.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "conflictWithEnvironmentCustomDomain": {
+ "description": "true if there is a conflict on the Container App's managed environment level custom domain; otherwise, false.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "conflictingContainerAppResourceId": {
+ "description": "Name of the conflicting Container App on the Managed Environment if it's within the same subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "cNameRecords": {
+ "description": "CName records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "txtRecords": {
+ "description": "TXT records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "aRecords": {
+ "description": "A records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "alternateCNameRecords": {
+ "description": "Alternate CName records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "alternateTxtRecords": {
+ "description": "Alternate TXT records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ },
+ "ContainerAppAuthToken": {
+ "description": "Container App Auth Token.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Container App auth token resource specific properties",
+ "type": "object",
+ "properties": {
+ "token": {
+ "description": "Auth token value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ },
+ "expires": {
+ "format": "date-time",
+ "description": "Token expiration date.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "Service": {
+ "description": "Container App to be a dev service",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "description": "Dev ContainerApp service type",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ContainerAppsRevisions.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ContainerAppsRevisions.json
new file mode 100644
index 000000000000..e91517b3c8d8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ContainerAppsRevisions.json
@@ -0,0 +1,677 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Get the Revisions for a given Container App.",
+ "operationId": "ContainerAppsRevisions_ListRevisions",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App for which Revisions are needed.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply on the operation.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RevisionCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container App's revisions": {
+ "$ref": "./examples/Revisions_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-odata": "#/definitions/Revision"
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Get a revision of a Container App.",
+ "operationId": "ContainerAppsRevisions_GetRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Revision"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's revision": {
+ "$ref": "./examples/Revisions_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/activate": {
+ "post": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Activates a revision for a Container App",
+ "operationId": "ContainerAppsRevisions_ActivateRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App revision was activated"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Activate Container App's revision": {
+ "$ref": "./examples/Revisions_Activate.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/deactivate": {
+ "post": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Deactivates a revision for a Container App",
+ "operationId": "ContainerAppsRevisions_DeactivateRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App revision was deactivated"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Deactivate Container App's revision": {
+ "$ref": "./examples/Revisions_Deactivate.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/replicas/{replicaName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisionReplicas"
+ ],
+ "summary": "Get a replica for a Container App Revision.",
+ "operationId": "ContainerAppsRevisionReplicas_GetReplica",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "replicaName",
+ "in": "path",
+ "description": "Name of the Container App Revision Replica.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Replica"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's revision replica": {
+ "$ref": "./examples/Replicas_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/replicas": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisionReplicas"
+ ],
+ "summary": "List replicas for a Container App Revision.",
+ "operationId": "ContainerAppsRevisionReplicas_ListReplicas",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ReplicaCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container App's replicas": {
+ "$ref": "./examples/Replicas_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/restart": {
+ "post": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Restarts a revision for a Container App",
+ "operationId": "ContainerAppsRevisions_RestartRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App revision was restarted"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Restart Container App's revision": {
+ "$ref": "./examples/Revisions_Restart.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Revision": {
+ "description": "Container App Revision.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Revision resource specific properties",
+ "type": "object",
+ "properties": {
+ "createdTime": {
+ "format": "date-time",
+ "description": "Timestamp describing when the revision was created\nby controller",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActiveTime": {
+ "format": "date-time",
+ "description": "Timestamp describing when the revision was last active. Only meaningful when revision is inactive",
+ "type": "string",
+ "readOnly": true
+ },
+ "fqdn": {
+ "description": "Fully qualified domain name of the revision",
+ "type": "string",
+ "readOnly": true
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/Template",
+ "description": "Container App Revision Template with all possible settings and the\ndefaults if user did not provide them. The defaults are populated\nas they were at the creation time",
+ "readOnly": true
+ },
+ "active": {
+ "description": "Boolean describing if the Revision is Active",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "replicas": {
+ "format": "int32",
+ "description": "Number of pods currently running for this revision",
+ "type": "integer",
+ "readOnly": true
+ },
+ "trafficWeight": {
+ "format": "int32",
+ "description": "Traffic weight assigned to this revision",
+ "type": "integer",
+ "readOnly": true
+ },
+ "provisioningError": {
+ "description": "Optional Field - Platform Error Message",
+ "type": "string",
+ "readOnly": true
+ },
+ "healthState": {
+ "description": "Current health State of the revision",
+ "enum": [
+ "Healthy",
+ "Unhealthy",
+ "None"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RevisionHealthState",
+ "modelAsString": true
+ }
+ },
+ "provisioningState": {
+ "description": "Current provisioning State of the revision",
+ "enum": [
+ "Provisioning",
+ "Provisioned",
+ "Failed",
+ "Deprovisioning",
+ "Deprovisioned"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RevisionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "runningState": {
+ "description": "Current running state of the revision",
+ "enum": [
+ "Running",
+ "Processing",
+ "Stopped",
+ "Degraded",
+ "Failed",
+ "Unknown"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RevisionRunningState",
+ "modelAsString": true
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RevisionCollection": {
+ "description": "Container App Revisions collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Revision"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Replica": {
+ "description": "Container App Revision Replica.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Replica resource specific properties",
+ "type": "object",
+ "properties": {
+ "createdTime": {
+ "type": "string",
+ "description": "Timestamp describing when the pod was created by controller",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "runningState": {
+ "description": "Current running state of the replica",
+ "enum": [
+ "Running",
+ "NotRunning",
+ "Unknown"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ContainerAppReplicaRunningState",
+ "modelAsString": true
+ }
+ },
+ "runningStateDetails": {
+ "description": "The details of replica current running state",
+ "type": "string",
+ "readOnly": true
+ },
+ "containers": {
+ "description": "The containers collection under a replica.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ReplicaContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "initContainers": {
+ "description": "The init containers collection under a replica.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ReplicaContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ReplicaCollection": {
+ "description": "Container App Revision Replicas collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Replica"
+ }
+ }
+ }
+ },
+ "ReplicaContainer": {
+ "description": "Container object under Container App Revision Replica.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The Name of the Container",
+ "type": "string"
+ },
+ "containerId": {
+ "description": "The Id of the Container",
+ "type": "string"
+ },
+ "ready": {
+ "description": "The container ready status",
+ "type": "boolean"
+ },
+ "started": {
+ "description": "The container start status",
+ "type": "boolean"
+ },
+ "restartCount": {
+ "format": "int32",
+ "description": "The container restart count",
+ "type": "integer"
+ },
+ "runningState": {
+ "description": "Current running state of the container",
+ "enum": [
+ "Running",
+ "Terminated",
+ "Waiting"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ContainerAppContainerRunningState",
+ "modelAsString": true
+ }
+ },
+ "runningStateDetails": {
+ "description": "The details of container current running state",
+ "type": "string",
+ "readOnly": true
+ },
+ "logStreamEndpoint": {
+ "description": "Log Stream endpoint",
+ "type": "string",
+ "readOnly": true
+ },
+ "execEndpoint": {
+ "description": "Container exec endpoint",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Diagnostics.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Diagnostics.json
new file mode 100644
index 000000000000..527bfba1d4cf
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Diagnostics.json
@@ -0,0 +1,715 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectors": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get the list of diagnostics for a given Container App.",
+ "operationId": "ContainerAppsDiagnostics_ListDetectors",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App for which detector info is needed.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiagnosticsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get the list of available diagnostics for a given Container App": {
+ "$ref": "./examples/ContainerAppsDiagnostics_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectors/{detectorName}": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get a diagnostics result of a Container App.",
+ "operationId": "ContainerAppsDiagnostics_GetDetector",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "detectorName",
+ "in": "path",
+ "description": "Name of the Container App Detector.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Diagnostics"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's diagnostics info": {
+ "$ref": "./examples/ContainerAppsDiagnostics_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectorProperties/revisionsApi/revisions/": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get the Revisions for a given Container App.",
+ "operationId": "ContainerAppsDiagnostics_ListRevisions",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App for which Revisions are needed.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply on the operation.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./ContainerAppsRevisions.json#/definitions/RevisionCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container App's revisions": {
+ "$ref": "./examples/Revisions_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-odata": "#/definitions/Revision"
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectorProperties/revisionsApi/revisions/{revisionName}": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get a revision of a Container App.",
+ "operationId": "ContainerAppsDiagnostics_GetRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./ContainerAppsRevisions.json#/definitions/Revision"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's revision": {
+ "$ref": "./examples/Revisions_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectorProperties/rootApi/": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get the properties of a Container App.",
+ "operationId": "ContainerAppsDiagnostics_GetRoot",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "./ContainerApps.json#/definitions/ContainerApp"
+ }
+ },
+ "404": {
+ "description": "Not found.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App": {
+ "$ref": "./examples/ContainerApps_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/detectors": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Diagnostics"
+ ],
+ "summary": "Get the list of diagnostics for a given Managed Environment.",
+ "description": "Get the list of diagnostics for a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironmentDiagnostics_ListDetectors",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiagnosticsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get the list of available diagnostic data for a managed environments": {
+ "$ref": "./examples/ManagedEnvironmentDiagnostics_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/detectors/{detectorName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Diagnostics"
+ ],
+ "summary": "Get the diagnostics data for a given Managed Environment.",
+ "description": "Get the diagnostics data for a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironmentDiagnostics_GetDetector",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "detectorName",
+ "in": "path",
+ "description": "Name of the Managed Environment detector.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Diagnostics"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get diagnostic data for a managed environments": {
+ "$ref": "./examples/ManagedEnvironmentDiagnostics_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/detectorProperties/rootApi/": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Diagnostics"
+ ],
+ "summary": "Get the properties of a Managed Environment.",
+ "description": "Get the properties of a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironmentsDiagnostics_GetRoot",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./ManagedEnvironments.json#/definitions/ManagedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get environments by name": {
+ "$ref": "./examples/ManagedEnvironments_Get.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DiagnosticsCollection": {
+ "description": "Diagnostics data collection for a resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of diagnostic data.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Diagnostics"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Diagnostics": {
+ "description": "Diagnostics data for a resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Diagnostics resource specific properties",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "$ref": "#/definitions/DiagnosticsDefinition",
+ "description": "Metadata of the diagnostics response."
+ },
+ "dataset": {
+ "description": "Set of data collections associated with the response.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiagnosticsDataApiResponse"
+ },
+ "x-ms-identifiers": []
+ },
+ "status": {
+ "$ref": "#/definitions/DiagnosticsStatus",
+ "description": "Status of the diagnostics response."
+ },
+ "dataProviderMetadata": {
+ "$ref": "#/definitions/DiagnosticDataProviderMetadata",
+ "description": "List of data providers' metadata."
+ }
+ }
+ }
+ }
+ },
+ "DiagnosticsDefinition": {
+ "description": "Metadata of the diagnostics response",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Unique detector name",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Display Name of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "Details of the diagnostics info",
+ "type": "string",
+ "readOnly": true
+ },
+ "author": {
+ "description": "Authors' names of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "category": {
+ "description": "Category of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "supportTopicList": {
+ "description": "List of support topics",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiagnosticSupportTopic"
+ }
+ },
+ "analysisTypes": {
+ "description": "List of analysis types",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "type": {
+ "description": "Authors' names of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "score": {
+ "description": "Authors' names of the detector",
+ "type": "number",
+ "readOnly": true
+ }
+ }
+ },
+ "DiagnosticSupportTopic": {
+ "description": "Support topic information",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Unique topic identifier",
+ "type": "string",
+ "readOnly": true
+ },
+ "pesId": {
+ "description": "PES identifier",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DiagnosticsDataApiResponse": {
+ "description": "Diagnostics data returned from a detector",
+ "type": "object",
+ "properties": {
+ "table": {
+ "description": "Table response",
+ "$ref": "#/definitions/DiagnosticDataTableResponseObject"
+ },
+ "renderingProperties": {
+ "description": "Details of the table response",
+ "$ref": "#/definitions/DiagnosticRendering"
+ }
+ }
+ },
+ "DiagnosticDataTableResponseObject": {
+ "description": "Diagnostics data table",
+ "type": "object",
+ "properties": {
+ "tableName": {
+ "description": "Table name",
+ "type": "string"
+ },
+ "columns": {
+ "description": "Columns in the table",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiagnosticDataTableResponseColumn"
+ },
+ "x-ms-identifiers": [
+ "columnName"
+ ]
+ },
+ "rows": {
+ "description": "Rows in the table",
+ "type": "array",
+ "items": {
+ "type": "object"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "DiagnosticDataTableResponseColumn": {
+ "description": "Diagnostics data column",
+ "type": "object",
+ "properties": {
+ "columnName": {
+ "description": "Column name",
+ "type": "string"
+ },
+ "dataType": {
+ "description": "Data type of the column",
+ "type": "string"
+ },
+ "columnType": {
+ "description": "Column type",
+ "type": "string"
+ }
+ }
+ },
+ "DiagnosticRendering": {
+ "description": "Rendering details of a diagnostics table",
+ "type": "object",
+ "properties": {
+ "type": {
+ "format": "int32",
+ "description": "Rendering type",
+ "type": "integer"
+ },
+ "title": {
+ "description": "Title of the table",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the table",
+ "type": "string"
+ },
+ "isVisible": {
+ "description": "Flag if the table should be rendered",
+ "type": "boolean"
+ }
+ }
+ },
+ "DiagnosticsStatus": {
+ "description": "Rendering details of a diagnostics table",
+ "type": "object",
+ "properties": {
+ "message": {
+ "description": "Diagnostic message",
+ "type": "string"
+ },
+ "statusId": {
+ "format": "int32",
+ "description": "Status",
+ "type": "integer"
+ }
+ }
+ },
+ "DiagnosticDataProviderMetadata": {
+ "description": "Details of a diagnostics data provider",
+ "type": "object",
+ "properties": {
+ "providerName": {
+ "description": "Name of data provider",
+ "type": "string"
+ },
+ "propertyBag": {
+ "description": "Collection of properties",
+ "type": "array",
+ "items": {
+ "description": "Property details",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Property name",
+ "type": "string"
+ },
+ "value": {
+ "description": "Property value",
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Global.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Global.json
new file mode 100644
index 000000000000..c2a65c260f7d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Global.json
@@ -0,0 +1,140 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/providers/Microsoft.App/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "Lists all of the available RP 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": "#/definitions/AvailableOperations"
+ }
+ },
+ "default": {
+ "description": "Resource Provider error response describing why the operation failed.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List all operations": {
+ "$ref": "./examples/Operations_List.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AvailableOperations": {
+ "description": "Available operations of the service",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of available operation details",
+ "uniqueItems": false,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationDetail"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "nextLink": {
+ "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDetail": {
+ "description": "Operation detail payload",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the operation",
+ "type": "string"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is a data action",
+ "type": "boolean"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplay",
+ "description": "Display of the operation"
+ },
+ "origin": {
+ "description": "Origin of the operation",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDisplay": {
+ "description": "Operation display payload",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Resource provider of the operation",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Resource of the operation",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Localized friendly name for the operation",
+ "type": "string"
+ },
+ "description": {
+ "description": "Localized friendly description for the operation",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Jobs.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Jobs.json
new file mode 100644
index 000000000000..150d1ffddbf5
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Jobs.json
@@ -0,0 +1,1192 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/jobs": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get the Container Apps Jobs in a given subscription.",
+ "operationId": "Jobs_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobsCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Jobs by subscription": {
+ "$ref": "./examples/Jobs_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get the Container Apps Jobs in a given resource group.",
+ "operationId": "Jobs_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Jobs by resource group": {
+ "$ref": "./examples/Jobs_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get the properties of a Container Apps Job.",
+ "operationId": "Jobs_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container Apps Job": {
+ "$ref": "./examples/Job_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Create or Update a Container Apps Job.",
+ "description": "Create or Update a Container Apps Job.",
+ "operationId": "Jobs_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "name": "JobEnvelope",
+ "in": "body",
+ "description": "Properties used to create a container apps job",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Container Apps Job create has been started.",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "200": {
+ "description": "No change performed on the Container Apps Job.",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container Apps Job": {
+ "$ref": "./examples/Job_CreateorUpdate.json"
+ },
+ "Create or Update Container Apps Job With Event Driven Trigger": {
+ "$ref": "./examples/Job_CreateorUpdate_EventTrigger.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Delete a Container Apps Job.",
+ "description": "Delete a Container Apps Job.",
+ "operationId": "Jobs_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container Apps Job deleted successfully."
+ },
+ "202": {
+ "description": "Delete operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "Container Apps Job does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container Apps Job": {
+ "$ref": "./examples/Job_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Update properties of a Container Apps Job",
+ "description": "Patches a Container Apps Job using JSON Merge Patch",
+ "operationId": "Jobs_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "name": "JobEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties used to create a container apps job",
+ "schema": {
+ "$ref": "#/definitions/JobPatchProperties"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "202": {
+ "description": "Patch operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Container Apps Job": {
+ "$ref": "./examples/Job_Patch.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/start": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Start a Container Apps Job",
+ "operationId": "Jobs_Start",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "name": "template",
+ "in": "body",
+ "description": "Properties used to start a job execution.",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/JobExecutionTemplate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobExecutionBase"
+ }
+ },
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Run a Container Apps Job": {
+ "$ref": "./examples/Job_Start.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/executions/{jobExecutionName}/stop": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Terminates execution of a running container apps job",
+ "operationId": "Jobs_StopExecution",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobExecutionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container Apps Jobs terminated successfully."
+ },
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Terminate a Container Apps Job": {
+ "$ref": "./examples/Job_Stop_Execution.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/stop": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Terminates execution of a running container apps job",
+ "operationId": "Jobs_StopMultipleExecutions",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of all the job executions that were requested to be stopped",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppJobExecutions"
+ }
+ },
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Terminate Multiple Container Apps Job": {
+ "$ref": "./examples/Job_Stop_Multiple.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/executions": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get a Container Apps Job's executions",
+ "operationId": "JobsExecutions_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply on the operation.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppJobExecutions"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Container Apps Job Executions": {
+ "$ref": "./examples/Job_Executions_Get.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/executions/{jobExecutionName}": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get details of a single job execution",
+ "operationId": "JobExecution",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobExecutionNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobExecution"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a single Job Execution": {
+ "$ref": "./examples/Job_Execution_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/listSecrets": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "List secrets for a container apps job",
+ "operationId": "Jobs_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobSecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Job Secrets": {
+ "$ref": "./examples/Job_ListSecrets.json"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "JobNameParameter": {
+ "name": "jobName",
+ "in": "path",
+ "description": "Job Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$",
+ "x-ms-parameter-location": "method"
+ },
+ "JobExecutionNameParameter": {
+ "name": "jobExecutionName",
+ "in": "path",
+ "description": "Job execution name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "JobConfiguration": {
+ "description": "Non versioned Container Apps Job configuration properties",
+ "type": "object",
+ "required": [
+ "replicaTimeout",
+ "triggerType"
+ ],
+ "properties": {
+ "secrets": {
+ "description": "Collection of secrets used by a Container Apps Job",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "triggerType": {
+ "description": "Trigger type of the job",
+ "enum": [
+ "Schedule",
+ "Event",
+ "Manual"
+ ],
+ "type": "string",
+ "default": "Manual",
+ "x-ms-enum": {
+ "name": "TriggerType",
+ "modelAsString": true
+ }
+ },
+ "replicaTimeout": {
+ "description": "Maximum number of seconds a replica is allowed to run.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "replicaRetryLimit": {
+ "format": "int32",
+ "description": "Maximum number of retries before failing the job.",
+ "type": "integer"
+ },
+ "manualTriggerConfig": {
+ "type": "object",
+ "description": "Manual trigger configuration for a single execution job. Properties replicaCompletionCount and parallelism would be set to 1 by default",
+ "properties": {
+ "replicaCompletionCount": {
+ "$ref": "#/definitions/ReplicaCompletionCount"
+ },
+ "parallelism": {
+ "$ref": "#/definitions/Parallelism"
+ }
+ }
+ },
+ "scheduleTriggerConfig": {
+ "description": "Cron formatted repeating trigger schedule (\"* * * * *\") for cronjobs. Properties completions and parallelism would be set to 1 by default",
+ "required": [
+ "cronExpression"
+ ],
+ "type": "object",
+ "properties": {
+ "replicaCompletionCount": {
+ "$ref": "#/definitions/ReplicaCompletionCount"
+ },
+ "cronExpression": {
+ "description": "Cron formatted repeating schedule (\"* * * * *\") of a Cron Job.",
+ "type": "string"
+ },
+ "parallelism": {
+ "$ref": "#/definitions/Parallelism"
+ }
+ }
+ },
+ "eventTriggerConfig": {
+ "type": "object",
+ "description": "Trigger configuration of an event driven job.",
+ "properties": {
+ "replicaCompletionCount": {
+ "$ref": "#/definitions/ReplicaCompletionCount"
+ },
+ "parallelism": {
+ "$ref": "#/definitions/Parallelism"
+ },
+ "scale": {
+ "$ref": "#/definitions/JobScale"
+ }
+ }
+ },
+ "registries": {
+ "description": "Collection of private container registry credentials used by a Container apps job",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryCredentials"
+ },
+ "x-ms-identifiers": [
+ "server"
+ ]
+ }
+ }
+ },
+ "Job": {
+ "type": "object",
+ "description": "Container App Job",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "identity": {
+ "description": "Managed identities needed by a container app job to interact with other Azure services to not maintain any secrets or credentials in code.",
+ "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity"
+ },
+ "properties": {
+ "description": "Container Apps Job resource specific properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Container Apps Job.",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleting"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "JobProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "environmentId": {
+ "description": "Resource ID of environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "workloadProfileName": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileName",
+ "description": "Workload profile name to pin for container apps job execution."
+ },
+ "configuration": {
+ "$ref": "#/definitions/JobConfiguration",
+ "description": "Container Apps Job configuration properties."
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/JobTemplate",
+ "description": "Container Apps job definition."
+ },
+ "outboundIpAddresses": {
+ "description": "Outbound IP Addresses of a container apps job.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the container apps job.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "JobPatchProperties": {
+ "type": "object",
+ "description": "Container Apps Job resource specific properties.",
+ "properties": {
+ "identity": {
+ "description": "Managed identities needed by a container app job to interact with other Azure services to not maintain any secrets or credentials in code.",
+ "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ],
+ "description": "Resource tags."
+ },
+ "properties": {
+ "type": "object",
+ "properties": {
+ "environmentId": {
+ "description": "Resource ID of environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read",
+ "update"
+ ]
+ },
+ "configuration": {
+ "$ref": "#/definitions/JobConfiguration",
+ "description": "Container Apps Job configuration properties."
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/JobTemplate",
+ "description": "Container Apps job definition."
+ },
+ "outboundIpAddresses": {
+ "description": "Outbound IP Addresses of a container apps job.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the container apps job.",
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "JobsCollection": {
+ "description": "Container Apps Jobs collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RegistryCredentials": {
+ "description": "Container App Private Registry",
+ "type": "object",
+ "properties": {
+ "server": {
+ "description": "Container Registry Server",
+ "type": "string"
+ },
+ "username": {
+ "description": "Container Registry Username",
+ "type": "string"
+ },
+ "passwordSecretRef": {
+ "description": "The name of the Secret that contains the registry login password",
+ "type": "string"
+ },
+ "identity": {
+ "description": "A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned identities, use the full user-assigned identity Resource ID. For system-assigned identities, use 'system'",
+ "type": "string"
+ }
+ }
+ },
+ "JobSecretsCollection": {
+ "description": "Container Apps Job Secrets Collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ReplicaCompletionCount": {
+ "description": "Minimum number of successful replica completions before overall job completion.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "Parallelism": {
+ "description": "Number of parallel replicas of a job that can run at a given time.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "PollingInterval": {
+ "description": "Interval to check each event source in seconds. Defaults to 30s",
+ "format": "int32",
+ "type": "integer"
+ },
+ "JobScaleRule": {
+ "description": "Scaling rule.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Scale Rule Name",
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of the scale rule\neg: azure-servicebus, redis etc.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata properties to describe the scale rule.",
+ "type": "object"
+ },
+ "auth": {
+ "description": "Authentication secrets for the scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/ScaleRuleAuth"
+ }
+ }
+ }
+ },
+ "JobScale": {
+ "description": "Scaling configurations for event driven jobs.",
+ "type": "object",
+ "properties": {
+ "pollingInterval": {
+ "$ref": "#/definitions/PollingInterval"
+ },
+ "minExecutions": {
+ "format": "int32",
+ "description": "Minimum number of job executions that are created for a trigger, default 0",
+ "type": "integer",
+ "default": 0
+ },
+ "maxExecutions": {
+ "format": "int32",
+ "description": "Maximum number of job executions that are created for a trigger, default 100.",
+ "type": "integer",
+ "default": 100
+ },
+ "rules": {
+ "description": "Scaling rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobScaleRule"
+ }
+ }
+ }
+ },
+ "JobExecutionBase": {
+ "description": "Container App's Job execution name.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Job execution name.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Job execution Id.",
+ "type": "string"
+ }
+ }
+ },
+ "JobExecution": {
+ "description": "Container Apps Job execution.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Job execution Name.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Job execution Id.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Job Type.",
+ "type": "string"
+ },
+ "status": {
+ "description": "Current running State of the job",
+ "enum": [
+ "Running",
+ "Processing",
+ "Stopped",
+ "Degraded",
+ "Failed",
+ "Unknown",
+ "Succeeded"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "JobExecutionRunningState",
+ "modelAsString": true
+ }
+ },
+ "startTime": {
+ "description": "Job execution start time.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "endTime": {
+ "description": "Job execution end time.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "template": {
+ "description": "Job's execution container.",
+ "$ref": "#/definitions/JobExecutionTemplate"
+ }
+ }
+ },
+ "ContainerAppJobExecutions": {
+ "description": "Container App executions collection ARM resource.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecution"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "JobExecutionNamesCollection": {
+ "description": "Container App executions names list.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecutionBase"
+ }
+ }
+ }
+ },
+ "JobExecutionTemplate": {
+ "description": "Job's execution template, containing container configuration for a job's execution",
+ "type": "object",
+ "properties": {
+ "containers": {
+ "description": "List of container definitions for the Container Apps Job.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecutionContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "initContainers": {
+ "description": "List of specialized containers that run before job containers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecutionContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "JobExecutionContainer": {
+ "description": "Container Apps Jobs execution container definition.",
+ "type": "object",
+ "properties": {
+ "image": {
+ "description": "Container image tag.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Custom container name.",
+ "type": "string"
+ },
+ "command": {
+ "description": "Container start command.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "args": {
+ "description": "Container start command arguments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "env": {
+ "description": "Container environment variables.",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/EnvironmentVar"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "resources": {
+ "$ref": "./CommonDefinitions.json#/definitions/ContainerResources",
+ "description": "Container resource requirements."
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironments.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironments.json
new file mode 100644
index 000000000000..9feebaa9e899
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironments.json
@@ -0,0 +1,1438 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/managedEnvironments": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get all Environments for a subscription.",
+ "description": "Get all Managed Environments for a subscription.",
+ "operationId": "ManagedEnvironments_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by subscription": {
+ "$ref": "./examples/ManagedEnvironments_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get all the Environments in a resource group.",
+ "description": "Get all the Managed Environments in a resource group.",
+ "operationId": "ManagedEnvironments_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by resource group": {
+ "$ref": "./examples/ManagedEnvironments_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get the properties of a Managed Environment.",
+ "description": "Get the properties of a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironments_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get environments by name": {
+ "$ref": "./examples/ManagedEnvironments_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Creates or updates a Managed Environment.",
+ "description": "Creates or updates a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironments_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "environmentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Environment.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create environments": {
+ "$ref": "./examples/ManagedEnvironments_CreateOrUpdate.json"
+ },
+ "Create environment with custom infrastructureResourceGroup": {
+ "$ref": "./examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Delete a Managed Environment.",
+ "description": "Delete a Managed Environment if it does not have any container apps.",
+ "operationId": "ManagedEnvironments_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "202": {
+ "description": "Delete operation is in progress"
+ },
+ "204": {
+ "description": "Environment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete environment by name": {
+ "$ref": "./examples/ManagedEnvironments_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Update Managed Environment's properties.",
+ "description": "Patches a Managed Environment using JSON Merge Patch",
+ "operationId": "ManagedEnvironments_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "environmentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Environment.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "202": {
+ "description": "Patch operation is in progress."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Managed Environment": {
+ "$ref": "./examples/ManagedEnvironments_Patch.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/certificates": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the Certificates in a given managed environment.",
+ "operationId": "Certificates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificateCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Certificates by Managed Environment": {
+ "$ref": "./examples/Certificates_ListByManagedEnvironment.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/certificates/{certificateName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the specified Certificate.",
+ "operationId": "Certificates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Certificate": {
+ "$ref": "./examples/Certificate_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Create or Update a Certificate.",
+ "operationId": "Certificates_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "description": "Certificate to be created or updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Certificate": {
+ "$ref": "./examples/Certificate_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Deletes the specified Certificate.",
+ "operationId": "Certificates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Certificate does not exist"
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Certificate": {
+ "$ref": "./examples/Certificate_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Update properties of a certificate",
+ "description": "Patches a certificate. Currently only patching of tags is supported",
+ "operationId": "Certificates_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a certificate that need to be updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificatePatch"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Certificate updated successfully.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Certificate": {
+ "$ref": "./examples/Certificates_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/managedCertificates/{managedCertificateName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Get the specified Managed Certificate.",
+ "operationId": "ManagedCertificates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Certificate": {
+ "$ref": "./examples/ManagedCertificate_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Create or Update a Managed Certificate.",
+ "operationId": "ManagedCertificates_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateEnvelope",
+ "in": "body",
+ "description": "Managed Certificate to be created or updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "400": {
+ "description": "Bad Request.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "Create or Update Certificate": {
+ "$ref": "./examples/ManagedCertificate_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Deletes the specified Managed Certificate.",
+ "operationId": "ManagedCertificates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Certificate does not exist"
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Certificate": {
+ "$ref": "./examples/ManagedCertificate_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Update tags of a managed certificate",
+ "description": "Patches a managed certificate. Oly patching of tags is supported",
+ "operationId": "ManagedCertificates_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a managed certificate that need to be updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificatePatch"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Managed Certificate updated successfully.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Managed Certificate": {
+ "$ref": "./examples/ManagedCertificates_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/managedCertificates": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Get the Managed Certificates in a given managed environment.",
+ "operationId": "ManagedCertificates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificateCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Managed Certificates by Managed Environment": {
+ "$ref": "./examples/ManagedCertificates_ListByManagedEnvironment.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Checks the resource name availability.",
+ "description": "Checks if resource name is available.",
+ "operationId": "Namespaces_CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "checkNameAvailabilityRequest",
+ "in": "body",
+ "description": "The check name availability request.",
+ "required": true,
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ContainerApps_CheckNameAvailability": {
+ "$ref": "./examples/ContainerApps_CheckNameAvailability.json"
+ },
+ "Certificates_CheckNameAvailability": {
+ "$ref": "./examples/Certificates_CheckNameAvailability.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/getAuthtoken": {
+ "post": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get auth token for a managed environment",
+ "description": "Checks if resource name is available.",
+ "operationId": "ManagedEnvironments_GetAuthToken",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EnvironmentAuthToken"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Environment Auth Token": {
+ "$ref": "./examples/ManagedEnvironments_GetAuthToken.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/workloadProfileStates": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get all workload Profile States for a Managed Environment..",
+ "description": "Get all workload Profile States for a Managed Environment.",
+ "operationId": "ManagedEnvironments_ListWorkloadProfileStates",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/workloadProfileStatesCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by subscription": {
+ "$ref": "./examples/ManagedEnvironments_ListWorkloadProfileStates.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AppLogsConfiguration": {
+ "description": "Configuration of application logs",
+ "type": "object",
+ "properties": {
+ "destination": {
+ "description": "Logs destination, can be 'log-analytics', 'azure-monitor' or 'none'",
+ "type": "string"
+ },
+ "logAnalyticsConfiguration": {
+ "description": "Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'",
+ "$ref": "#/definitions/LogAnalyticsConfiguration"
+ }
+ }
+ },
+ "KedaConfiguration": {
+ "type": "object",
+ "description": "Configuration properties Keda component",
+ "properties": {
+ "version": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The version of Keda"
+ }
+ }
+ },
+ "DaprConfiguration": {
+ "type": "object",
+ "description": "Configuration properties Dapr component",
+ "properties": {
+ "version": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The version of Dapr"
+ }
+ }
+ },
+ "VnetConfiguration": {
+ "type": "object",
+ "description": "Configuration properties for apps environment to join a Virtual Network",
+ "properties": {
+ "internal": {
+ "type": "boolean",
+ "description": "Boolean indicating the environment only has an internal load balancer. These environments do not have a public static IP resource. They must provide infrastructureSubnetId if enabling this property",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "infrastructureSubnetId": {
+ "type": "string",
+ "description": "Resource ID of a subnet for infrastructure components. Must not overlap with any other provided IP ranges.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "dockerBridgeCidr": {
+ "type": "string",
+ "description": "CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other provided IP ranges.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "platformReservedCidr": {
+ "type": "string",
+ "description": "IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must not overlap with any other provided IP ranges.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "platformReservedDnsIP": {
+ "type": "string",
+ "description": " An IP address from the IP range defined by platformReservedCidr that will be reserved for the internal DNS server.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ }
+ }
+ },
+ "Mtls": {
+ "type": "object",
+ "description": "Configuration properties for mutual TLS authentication",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Boolean indicating whether the mutual TLS authentication is enabled"
+ }
+ }
+ },
+ "ManagedEnvironment": {
+ "description": "An environment for hosting container apps",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "type": "string",
+ "description": "Kind of the Environment."
+ },
+ "properties": {
+ "description": "Managed environment resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Environment.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Waiting",
+ "InitializationInProgress",
+ "InfrastructureSetupInProgress",
+ "InfrastructureSetupComplete",
+ "ScheduledForDelete",
+ "UpgradeRequested",
+ "UpgradeFailed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "EnvironmentProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "daprAIInstrumentationKey": {
+ "type": "string",
+ "description": "Azure Monitor instrumentation key used by Dapr to export Service to Service communication telemetry",
+ "x-ms-secret": true
+ },
+ "daprAIConnectionString": {
+ "type": "string",
+ "description": "Application Insights connection string used by Dapr to export Service to Service communication telemetry",
+ "x-ms-secret": true
+ },
+ "vnetConfiguration": {
+ "description": "Vnet configuration for the environment",
+ "$ref": "#/definitions/VnetConfiguration"
+ },
+ "deploymentErrors": {
+ "description": "Any errors that occurred during deployment or deployment validation",
+ "type": "string",
+ "readOnly": true
+ },
+ "defaultDomain": {
+ "description": "Default Domain Name for the cluster",
+ "type": "string",
+ "readOnly": true
+ },
+ "staticIp": {
+ "description": "Static IP of the Environment",
+ "type": "string",
+ "readOnly": true
+ },
+ "appLogsConfiguration": {
+ "$ref": "#/definitions/AppLogsConfiguration",
+ "description": "Cluster configuration which enables the log daemon to export\napp logs to a destination. Currently only \"log-analytics\" is\nsupported"
+ },
+ "zoneRedundant": {
+ "description": "Whether or not this Managed Environment is zone-redundant.",
+ "type": "boolean",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "customDomainConfiguration": {
+ "$ref": "./CommonDefinitions.json#/definitions/CustomDomainConfiguration",
+ "description": "Custom domain configuration for the environment"
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the Environment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "workloadProfiles": {
+ "description": "Workload profiles configured for the Managed Environment.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WorkloadProfile"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "kedaConfiguration": {
+ "$ref": "#/definitions/KedaConfiguration",
+ "description": "The configuration of Keda component."
+ },
+ "daprConfiguration": {
+ "$ref": "#/definitions/DaprConfiguration",
+ "description": "The configuration of Dapr component."
+ },
+ "infrastructureResourceGroup": {
+ "description": "Name of the platform-managed resource group created for the Managed Environment to host infrastructure resources. If a subnet ID is provided, this resource group will be created in the same subscription as the subnet.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "peerAuthentication": {
+ "description": "Peer authentication settings for the Managed Environment",
+ "type": "object",
+ "properties": {
+ "mtls": {
+ "description": "Mutual TLS authentication settings for the Managed Environment",
+ "$ref": "#/definitions/Mtls"
+ }
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ManagedEnvironmentsCollection": {
+ "description": "Collection of Environments",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "LogAnalyticsConfiguration": {
+ "description": "Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'",
+ "type": "object",
+ "properties": {
+ "customerId": {
+ "description": "Log analytics customer id",
+ "type": "string"
+ },
+ "sharedKey": {
+ "description": "Log analytics customer key",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "EnvironmentAuthToken": {
+ "description": "Environment Auth Token.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Environment auth token resource specific properties",
+ "type": "object",
+ "properties": {
+ "token": {
+ "description": "Auth token value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ },
+ "expires": {
+ "format": "date-time",
+ "description": "Token expiration date.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WorkloadProfile": {
+ "description": "Workload profile to scope container app execution.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileName",
+ "description": "Workload profile type for the workloads to run on."
+ },
+ "workloadProfileType": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileType",
+ "description": "Workload profile type for the workloads to run on."
+ },
+ "minimumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The minimum capacity."
+ },
+ "maximumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum capacity."
+ }
+ },
+ "required": [
+ "name",
+ "workloadProfileType"
+ ]
+ },
+ "workloadProfileStates": {
+ "description": "Collection of all the workload Profile States for a Managed Environment..",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Workload Profile resource specific properties.",
+ "type": "object",
+ "properties": {
+ "minimumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Minimum count of instances."
+ },
+ "maximumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum count of nodes."
+ },
+ "currentCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Current count of nodes."
+ }
+ }
+ }
+ }
+ },
+ "workloadProfileStatesCollection": {
+ "description": "Collection of workloadProfileStates",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/workloadProfileStates"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsDaprComponents.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsDaprComponents.json
new file mode 100644
index 000000000000..151ca5456993
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsDaprComponents.json
@@ -0,0 +1,313 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/daprComponents": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get the Dapr Components for a managed environment.",
+ "operationId": "DaprComponents_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Dapr Components": {
+ "$ref": "./examples/DaprComponents_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/daprComponents/{componentName}": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get a dapr component.",
+ "operationId": "DaprComponents_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Dapr Component with secrets": {
+ "$ref": "./examples/DaprComponents_Get_Secrets.json"
+ },
+ "Get Dapr Component with secret store component": {
+ "$ref": "./examples/DaprComponents_Get_SecretStoreComponent.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Creates or updates a Dapr Component.",
+ "description": "Creates or updates a Dapr Component in a Managed Environment.",
+ "operationId": "DaprComponents_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "daprComponentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Dapr Component.",
+ "required": true,
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create or update dapr component with secrets": {
+ "$ref": "./examples/DaprComponents_CreateOrUpdate_Secrets.json"
+ },
+ "Create or update dapr component with secret store component": {
+ "$ref": "./examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Delete a Dapr Component.",
+ "description": "Delete a Dapr Component from a Managed Environment.",
+ "operationId": "DaprComponents_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Environment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete dapr component": {
+ "$ref": "./examples/DaprComponents_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": false
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/daprComponents/{componentName}/listSecrets": {
+ "post": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "List secrets for a dapr component",
+ "operationId": "DaprComponents_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprSecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Secrets": {
+ "$ref": "./examples/DaprComponents_ListSecrets.json"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsStorages.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsStorages.json
new file mode 100644
index 000000000000..e67334148aeb
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsStorages.json
@@ -0,0 +1,290 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/storages": {
+ "get": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Get all storages for a managedEnvironment.",
+ "description": "Get all storages for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStoragesCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/storages/{storageName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Get storage for a managedEnvironment.",
+ "description": "Get storage for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "get a environments storage properties by subscription": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Create or update storage for a managedEnvironment.",
+ "description": "Create or update storage for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageEnvelope",
+ "in": "body",
+ "description": "Configuration details of storage.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update environments storage": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Delete storage for a managedEnvironment.",
+ "description": "Delete storage for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "Storage does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ManagedEnvironmentStoragesCollection": {
+ "description": "Collection of Storage for Environments",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of storage resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ }
+ }
+ },
+ "ManagedEnvironmentStorage": {
+ "description": "Storage resource for managedEnvironment.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Storage properties",
+ "type": "object",
+ "properties": {
+ "azureFile": {
+ "$ref": "./CommonDefinitions.json#/definitions/AzureFileProperties",
+ "description": "Azure file properties"
+ }
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/SourceControls.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/SourceControls.json
new file mode 100644
index 000000000000..4e4391a81b8e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/SourceControls.json
@@ -0,0 +1,446 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API 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/Microsoft.App/containerApps/{containerAppName}/sourcecontrols": {
+ "get": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Get the Container App SourceControls in a given resource group.",
+ "operationId": "ContainerAppsSourceControls_ListByContainerApp",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControlCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List App's Source Controls": {
+ "$ref": "./examples/SourceControls_ListByContainer.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/sourcecontrols/{sourceControlName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Get a SourceControl of a Container App.",
+ "operationId": "ContainerAppsSourceControls_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlName",
+ "in": "path",
+ "description": "Name of the Container App SourceControl.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's SourceControl": {
+ "$ref": "./examples/SourceControls_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Create or update the SourceControl for a Container App.",
+ "description": "Create or update the SourceControl for a Container App.",
+ "operationId": "ContainerAppsSourceControls_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlName",
+ "in": "path",
+ "description": "Name of the Container App SourceControl.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlEnvelope",
+ "in": "body",
+ "description": "Properties used to create a Container App SourceControl",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container App SourceControl": {
+ "$ref": "./examples/SourceControls_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Delete a Container App SourceControl.",
+ "description": "Delete a Container App SourceControl.",
+ "operationId": "ContainerAppsSourceControls_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlName",
+ "in": "path",
+ "description": "Name of the Container App SourceControl.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App SourceControl deleted successfully."
+ },
+ "202": {
+ "description": "Delete operation is in progress."
+ },
+ "204": {
+ "description": "Container App SourceControl does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container App SourceControl": {
+ "$ref": "./examples/SourceControls_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "SourceControl": {
+ "description": "Container App SourceControl.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "SourceControl resource specific properties",
+ "type": "object",
+ "properties": {
+ "operationState": {
+ "description": "Current provisioning State of the operation",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "SourceControlOperationState",
+ "modelAsString": true
+ }
+ },
+ "repoUrl": {
+ "description": "The repo url which will be integrated to ContainerApp.",
+ "type": "string"
+ },
+ "branch": {
+ "description": "The branch which will trigger the auto deployment",
+ "type": "string"
+ },
+ "githubActionConfiguration": {
+ "$ref": "#/definitions/GithubActionConfiguration",
+ "description": "Container App Revision Template with all possible settings and the\ndefaults if user did not provide them. The defaults are populated\nas they were at the creation time"
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "GithubActionConfiguration": {
+ "description": "Configuration properties that define the mutable settings of a Container App SourceControl",
+ "type": "object",
+ "properties": {
+ "registryInfo": {
+ "$ref": "#/definitions/RegistryInfo",
+ "description": "Registry configurations."
+ },
+ "azureCredentials": {
+ "$ref": "#/definitions/AzureCredentials",
+ "description": "AzureCredentials configurations."
+ },
+ "contextPath": {
+ "description": "Context path",
+ "type": "string"
+ },
+ "githubPersonalAccessToken": {
+ "description": "One time Github PAT to configure github environment",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "image": {
+ "description": "Image name",
+ "type": "string"
+ },
+ "publishType": {
+ "description": "Code or Image",
+ "type": "string"
+ },
+ "os": {
+ "description": "Operation system",
+ "type": "string"
+ },
+ "runtimeStack": {
+ "description": "Runtime stack",
+ "type": "string"
+ },
+ "runtimeVersion": {
+ "description": "Runtime version",
+ "type": "string"
+ }
+ }
+ },
+ "RegistryInfo": {
+ "description": "Container App registry information.",
+ "type": "object",
+ "properties": {
+ "registryUrl": {
+ "description": "registry server Url.",
+ "type": "string"
+ },
+ "registryUserName": {
+ "description": "registry username.",
+ "type": "string"
+ },
+ "registryPassword": {
+ "description": "registry secret.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "AzureCredentials": {
+ "description": "Container App credentials.",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "Client Id.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "clientSecret": {
+ "description": "Client Secret.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "tenantId": {
+ "description": "Tenant Id.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "kind": {
+ "description": "Kind of auth github does for deploying the template",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "subscriptionId": {
+ "description": "Subscription Id.",
+ "type": "string"
+ }
+ }
+ },
+ "SourceControlCollection": {
+ "description": "SourceControl collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Subscriptions.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Subscriptions.json
new file mode 100644
index 000000000000..1ef1f357a879
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Subscriptions.json
@@ -0,0 +1,80 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/getCustomDomainVerificationId": {
+ "post": {
+ "tags": [
+ "Subscriptions"
+ ],
+ "description": "Get the verification id of a subscription used for verifying custom domains",
+ "operationId": "GetCustomDomainVerificationId",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The custom domain verification id has been returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/CustomDomainVerificationId"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all operations": {
+ "$ref": "./examples/Subscriptions_GetCustomDomainVerificationId.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CustomDomainVerificationId": {
+ "description": "Custom domain verification Id of a subscription",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Usages.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Usages.json
new file mode 100644
index 000000000000..da58c29da79c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/Usages.json
@@ -0,0 +1,188 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-02-preview",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/locations/{location}/usages": {
+ "get": {
+ "tags": [
+ "Usages"
+ ],
+ "operationId": "Usages_List",
+ "description": "Gets, for the specified location, the current resource usage information as well as the limits under the subscription.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location for which resource usage is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ListUsagesResult"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List usages": {
+ "$ref": "./examples/Usages_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/usages": {
+ "get": {
+ "tags": [
+ "Usages"
+ ],
+ "operationId": "ManagedEnvironmentUsages_List",
+ "description": "Gets the current usage information as well as the limits for environment.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ListUsagesResult"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List managed environment usages": {
+ "$ref": "./examples/ManagedEnvironmentUsages_List.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "UsageName": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "The name of the resource."
+ },
+ "localizedValue": {
+ "type": "string",
+ "description": "The localized name of the resource."
+ }
+ },
+ "description": "The Usage Names."
+ },
+ "Usage": {
+ "type": "object",
+ "properties": {
+ "unit": {
+ "type": "string",
+ "description": "An enum describing the unit of usage measurement.",
+ "enum": [
+ "Count"
+ ],
+ "x-ms-enum": {
+ "name": "UsageUnit",
+ "modelAsString": false
+ }
+ },
+ "currentValue": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The current usage of the resource."
+ },
+ "limit": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The maximum permitted usage of the resource."
+ },
+ "name": {
+ "$ref": "#/definitions/UsageName",
+ "description": "The name of the type of usage."
+ }
+ },
+ "required": [
+ "unit",
+ "currentValue",
+ "limit",
+ "name"
+ ],
+ "description": "Describes Compute Resource Usage."
+ },
+ "ListUsagesResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Usage"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The list of compute resource usages."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of compute resource usage information. Call ListNext() with this to fetch the next page of compute resource usage information."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_CreateOrUpdate.json
new file mode 100644
index 000000000000..65901b2ae5d5
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_CreateOrUpdate.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "authConfigName": "current",
+ "api-version": "2023-05-02-preview",
+ "authConfigEnvelope": {
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ },
+ "encryptionSettings": {
+ "containerAppAuthEncryptionSecretName": "testEncryptionSecretName",
+ "containerAppAuthSigningSecretName": "testSigningSecretName"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/authconfigs/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/authconfigs",
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ },
+ "encryptionSettings": {
+ "containerAppAuthEncryptionSecretName": "testEncryptionSecretName",
+ "containerAppAuthSigningSecretName": "testSigningSecretName"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_Delete.json
new file mode 100644
index 000000000000..9fa3eb0c19e2
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "authConfigName": "current",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_Get.json
new file mode 100644
index 000000000000..15db087dcc5d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_Get.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "authConfigName": "current",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/authconfigs/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/authconfigs",
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ },
+ "encryptionSettings": {
+ "containerAppAuthEncryptionSecretName": "testEncryptionSecretName",
+ "containerAppAuthSigningSecretName": "testSigningSecretName"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_ListByContainer.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_ListByContainer.json
new file mode 100644
index 000000000000..07ce8a8b6336
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AuthConfigs_ListByContainer.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/authconfigs/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/authconfigs",
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ },
+ "encryptionSettings": {
+ "containerAppAuthEncryptionSecretName": "testEncryptionSecretName",
+ "containerAppAuthSigningSecretName": "testSigningSecretName"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AvailableWorkloadProfiles_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AvailableWorkloadProfiles_Get.json
new file mode 100644
index 000000000000..2dd6843dd7c8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/AvailableWorkloadProfiles_Get.json
@@ -0,0 +1,145 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "location": "East US",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-D4",
+ "category": "General purpose D-series",
+ "applicability": "LocationDefault",
+ "cores": 4,
+ "memoryGiB": 16
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-D4",
+ "name": "Dedicated-D4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-D8",
+ "category": "General purpose D-series",
+ "applicability": "Custom",
+ "cores": 8,
+ "memoryGiB": 32
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-D8",
+ "name": "Dedicated-D4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-D16",
+ "category": "General purpose D-series",
+ "applicability": "Custom",
+ "cores": 16,
+ "memoryGiB": 64
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-D16",
+ "name": "Dedicated-D16",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-E4",
+ "category": "Memory optimized E-series",
+ "applicability": "Custom",
+ "cores": 4,
+ "memoryGiB": 32
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-E4",
+ "name": "Dedicated-E4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-E8",
+ "category": "Memory optimized E-series",
+ "applicability": "Custom",
+ "cores": 8,
+ "memoryGiB": 64
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-E8",
+ "name": "Dedicated-E8",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-E16",
+ "category": "Memory optimized E-series",
+ "applicability": "Custom",
+ "cores": 16,
+ "memoryGiB": 128
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-E16",
+ "name": "Dedicated-E16",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-F4",
+ "category": "Compute optimized F-series",
+ "applicability": "Custom",
+ "cores": 4,
+ "memoryGiB": 8
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-F4",
+ "name": "Dedicated-F4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-F8",
+ "category": "Compute optimized F-series",
+ "applicability": "Custom",
+ "cores": 8,
+ "memoryGiB": 16
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-F8",
+ "name": "Dedicated-F8",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-F16",
+ "category": "Compute optimized F-series",
+ "applicability": "Custom",
+ "cores": 16,
+ "memoryGiB": 32
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-F16",
+ "name": "Dedicated-F16",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Consumption",
+ "category": "Consumption",
+ "applicability": "Custom",
+ "cores": 3,
+ "memoryGiB": 3
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Consumption",
+ "name": "Consumption",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/BillingMeters_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/BillingMeters_Get.json
new file mode 100644
index 000000000000..dd3a75a1a969
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/BillingMeters_Get.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "location": "East US",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "East US",
+ "properties": {
+ "category": "General purpose D-series",
+ "meterType": "CPU",
+ "displayName": "General Purpose Cores per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/GeneralPurposeDseriesCPU",
+ "name": "GeneralPurposeDseriesCPU",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "General purpose D-series",
+ "meterType": "Memory",
+ "displayName": "General Purpose Memory GiB per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/GeneralPurposeDseriesMemory",
+ "name": "GeneralPurposeDseriesMemory",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Memory optimized E-series",
+ "meterType": "CPU",
+ "displayName": "Memory Optimized Cores per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/MemoryOptimizedEseriesCPU",
+ "name": "MemoryOptimizedEseriesCPU",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Memory optimized E-series",
+ "meterType": "Memory",
+ "displayName": "Memory Optimized Memory GiB per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/MemoryOptimizedEseriesMemory",
+ "name": "MemoryOptimizedEseriesMemory",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Compute optimized F-series",
+ "meterType": "CPU",
+ "displayName": "Compute Optimized Cores per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/ComputeOptimizedFseriesCPU",
+ "name": "ComputeOptimizedFseriesCPU",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Compute optimized F-series",
+ "meterType": "Memory",
+ "displayName": "Compute Optimized Memory GiB per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/GeneralComputeMemory",
+ "name": "GeneralComputeMemory",
+ "type": "Microsoft.App/billingMeters"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_CreateOrUpdate.json
new file mode 100644
index 000000000000..d122e24395bd
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_CreateOrUpdate.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview",
+ "certificateEnvelope": {
+ "location": "East US",
+ "properties": {
+ "password": "private key password",
+ "value": "Y2VydA=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_Delete.json
new file mode 100644
index 000000000000..29d92b80d688
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_Get.json
new file mode 100644
index 000000000000..20eaf6fe731e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificate_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_CheckNameAvailability.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_CheckNameAvailability.json
new file mode 100644
index 000000000000..3374ac2ce604
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_CheckNameAvailability.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-05-02-preview",
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "checkNameAvailabilityRequest": {
+ "name": "testcertificatename",
+ "type": "Microsoft.App/managedEnvironments/certificates"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true,
+ "reason": "None",
+ "message": ""
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_ListByManagedEnvironment.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_ListByManagedEnvironment.json
new file mode 100644
index 000000000000..459860e94571
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_ListByManagedEnvironment.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_Patch.json
new file mode 100644
index 000000000000..7d446baa7fda
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Certificates_Patch.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview",
+ "certificateEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json
new file mode 100644
index 000000000000..3769aee94e62
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview",
+ "certificateEnvelope": {
+ "location": "East US",
+ "properties": {
+ "password": "private key password",
+ "value": "Y2VydA=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_Delete.json
new file mode 100644
index 000000000000..8f43b1e9b483
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_Get.json
new file mode 100644
index 000000000000..e5de8cd34878
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificate_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json
new file mode 100644
index 000000000000..136028492c28
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-05-02-preview",
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "checkNameAvailabilityRequest": {
+ "name": "testcertificatename",
+ "type": "Microsoft.App/connectedEnvironments/certificates"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true,
+ "reason": "None",
+ "message": ""
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json
new file mode 100644
index 000000000000..3d0607ec7e9f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_Patch.json
new file mode 100644
index 000000000000..8bdc275ff992
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsCertificates_Patch.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview",
+ "certificateEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json
new file mode 100644
index 000000000000..79a8264a5488
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview",
+ "daprComponentEnvelope": {
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey",
+ "value": "keyvalue"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/connectedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_Delete.json
new file mode 100644
index 000000000000..3b022fa55d3c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_Get.json
new file mode 100644
index 000000000000..9790ccca0056
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_Get.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/connectedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_List.json
new file mode 100644
index 000000000000..e84e27dabb41
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_List.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/myenvironment/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/connectedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json
new file mode 100644
index 000000000000..827b91238ac8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1",
+ "value": "value1"
+ },
+ {
+ "name": "secret2",
+ "value": "value2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json
new file mode 100644
index 000000000000..f9c9c266123c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "env",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview",
+ "storageEnvelope": {
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "accountKey": "key",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/env/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/connectedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_Delete.json
new file mode 100644
index 000000000000..95e48437cbe3
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "env",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_Get.json
new file mode 100644
index 000000000000..53728488f1ca
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_Get.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "env",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/env/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/connectedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_List.json
new file mode 100644
index 000000000000..3ce6912b38e9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironmentsStorages_List.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "managedEnv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/connectedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_CreateOrUpdate.json
new file mode 100644
index 000000000000..6a7d8808f220
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_CreateOrUpdate.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testenv",
+ "api-version": "2023-05-02-preview",
+ "kind": "kubernetes",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "staticIp": "1.2.3.4",
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "private key password"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Waiting",
+ "deploymentErrors": null,
+ "defaultDomain": "testenv.k4apps.io",
+ "staticIp": "1.2.3.4"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Delete.json
new file mode 100644
index 000000000000..d635b230cfc9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Delete.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "examplekenv",
+ "api-version": "2023-05-02-preview",
+ "kind": "kubernetes",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/localtions/eastus/operationResults/00000"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Get.json
new file mode 100644
index 000000000000..32653a99135c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Get.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "examplekenv",
+ "api-version": "2023-05-02-preview",
+ "kind": "kubernetes",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/kubeEnvironments/examplekenv",
+ "name": "examplekenv",
+ "type": "Microsoft.App/kubeEnvironments",
+ "location": "North Central US",
+ "extendedLocation": {
+ "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "examplekenv.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_ListByResourceGroup.json
new file mode 100644
index 000000000000..858f66ea7723
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_ListByResourceGroup.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/sample1",
+ "name": "sample1",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "extendedLocation": {
+ "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/sample2",
+ "name": "sample2",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "extendedLocation": {
+ "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample2.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_ListBySubscription.json
new file mode 100644
index 000000000000..7133b7d0ef76
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_ListBySubscription.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/sample1",
+ "name": "sample1",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/DemoRG/providers/Microsoft.App/connectedEnvironments/sample2",
+ "name": "sample2",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample2.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Patch.json
new file mode 100644
index 000000000000..16e663ad621b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ConnectedEnvironments_Patch.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testenv",
+ "api-version": "2023-05-02-preview",
+ "location": "East US",
+ "environmentEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testenv.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerAppsDiagnostics_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerAppsDiagnostics_Get.json
new file mode 100644
index 000000000000..724b4ca40b72
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerAppsDiagnostics_Get.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "containerAppName": "mikono-capp-stage1",
+ "detectorName": "cappcontainerappnetworkIO",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/containerApps/mikono-capp-stage1/detectors/cappcontainerappnetworkIO",
+ "name": "cappcontainerappnetworkIO",
+ "type": "Microsoft.App/containerapps/detectors",
+ "properties": {
+ "metadata": {
+ "id": "cappcontainerappnetworkIO",
+ "name": "Container App Network Inbound and Outbound",
+ "description": "This detector shows the Container App Network Inbound and Outbound.",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Detector",
+ "score": 0
+ },
+ "dataset": [
+ {
+ "table": {
+ "tableName": "",
+ "columns": [
+ {
+ "columnName": "TimeStamp",
+ "dataType": "DateTime"
+ },
+ {
+ "columnName": "Metric",
+ "dataType": "String"
+ },
+ {
+ "columnName": "Average",
+ "dataType": "Double"
+ }
+ ],
+ "rows": [
+ [
+ "2022-03-15T21:35:00",
+ "RxBytes",
+ 0
+ ]
+ ]
+ },
+ "renderingProperties": {
+ "type": 8,
+ "title": "Container Apps Network Inbound ",
+ "description": "",
+ "isVisible": true
+ }
+ }
+ ],
+ "status": {
+ "statusId": 3
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerAppsDiagnostics_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerAppsDiagnostics_List.json
new file mode 100644
index 000000000000..eefc0fe10faf
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerAppsDiagnostics_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "containerAppName": "mikono-capp-stage1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/containerApps/mikono-capp-stage1/detectors/cappContainerAppAvailabilityMetrics",
+ "name": "cappContainerAppAvailabilityMetrics",
+ "type": "Microsoft.App/containerapps/detectors",
+ "properties": {
+ "metadata": {
+ "id": "cappContainerAppAvailabilityMetrics",
+ "name": "Availability Metrics for Container Apps",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Analysis",
+ "score": 0
+ },
+ "dataset": [],
+ "status": {
+ "statusId": 4
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_CheckNameAvailability.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_CheckNameAvailability.json
new file mode 100644
index 000000000000..a049badd0b28
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_CheckNameAvailability.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-05-02-preview",
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "checkNameAvailabilityRequest": {
+ "name": "testcappname",
+ "type": "Microsoft.App/containerApps"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true,
+ "reason": "None",
+ "message": ""
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_CreateOrUpdate.json
new file mode 100644
index 000000000000..a90356136e44
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_CreateOrUpdate.json
@@ -0,0 +1,398 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-02-preview",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my-other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerApp0-ab1234",
+ "label": "production"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ },
+ "clientCertificateMode": "accept",
+ "corsPolicy": {
+ "allowedOrigins": [
+ "https://a.test.com",
+ "https://b.test.com"
+ ],
+ "allowedMethods": [
+ "GET",
+ "POST"
+ ],
+ "allowedHeaders": [
+ "HEADER1",
+ "HEADER2"
+ ],
+ "exposeHeaders": [
+ "HEADER3",
+ "HEADER4"
+ ],
+ "maxAge": 1234,
+ "allowCredentials": true
+ },
+ "additionalPortMappings": [
+ {
+ "external": true,
+ "targetPort": 1234
+ },
+ {
+ "external": false,
+ "targetPort": 2345,
+ "exposedPort": 3456
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v1",
+ "name": "testcontainerApp0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "custom": {
+ "type": "http",
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/redisService",
+ "name": "redisService"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my-other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "201": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Delete.json
new file mode 100644
index 000000000000..7edde7029cbd
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testWorkerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/containerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Get.json
new file mode 100644
index 000000000000..f4965945712b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Get.json
@@ -0,0 +1,131 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/service",
+ "name": "service"
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "404": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_GetAuthToken.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_GetAuthToken.json
new file mode 100644
index 000000000000..80fa796895c3
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_GetAuthToken.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps/accesstoken",
+ "location": "East US",
+ "properties": {
+ "token": "testToken",
+ "expires": "2022-07-14T19:22:50.3080223Z"
+ }
+ }
+ },
+ "404": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListByResourceGroup.json
new file mode 100644
index 000000000000..c5f3a31e974d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListByResourceGroup.json
@@ -0,0 +1,125 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListBySubscription.json
new file mode 100644
index 000000000000..d10d3280d812
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListBySubscription.json
@@ -0,0 +1,133 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/service",
+ "name": "service"
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListCustomHostNameAnalysis.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListCustomHostNameAnalysis.json
new file mode 100644
index 000000000000..60e0f48bc7c6
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListCustomHostNameAnalysis.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "customHostname": "my.name.corp",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hostName": "my.name.corp",
+ "isHostnameAlreadyVerified": true,
+ "customDomainVerificationTest": "Passed",
+ "customDomainVerificationFailureInfo": {},
+ "hasConflictOnManagedEnvironment": false,
+ "conflictingContainerAppResourceId": "",
+ "cNameRecords": [
+ "cNameRecord1",
+ "cNameRecord2"
+ ],
+ "txtRecords": [
+ "txtRecord1",
+ "txtRecord2"
+ ],
+ "aRecords": [
+ "aRecord1",
+ "aRecord2"
+ ],
+ "alternateCNameRecords": [
+ "cNameRecord1",
+ "cNameRecord2"
+ ],
+ "alternateTxtRecords": [
+ "txtRecord1",
+ "txtRecord2"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListSecrets.json
new file mode 100644
index 000000000000..29f19073e8f2
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ListSecrets.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1"
+ },
+ {
+ "name": "secret2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ManagedBy_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ManagedBy_CreateOrUpdate.json
new file mode 100644
index 000000000000..cd2c1719b273
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_ManagedBy_CreateOrUpdate.json
@@ -0,0 +1,204 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerAppManagedBy",
+ "api-version": "2023-05-02-preview",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "managedBy": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppPlatform/Spring/springapp",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerAppManagedBy-ab1234"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppManagedBy:v1",
+ "name": "testcontainerAppManagedBy",
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppManagedBy",
+ "name": "testcontainerAppManagedBy",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "managedBy": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppPlatform/Spring/springapp",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppManagedBy-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerAppManagedBy-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppManagedBy.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppManagedBy-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppManagedBy-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppManagedBy:v4",
+ "name": "testcontainerAppManagedBy",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppManagedBy",
+ "name": "testcontainerAppManagedBy",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "managedBy": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppPlatform/Spring/springapp",
+ "properties": {
+ "provisioningState": "InProgress",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppManagedBy-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppManagedBy.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppManagedBy-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppManagedBy-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppManagedBy:v4",
+ "name": "testcontainerAppManagedBy",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Patch.json
new file mode 100644
index 000000000000..30d66fa07bb8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Patch.json
@@ -0,0 +1,243 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-02-preview",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my-other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerApp0-ab1234",
+ "label": "production"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v1",
+ "name": "testcontainerApp0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "custom": {
+ "type": "http",
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/service",
+ "name": "service"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/locations/eastus/containerappOperationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Start.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Start.json
new file mode 100644
index 000000000000..31cd37818252
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Start.json
@@ -0,0 +1,123 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testWorkerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/containerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Stop.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Stop.json
new file mode 100644
index 000000000000..31cd37818252
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_Stop.json
@@ -0,0 +1,123 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testWorkerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/containerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_TcpApp_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_TcpApp_CreateOrUpdate.json
new file mode 100644
index 000000000000..8b6761f89a5c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ContainerApps_TcpApp_CreateOrUpdate.json
@@ -0,0 +1,201 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerAppTcp",
+ "api-version": "2023-05-02-preview",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerAppTcp-ab1234"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppTcp:v1",
+ "name": "testcontainerAppTcp",
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppTcp",
+ "name": "testcontainerAppTcp",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppTcp-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerAppTcp-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppTcp.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppTcp-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppTcp-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppTcp:v4",
+ "name": "testcontainerAppTcp",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppTcp",
+ "name": "testcontainerAppTcp",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppTcp-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppTcp.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppTcp-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppTcp-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppTcp:v4",
+ "name": "testcontainerAppTcp",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json
new file mode 100644
index 000000000000..b05f4ce13da1
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview",
+ "daprComponentEnvelope": {
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_CreateOrUpdate_Secrets.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_CreateOrUpdate_Secrets.json
new file mode 100644
index 000000000000..ce8ecbe03fd1
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_CreateOrUpdate_Secrets.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview",
+ "daprComponentEnvelope": {
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey",
+ "value": "keyvalue"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Delete.json
new file mode 100644
index 000000000000..f4b0313dacf8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Get_SecretStoreComponent.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Get_SecretStoreComponent.json
new file mode 100644
index 000000000000..e7ed86be12ef
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Get_SecretStoreComponent.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Get_Secrets.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Get_Secrets.json
new file mode 100644
index 000000000000..bdbbd575f0aa
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_Get_Secrets.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_List.json
new file mode 100644
index 000000000000..137352999bb9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_List.json
@@ -0,0 +1,122 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/myenvironment/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/myenvironment/daprcomponents/vaultdog",
+ "name": "vaultdog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/myenvironment/daprcomponents/vaultdog",
+ "name": "vaultdog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "secretRef": "cosmosdb/url"
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "cosmosdb/masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_ListSecrets.json
new file mode 100644
index 000000000000..277d34b11d2f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/DaprComponents_ListSecrets.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1"
+ },
+ {
+ "name": "secret2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_CreateorUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_CreateorUpdate.json
new file mode 100644
index 000000000000..10ecb7823680
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_CreateorUpdate.json
@@ -0,0 +1,207 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-02-preview",
+ "JobEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v1",
+ "name": "testcontainerAppsJob0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 5,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Location": "location"
+ },
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_CreateorUpdate_EventTrigger.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_CreateorUpdate_EventTrigger.json
new file mode 100644
index 000000000000..ccbdbb3e48aa
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_CreateorUpdate_EventTrigger.json
@@ -0,0 +1,199 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-02-preview",
+ "JobEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "eventTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4,
+ "scale": {
+ "pollingInterval": 40,
+ "minExecutions": 1,
+ "maxExecutions": 5,
+ "rules": [
+ {
+ "name": "servicebuscalingrule",
+ "type": "azure-servicebus",
+ "metadata": {
+ "topicName": "my-topic"
+ }
+ }
+ ]
+ }
+ },
+ "triggerType": "Event"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v1",
+ "name": "testcontainerAppsJob0"
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "eventTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4,
+ "scale": {
+ "pollingInterval": 20,
+ "minExecutions": 1,
+ "maxExecutions": 5,
+ "rules": [
+ {
+ "name": "githubscalingrule",
+ "type": "github-runner",
+ "metadata": {
+ "githubAPIURL": "https://api.github.com"
+ }
+ }
+ ]
+ }
+ },
+ "triggerType": "Event"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Location": "location"
+ },
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "eventTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4,
+ "scale": {
+ "minExecutions": 1,
+ "maxExecutions": 5,
+ "pollingInterval": 20,
+ "rules": [
+ {
+ "name": "servicebuscalingrule",
+ "type": "azure-servicebus",
+ "metadata": {
+ "queueName": "my-queue",
+ "messageCount": "50"
+ }
+ }
+ ]
+ }
+ },
+ "triggerType": "Event"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Delete.json
new file mode 100644
index 000000000000..ce43ec61ba5d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testWorkerContainerAppsJob0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/jobs/testWorkerContainerAppsJob0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Execution_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Execution_Get.json
new file mode 100644
index 000000000000..0e5215002832
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Execution_Get.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "jobExecutionName": "jobExecution1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "name": "jobExecution1",
+ "status": "Running",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Executions_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Executions_Get.json
new file mode 100644
index 000000000000..c6b437ff8d1b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Executions_Get.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "testcontainerAppJob-27944454",
+ "status": "Running",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Get.json
new file mode 100644
index 000000000000..67eaa1f70154
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Get.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_ListSecrets.json
new file mode 100644
index 000000000000..b1751c67ee82
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_ListSecrets.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1"
+ },
+ {
+ "name": "secret2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Patch.json
new file mode 100644
index 000000000000..44fd13141889
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Patch.json
@@ -0,0 +1,114 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-02-preview",
+ "JobEnvelope": {
+ "properties": {
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v1",
+ "name": "testcontainerAppsJob0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/locations/eastus/containerappsjobOperationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ },
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Start.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Start.json
new file mode 100644
index 000000000000..196a992b6833
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Start.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "name": "testcontainerAppsJob0-pjxhsye",
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/{containerAppsJobName}/executions/{jobExecutionName}"
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "location"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Stop_Execution.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Stop_Execution.json
new file mode 100644
index 000000000000..6189330aafec
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Stop_Execution.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "jobExecutionName": "jobExecution1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "location"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Stop_Multiple.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Stop_Multiple.json
new file mode 100644
index 000000000000..8ee01754a161
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Job_Stop_Multiple.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "jobExecutionName": {
+ "value": [
+ {
+ "name": "jobExecution-27944453"
+ },
+ {
+ "name": "jobExecution-27944452"
+ },
+ {
+ "name": "jobExecution-27944451"
+ }
+ ]
+ },
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "jobExecution-27944453",
+ "status": "Stopped",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00"
+ },
+ {
+ "name": "jobExecution-27944452",
+ "status": "Stopped",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00"
+ },
+ {
+ "name": "jobExecution-27944453",
+ "status": "Failed",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00"
+ }
+ ],
+ "nextLink": null
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "location"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Jobs_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Jobs_ListByResourceGroup.json
new file mode 100644
index 000000000000..a6b3cdc8be20
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Jobs_ListByResourceGroup.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob1",
+ "name": "testcontainerAppsJob1",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "scheduleTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "cronExpression": "* * * * 5",
+ "parallelism": 4
+ },
+ "triggerType": "Scheduled"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob1:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testinitcontainerAppsJob1:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Jobs_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Jobs_ListBySubscription.json
new file mode 100644
index 000000000000..83a7fcf7939e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Jobs_ListBySubscription.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob1",
+ "name": "testcontainerAppsJob1",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "scheduleTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "cronExpression": "* * * * 5",
+ "parallelism": 5
+ },
+ "triggerType": "Scheduled"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob1:v4",
+ "name": "testcontainerAppsJob1",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob1:v4",
+ "name": "testinitcontainerAppsJob1",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_CreateOrUpdate.json
new file mode 100644
index 000000000000..57d31c84d814
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_CreateOrUpdate.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview",
+ "managedCertificateEnvelope": {
+ "location": "East US",
+ "properties": {
+ "subjectName": "my-subject-name.company.country.net",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/locations/eastus/managedCertificateOperationStatuses/dc27c9cd-370f-4623-95d4-827b6dc4120a?api-version=2022-06-01-preview&azureAsyncOperation=true"
+ },
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Pending",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ },
+ "400": {
+ "code": "ManagedCertNoUpdate",
+ "message": "Properties of managed certificates cannot be updated. Please delete the current resource and retry or use a different resource id."
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_Delete.json
new file mode 100644
index 000000000000..0894da3f780f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_Get.json
new file mode 100644
index 000000000000..cd5a09dcb2b4
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificate_Get.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificates_ListByManagedEnvironment.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificates_ListByManagedEnvironment.json
new file mode 100644
index 000000000000..890d4aaa92a2
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificates_ListByManagedEnvironment.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name-root",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "HTTP"
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name-txt",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=txt.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "TXT"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificates_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificates_Patch.json
new file mode 100644
index 000000000000..bb5a69f5b495
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedCertificates_Patch.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-02-preview",
+ "managedCertificateEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentDiagnostics_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentDiagnostics_Get.json
new file mode 100644
index 000000000000..9aaac91cbdf1
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentDiagnostics_Get.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "environmentName": "mikonokubeenv",
+ "detectorName": "ManagedEnvAvailabilityMetrics",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/managedEnvironments/mikonokubeenv/detectors/ManagedEnvAvailabilityMetrics",
+ "name": "ManagedEnvAvailabilityMetrics",
+ "type": "Microsoft.App/managedEnvironments/detectors",
+ "properties": {
+ "metadata": {
+ "id": "ManagedEnvAvailabilityMetrics",
+ "name": "Managed Env Netowrk Inbound and Outbound",
+ "description": "This detector shows the Managed Environment Network Inbound and Outbound.",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Detector",
+ "score": 0
+ },
+ "dataset": [
+ {
+ "table": {
+ "tableName": "",
+ "columns": [
+ {
+ "columnName": "TimeStamp",
+ "dataType": "DateTime"
+ },
+ {
+ "columnName": "Metric",
+ "dataType": "String"
+ },
+ {
+ "columnName": "Average",
+ "dataType": "Double"
+ }
+ ],
+ "rows": [
+ [
+ "2022-03-15T21:35:00",
+ "RxBytes",
+ 0
+ ]
+ ]
+ },
+ "renderingProperties": {
+ "type": 8,
+ "title": "Managed Environment Network Inbound ",
+ "description": "",
+ "isVisible": true
+ }
+ }
+ ],
+ "status": {
+ "statusId": 3
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentDiagnostics_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentDiagnostics_List.json
new file mode 100644
index 000000000000..6f659c2c6112
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentDiagnostics_List.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "environmentName": "mikonokubeenv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/managedEnvironments/mikonokubeenv/detectors/ManagedEnvAvailabilityMetrics",
+ "name": "ManagedEnvAvailabilityMetrics",
+ "type": "Microsoft.App/managedEnvironments/detectors",
+ "properties": {
+ "metadata": {
+ "id": "ManagedEnvAvailabilityMetrics",
+ "name": "Availability Metrics for Managed Environments",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Analysis",
+ "score": 0
+ },
+ "dataset": [],
+ "status": {
+ "statusId": 4
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentUsages_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentUsages_List.json
new file mode 100644
index 000000000000..c414f14a5573
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentUsages_List.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-05-02-preview",
+ "subscriptionId": "subid",
+ "resourceGroupName": "examplerg",
+ "environmentName": "jlaw-demo1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "currentValue": 5,
+ "limit": 10,
+ "name": {
+ "localizedValue": "Managed Environment Consumption Cores",
+ "value": "ManagedEnvironmentConsumptionCores"
+ },
+ "unit": "Count"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_CreateOrUpdate.json
new file mode 100644
index 000000000000..af882af7795e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_CreateOrUpdate.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview",
+ "storageEnvelope": {
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "accountKey": "key",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_Delete.json
new file mode 100644
index 000000000000..d797fdfde120
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_Get.json
new file mode 100644
index 000000000000..ec48d73847aa
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_Get.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_List.json
new file mode 100644
index 000000000000..52e598a6d9c0
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironmentsStorages_List.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_CreateOrUpdate.json
new file mode 100644
index 000000000000..1f46f87248ea
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_CreateOrUpdate.json
@@ -0,0 +1,182 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-02-preview",
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string",
+ "sharedKey": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "1234"
+ },
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-testcontainerenv-eastus",
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InitializationInProgress",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-testcontainerenv-eastus",
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
new file mode 100644
index 000000000000..10fc099e8e1f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
@@ -0,0 +1,168 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-02-preview",
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string",
+ "sharedKey": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "1234"
+ },
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InitializationInProgress",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Delete.json
new file mode 100644
index 000000000000..b9f61ab6cc30
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "examplekenv",
+ "api-version": "2023-05-02-preview",
+ "location": "East US"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/localtions/eastus/operationResults/00000"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Get.json
new file mode 100644
index 000000000000..f338a9baaac0
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Get.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "kedaConfiguration": {
+ "version": "2.8.1"
+ },
+ "daprConfiguration": {
+ "version": "1.9"
+ },
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus",
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_GetAuthToken.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_GetAuthToken.json
new file mode 100644
index 000000000000..45e9039098da
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_GetAuthToken.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "rg",
+ "environmentName": "testenv",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/environments/accesstoken",
+ "location": "East US",
+ "properties": {
+ "token": "testToken",
+ "expires": "2022-07-14T19:22:50.3080223Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListByResourceGroup.json
new file mode 100644
index 000000000000..5114beebbf20
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListByResourceGroup.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus"
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/demo1",
+ "name": "demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "demo1.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "infrastructureResourceGroup": "capp-svc-demo1-northcentralus"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListBySubscription.json
new file mode 100644
index 000000000000..2194dedf7dda
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListBySubscription.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus"
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/DemoRG/providers/Microsoft.App/managedEnvironments/demo1",
+ "name": "demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "demo1.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "infrastructureResourceGroup": "capp-svc-demo1-northcentralus"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListWorkloadProfileStates.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListWorkloadProfileStates.json
new file mode 100644
index 000000000000..24e1d6c110d4
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_ListWorkloadProfileStates.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "jlaw-demo1",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/workloadProfileStates/GP1",
+ "name": "GP1",
+ "type": "/providers/Microsoft.App/workloadProfileStates",
+ "properties": {
+ "minimumCount": 3,
+ "maximumCount": 10,
+ "currentCount": 3
+ }
+ },
+ {
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/workloadProfileStates/MO3",
+ "name": "MO3",
+ "type": "/providers/Microsoft.App/workloadProfileStates",
+ "properties": {
+ "minimumCount": 0,
+ "maximumCount": 2,
+ "currentCount": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Patch.json
new file mode 100644
index 000000000000..350fb83aa34d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/ManagedEnvironments_Patch.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-02-preview",
+ "environmentEnvelope": {
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "zoneRedundant": true,
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/locations/eastus/managedEnvironmentOperationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-02-preview"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Operations_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Operations_List.json
new file mode 100644
index 000000000000..b71e6f50ffa9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Operations_List.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.App/containerApps/Read",
+ "display": {
+ "provider": "Microsoft Apps",
+ "resource": "Container App",
+ "operation": "Get Container App",
+ "description": "Get the properties of a Container App"
+ },
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Replicas_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Replicas_Get.json
new file mode 100644
index 000000000000..816dd287d4d6
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Replicas_Get.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "myapp",
+ "revisionName": "myapp--0wlqy09",
+ "replicaName": "myapp--0wlqy09-5d9774cff-5wnd8",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/revisions/myapp--0wlqy09/replicas/myapp--0wlqy09-5d9774cff-5wnd8",
+ "name": "myapp--0wlqy09-5d9774cff-5wnd8",
+ "type": "Microsoft.Web/containerapps/revisions/replicas",
+ "properties": {
+ "createdTime": "2022-01-25T19:42:45Z",
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "containers": [
+ {
+ "name": "hello92",
+ "containerId": "containerd://6bac7bb3afed1c704b5fe563c34c0ecf59ac30c766bb73488f7fa552dc42ee54",
+ "ready": true,
+ "started": true,
+ "restartCount": 0,
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "logStreamEndpoint": "testLogStreamEndpoint",
+ "execEndpoint": "testExecEndpoint"
+ }
+ ],
+ "initContainers": []
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Replicas_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Replicas_List.json
new file mode 100644
index 000000000000..dd36216532e8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Replicas_List.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "myapp",
+ "revisionName": "myapp--0wlqy09",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/revisions/myapp--0wlqy09/replicas/myapp--0wlqy09-5d9774cff-5wnd8",
+ "name": "myapp--0wlqy09-5d9774cff-5wnd8",
+ "type": "Microsoft.Web/containerapps/revisions/replicas",
+ "properties": {
+ "createdTime": "2022-01-25T19:42:45Z",
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "containers": [
+ {
+ "name": "hello92",
+ "containerId": "containerd://6bac7bb3afed1c704b5fe563c34c0ecf59ac30c766bb73488f7fa552dc42ee54",
+ "ready": true,
+ "started": true,
+ "restartCount": 0,
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "logStreamEndpoint": "testLogStreamEndpoint",
+ "execEndpoint": "testExecEndpoint"
+ }
+ ],
+ "initContainers": []
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Activate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Activate.json
new file mode 100644
index 000000000000..0317211ea1e8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Activate.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Deactivate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Deactivate.json
new file mode 100644
index 000000000000..0317211ea1e8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Deactivate.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Get.json
new file mode 100644
index 000000000000..bafac22d65e1
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Get.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppcontainerApps/testcontainerApp0/revisions/testcontainerApp0-pjxhsye",
+ "name": "testcontainerApp0-pjxhsye",
+ "type": "Microsoft.App/containerApps/revisions",
+ "properties": {
+ "createdTime": "2021-05-24T21:24:22+00:00",
+ "lastActiveTime": "2021-05-24T21:24:22+00:00",
+ "fqdn": "testcontainerApp0-pjxhsye.politehill-ab123456.eastus.azurecontainerapps.io",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v2",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "trafficWeight": 80,
+ "active": true,
+ "replicas": 1,
+ "runningState": "Running"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_List.json
new file mode 100644
index 000000000000..76057cdba039
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_List.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0/revisions/testcontainerApp0-pjxhsye",
+ "name": "testcontainerApp0-pjxhsye",
+ "type": "Microsoft.App/containerApps/revisions",
+ "properties": {
+ "createdTime": "2021-05-24T21:24:22+00:00",
+ "lastActiveTime": "2021-05-24T21:24:22+00:00",
+ "fqdn": "testcontainerApp0-pjxhsye.politehill-ab123456.eastus.azurecontainerapps.io",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v2",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "trafficWeight": 80,
+ "active": true,
+ "replicas": 1
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Restart.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Restart.json
new file mode 100644
index 000000000000..90a1ebb0f0f9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Revisions_Restart.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testStaticSite0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_CreateOrUpdate.json
new file mode 100644
index 000000000000..b92b94c53061
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_CreateOrUpdate.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "sourceControlName": "current",
+ "api-version": "2023-05-02-preview",
+ "sourceControlEnvelope": {
+ "properties": {
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "test-registry.azurecr.io",
+ "registryUserName": "test-registry",
+ "registryPassword": ""
+ },
+ "azureCredentials": {
+ "clientId": "",
+ "clientSecret": "",
+ "tenantId": "",
+ "kind": "feaderated"
+ },
+ "contextPath": "./",
+ "image": "image/tag",
+ "githubPersonalAccessToken": "test"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "operationState": "InProgress",
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "test-registry.azurecr.io",
+ "registryUserName": "testreg"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://localhost/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/currentInOperationModel/operationresults/5a7f31af-8ae5-489b-a67e-f0a2d11df796?api-version=2021-03-01"
+ },
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "operationState": "InProgress",
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "test-registry.azurecr.io",
+ "registryUserName": "test-registry"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_Delete.json
new file mode 100644
index 000000000000..0621424440ae
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "sourceControlName": "current",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://localhost/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/currentInOperationModel/operationresults/14a787ee-c65f-462d-8a8b-897f69a2ab4f?api-version=2021-03-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_Get.json
new file mode 100644
index 000000000000..c56592f02eac
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_Get.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "sourceControlName": "current",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "xwang971reg.azurecr.io",
+ "registryUserName": "xwang971reg"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_ListByContainer.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_ListByContainer.json
new file mode 100644
index 000000000000..2a2214ae447e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/SourceControls_ListByContainer.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "xwang971reg.azurecr.io",
+ "registryUserName": "xwang971reg"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Subscriptions_GetCustomDomainVerificationId.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Subscriptions_GetCustomDomainVerificationId.json
new file mode 100644
index 000000000000..b7c00ff0d5a3
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Subscriptions_GetCustomDomainVerificationId.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "d27c3573-f76e-4b26-b871-0ccd2203d08c",
+ "api-version": "2023-05-02-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": "5B406D5E790BBD224468CE0AA814C396203C7CE755F135A80E35D41865E51967"
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Usages_List.json b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Usages_List.json
new file mode 100644
index 000000000000..0547a190eced
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/preview/2023-05-02-preview/examples/Usages_List.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "location": "westus",
+ "api-version": "2023-05-02-preview",
+ "subscriptionId": "subid"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "currentValue": 5,
+ "limit": 10,
+ "name": {
+ "localizedValue": "ManagedEnvironmentCount",
+ "value": "ManagedEnvironmentCount"
+ },
+ "unit": "Count"
+ },
+ {
+ "currentValue": 3,
+ "limit": 20,
+ "name": {
+ "localizedValue": "ManagedEnvironmentCores",
+ "value": "ManagedEnvironmentCores"
+ },
+ "unit": "Count"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/AuthConfigs.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/AuthConfigs.json
new file mode 100644
index 000000000000..ca7d0b7a280c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/AuthConfigs.json
@@ -0,0 +1,980 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs": {
+ "get": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Get the Container App AuthConfigs in a given resource group.",
+ "operationId": "ContainerAppsAuthConfigs_ListByContainerApp",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AuthConfigCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Auth Configs by Container Apps": {
+ "$ref": "./examples/AuthConfigs_ListByContainer.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs/{authConfigName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Get a AuthConfig of a Container App.",
+ "operationId": "ContainerAppsAuthConfigs_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigName",
+ "in": "path",
+ "description": "Name of the Container App AuthConfig.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's AuthConfig": {
+ "$ref": "./examples/AuthConfigs_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Create or update the AuthConfig for a Container App.",
+ "description": "Create or update the AuthConfig for a Container App.",
+ "operationId": "ContainerAppsAuthConfigs_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigName",
+ "in": "path",
+ "description": "Name of the Container App AuthConfig.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigEnvelope",
+ "in": "body",
+ "description": "Properties used to create a Container App AuthConfig",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container App AuthConfig": {
+ "$ref": "./examples/AuthConfigs_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ContainerAppsAuthConfigs"
+ ],
+ "summary": "Delete a Container App AuthConfig.",
+ "description": "Delete a Container App AuthConfig.",
+ "operationId": "ContainerAppsAuthConfigs_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "authConfigName",
+ "in": "path",
+ "description": "Name of the Container App AuthConfig.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App deleted successfully."
+ },
+ "204": {
+ "description": "Container App AuthConfig does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container App AuthConfig": {
+ "$ref": "./examples/AuthConfigs_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AuthConfigCollection": {
+ "description": "AuthConfig collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AuthConfig"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "AuthConfig": {
+ "description": "Configuration settings for the Azure ContainerApp Service Authentication / Authorization feature.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "AuthConfig resource specific properties",
+ "type": "object",
+ "properties": {
+ "platform": {
+ "$ref": "#/definitions/AuthPlatform",
+ "description": "The configuration settings of the platform of ContainerApp Service Authentication/Authorization."
+ },
+ "globalValidation": {
+ "$ref": "#/definitions/GlobalValidation",
+ "description": "The configuration settings that determines the validation flow of users using Service Authentication/Authorization."
+ },
+ "identityProviders": {
+ "$ref": "#/definitions/IdentityProviders",
+ "description": "The configuration settings of each of the identity providers used to configure ContainerApp Service Authentication/Authorization."
+ },
+ "login": {
+ "$ref": "#/definitions/Login",
+ "description": "The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization."
+ },
+ "httpSettings": {
+ "$ref": "#/definitions/HttpSettings",
+ "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp Service Authentication/Authorization."
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "AuthPlatform": {
+ "description": "The configuration settings of the platform of ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "true if the Authentication / Authorization feature is enabled for the current app; otherwise, false.",
+ "type": "boolean"
+ },
+ "runtimeVersion": {
+ "description": "The RuntimeVersion of the Authentication / Authorization feature in use for the current app.\nThe setting in this value can control the behavior of certain features in the Authentication / Authorization module.",
+ "type": "string"
+ }
+ }
+ },
+ "GlobalValidation": {
+ "description": "The configuration settings that determines the validation flow of users using ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "unauthenticatedClientAction": {
+ "description": "The action to take when an unauthenticated client attempts to access the app.",
+ "enum": [
+ "RedirectToLoginPage",
+ "AllowAnonymous",
+ "Return401",
+ "Return403"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "UnauthenticatedClientActionV2",
+ "modelAsString": false
+ }
+ },
+ "redirectToProvider": {
+ "description": "The default authentication provider to use when multiple providers are configured.\nThis setting is only needed if multiple providers are configured and the unauthenticated client\naction is set to \"RedirectToLoginPage\".",
+ "type": "string"
+ },
+ "excludedPaths": {
+ "description": "The paths for which unauthenticated flow would not be redirected to the login page.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "HttpSettings": {
+ "description": "The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "requireHttps": {
+ "description": "false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true.",
+ "type": "boolean"
+ },
+ "routes": {
+ "$ref": "#/definitions/HttpSettingsRoutes",
+ "description": "The configuration settings of the paths HTTP requests."
+ },
+ "forwardProxy": {
+ "$ref": "#/definitions/ForwardProxy",
+ "description": "The configuration settings of a forward proxy used to make the requests."
+ }
+ }
+ },
+ "HttpSettingsRoutes": {
+ "description": "The configuration settings of the paths HTTP requests.",
+ "type": "object",
+ "properties": {
+ "apiPrefix": {
+ "description": "The prefix that should precede all the authentication/authorization paths.",
+ "type": "string"
+ }
+ }
+ },
+ "ForwardProxy": {
+ "description": "The configuration settings of a forward proxy used to make the requests.",
+ "type": "object",
+ "properties": {
+ "convention": {
+ "description": "The convention used to determine the url of the request made.",
+ "enum": [
+ "NoProxy",
+ "Standard",
+ "Custom"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ForwardProxyConvention",
+ "modelAsString": false
+ }
+ },
+ "customHostHeaderName": {
+ "description": "The name of the header containing the host of the request.",
+ "type": "string"
+ },
+ "customProtoHeaderName": {
+ "description": "The name of the header containing the scheme of the request.",
+ "type": "string"
+ }
+ }
+ },
+ "Login": {
+ "description": "The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "routes": {
+ "$ref": "#/definitions/LoginRoutes",
+ "description": "The routes that specify the endpoints used for login and logout requests."
+ },
+ "preserveUrlFragmentsForLogins": {
+ "description": "true if the fragments from the request are preserved after the login request is made; otherwise, false.",
+ "type": "boolean"
+ },
+ "allowedExternalRedirectUrls": {
+ "description": "External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored.\nThis is an advanced setting typically only needed by Windows Store application backends.\nNote that URLs within the current domain are always implicitly allowed.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cookieExpiration": {
+ "$ref": "#/definitions/CookieExpiration",
+ "description": "The configuration settings of the session cookie's expiration."
+ },
+ "nonce": {
+ "$ref": "#/definitions/Nonce",
+ "description": "The configuration settings of the nonce used in the login flow."
+ }
+ }
+ },
+ "LoginRoutes": {
+ "description": "The routes that specify the endpoints used for login and logout requests.",
+ "type": "object",
+ "properties": {
+ "logoutEndpoint": {
+ "description": "The endpoint at which a logout request should be made.",
+ "type": "string"
+ }
+ }
+ },
+ "CookieExpiration": {
+ "description": "The configuration settings of the session cookie's expiration.",
+ "type": "object",
+ "properties": {
+ "convention": {
+ "description": "The convention used when determining the session cookie's expiration.",
+ "enum": [
+ "FixedTime",
+ "IdentityProviderDerived"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CookieExpirationConvention",
+ "modelAsString": false
+ }
+ },
+ "timeToExpiration": {
+ "description": "The time after the request is made when the session cookie should expire.",
+ "type": "string"
+ }
+ }
+ },
+ "Nonce": {
+ "description": "The configuration settings of the nonce used in the login flow.",
+ "type": "object",
+ "properties": {
+ "validateNonce": {
+ "description": "false if the nonce should not be validated while completing the login flow; otherwise, true.",
+ "type": "boolean"
+ },
+ "nonceExpirationInterval": {
+ "description": "The time after the request is made when the nonce should expire.",
+ "type": "string"
+ }
+ }
+ },
+ "IdentityProviders": {
+ "description": "The configuration settings of each of the identity providers used to configure ContainerApp Service Authentication/Authorization.",
+ "type": "object",
+ "properties": {
+ "azureActiveDirectory": {
+ "$ref": "#/definitions/AzureActiveDirectory",
+ "description": "The configuration settings of the Azure Active directory provider."
+ },
+ "facebook": {
+ "$ref": "#/definitions/Facebook",
+ "description": "The configuration settings of the Facebook provider."
+ },
+ "gitHub": {
+ "$ref": "#/definitions/GitHub",
+ "description": "The configuration settings of the GitHub provider."
+ },
+ "google": {
+ "$ref": "#/definitions/Google",
+ "description": "The configuration settings of the Google provider."
+ },
+ "twitter": {
+ "$ref": "#/definitions/Twitter",
+ "description": "The configuration settings of the Twitter provider."
+ },
+ "apple": {
+ "$ref": "#/definitions/Apple",
+ "description": "The configuration settings of the Apple provider."
+ },
+ "azureStaticWebApps": {
+ "$ref": "#/definitions/AzureStaticWebApps",
+ "description": "The configuration settings of the Azure Static Web Apps provider."
+ },
+ "customOpenIdConnectProviders": {
+ "description": "The map of the name of the alias of each custom Open ID Connect provider to the\nconfiguration settings of the custom Open ID Connect provider.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/CustomOpenIdConnectProvider"
+ }
+ }
+ }
+ },
+ "AzureActiveDirectory": {
+ "description": "The configuration settings of the Azure Active directory provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AzureActiveDirectoryRegistration",
+ "description": "The configuration settings of the Azure Active Directory app registration."
+ },
+ "login": {
+ "$ref": "#/definitions/AzureActiveDirectoryLogin",
+ "description": "The configuration settings of the Azure Active Directory login flow."
+ },
+ "validation": {
+ "$ref": "#/definitions/AzureActiveDirectoryValidation",
+ "description": "The configuration settings of the Azure Active Directory token validation flow."
+ },
+ "isAutoProvisioned": {
+ "description": "Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling.\nThis is an internal flag primarily intended to support the Azure Management Portal. Users should not\nread or write to this property.",
+ "type": "boolean"
+ }
+ }
+ },
+ "AzureActiveDirectoryLogin": {
+ "description": "The configuration settings of the Azure Active Directory login flow.",
+ "type": "object",
+ "properties": {
+ "loginParameters": {
+ "description": "Login parameters to send to the OpenID Connect authorization endpoint when\na user logs in. Each parameter must be in the form \"key=value\".",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "disableWWWAuthenticate": {
+ "description": "true if the www-authenticate provider should be omitted from the request; otherwise, false.",
+ "type": "boolean"
+ }
+ }
+ },
+ "AzureActiveDirectoryRegistration": {
+ "description": "The configuration settings of the Azure Active Directory app registration.",
+ "type": "object",
+ "properties": {
+ "openIdIssuer": {
+ "description": "The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.\nWhen using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/.\nThis URI is a case-sensitive identifier for the token issuer.\nMore information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html",
+ "type": "string"
+ },
+ "clientId": {
+ "description": "The Client ID of this relying party application, known as the client_id.\nThis setting is required for enabling OpenID Connection authentication with Azure Active Directory or \nother 3rd party OpenID Connect providers.\nMore information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html",
+ "type": "string"
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting name that contains the client secret of the relying party application.",
+ "type": "string"
+ },
+ "clientSecretCertificateThumbprint": {
+ "description": "An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret. It is also optional.",
+ "type": "string"
+ },
+ "clientSecretCertificateSubjectAlternativeName": {
+ "description": "An alternative to the client secret thumbprint, that is the subject alternative name of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret Certificate Thumbprint. It is also optional.",
+ "type": "string"
+ },
+ "clientSecretCertificateIssuer": {
+ "description": "An alternative to the client secret thumbprint, that is the issuer of a certificate used for signing purposes. This property acts as\na replacement for the Client Secret Certificate Thumbprint. It is also optional.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureActiveDirectoryValidation": {
+ "description": "The configuration settings of the Azure Active Directory token validation flow.",
+ "type": "object",
+ "properties": {
+ "jwtClaimChecks": {
+ "$ref": "#/definitions/JwtClaimChecks",
+ "description": "The configuration settings of the checks that should be made while validating the JWT Claims."
+ },
+ "allowedAudiences": {
+ "description": "The list of audiences that can make successful authentication/authorization requests.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "defaultAuthorizationPolicy": {
+ "$ref": "#/definitions/DefaultAuthorizationPolicy",
+ "description": "The configuration settings of the default authorization policy."
+ }
+ }
+ },
+ "JwtClaimChecks": {
+ "description": "The configuration settings of the checks that should be made while validating the JWT Claims.",
+ "type": "object",
+ "properties": {
+ "allowedGroups": {
+ "description": "The list of the allowed groups.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "allowedClientApplications": {
+ "description": "The list of the allowed client applications.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "DefaultAuthorizationPolicy": {
+ "description": "The configuration settings of the Azure Active Directory default authorization policy.",
+ "type": "object",
+ "properties": {
+ "allowedPrincipals": {
+ "$ref": "#/definitions/AllowedPrincipals",
+ "description": "The configuration settings of the Azure Active Directory allowed principals."
+ },
+ "allowedApplications": {
+ "description": "The configuration settings of the Azure Active Directory allowed applications.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "AllowedPrincipals": {
+ "description": "The configuration settings of the Azure Active Directory allowed principals.",
+ "type": "object",
+ "properties": {
+ "groups": {
+ "description": "The list of the allowed groups.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "identities": {
+ "description": "The list of the allowed identities.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "Facebook": {
+ "description": "The configuration settings of the Facebook provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Facebook provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AppRegistration",
+ "description": "The configuration settings of the app registration for the Facebook provider."
+ },
+ "graphApiVersion": {
+ "description": "The version of the Facebook api to be used while logging in.",
+ "type": "string"
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ }
+ }
+ },
+ "AppRegistration": {
+ "description": "The configuration settings of the app registration for providers that have app ids and app secrets",
+ "type": "object",
+ "properties": {
+ "appId": {
+ "description": "The App ID of the app used for login.",
+ "type": "string"
+ },
+ "appSecretSettingName": {
+ "description": "The app setting name that contains the app secret.",
+ "type": "string"
+ }
+ }
+ },
+ "LoginScopes": {
+ "description": "The configuration settings of the login flow, including the scopes that should be requested.",
+ "type": "object",
+ "properties": {
+ "scopes": {
+ "description": "A list of the scopes that should be requested while authenticating.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "GitHub": {
+ "description": "The configuration settings of the GitHub provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the GitHub provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/ClientRegistration",
+ "description": "The configuration settings of the app registration for the GitHub provider."
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ }
+ }
+ },
+ "ClientRegistration": {
+ "description": "The configuration settings of the app registration for providers that have client ids and client secrets",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The Client ID of the app used for login.",
+ "type": "string"
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting name that contains the client secret.",
+ "type": "string"
+ }
+ }
+ },
+ "Google": {
+ "description": "The configuration settings of the Google provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Google provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/ClientRegistration",
+ "description": "The configuration settings of the app registration for the Google provider."
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ },
+ "validation": {
+ "$ref": "#/definitions/AllowedAudiencesValidation",
+ "description": "The configuration settings of the Azure Active Directory token validation flow."
+ }
+ }
+ },
+ "AllowedAudiencesValidation": {
+ "description": "The configuration settings of the Allowed Audiences validation flow.",
+ "type": "object",
+ "properties": {
+ "allowedAudiences": {
+ "description": "The configuration settings of the allowed list of audiences from which to validate the JWT token.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "Twitter": {
+ "description": "The configuration settings of the Twitter provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Twitter provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/TwitterRegistration",
+ "description": "The configuration settings of the app registration for the Twitter provider."
+ }
+ }
+ },
+ "TwitterRegistration": {
+ "description": "The configuration settings of the app registration for the Twitter provider.",
+ "type": "object",
+ "properties": {
+ "consumerKey": {
+ "description": "The OAuth 1.0a consumer key of the Twitter application used for sign-in.\nThis setting is required for enabling Twitter Sign-In.\nTwitter Sign-In documentation: https://dev.twitter.com/web/sign-in",
+ "type": "string"
+ },
+ "consumerSecretSettingName": {
+ "description": "The app setting name that contains the OAuth 1.0a consumer secret of the Twitter\napplication used for sign-in.",
+ "type": "string"
+ }
+ }
+ },
+ "Apple": {
+ "description": "The configuration settings of the Apple provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Apple provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AppleRegistration",
+ "description": "The configuration settings of the Apple registration."
+ },
+ "login": {
+ "$ref": "#/definitions/LoginScopes",
+ "description": "The configuration settings of the login flow."
+ }
+ }
+ },
+ "AppleRegistration": {
+ "description": "The configuration settings of the registration for the Apple provider",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The Client ID of the app used for login.",
+ "type": "string"
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting name that contains the client secret.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureStaticWebApps": {
+ "description": "The configuration settings of the Azure Static Web Apps provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/AzureStaticWebAppsRegistration",
+ "description": "The configuration settings of the Azure Static Web Apps registration."
+ }
+ }
+ },
+ "AzureStaticWebAppsRegistration": {
+ "description": "The configuration settings of the registration for the Azure Static Web Apps provider",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The Client ID of the app used for login.",
+ "type": "string"
+ }
+ }
+ },
+ "CustomOpenIdConnectProvider": {
+ "description": "The configuration settings of the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "false if the custom Open ID provider provider should not be enabled; otherwise, true.",
+ "type": "boolean"
+ },
+ "registration": {
+ "$ref": "#/definitions/OpenIdConnectRegistration",
+ "description": "The configuration settings of the app registration for the custom Open ID Connect provider."
+ },
+ "login": {
+ "$ref": "#/definitions/OpenIdConnectLogin",
+ "description": "The configuration settings of the login flow of the custom Open ID Connect provider."
+ }
+ }
+ },
+ "OpenIdConnectRegistration": {
+ "description": "The configuration settings of the app registration for the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "The client id of the custom Open ID Connect provider.",
+ "type": "string"
+ },
+ "clientCredential": {
+ "$ref": "#/definitions/OpenIdConnectClientCredential",
+ "description": "The authentication credentials of the custom Open ID Connect provider."
+ },
+ "openIdConnectConfiguration": {
+ "$ref": "#/definitions/OpenIdConnectConfig",
+ "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider."
+ }
+ }
+ },
+ "OpenIdConnectClientCredential": {
+ "description": "The authentication client credentials of the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "method": {
+ "description": "The method that should be used to authenticate the user.",
+ "enum": [
+ "ClientSecretPost"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ClientCredentialMethod",
+ "modelAsString": false
+ }
+ },
+ "clientSecretSettingName": {
+ "description": "The app setting that contains the client secret for the custom Open ID Connect provider.",
+ "type": "string"
+ }
+ }
+ },
+ "OpenIdConnectConfig": {
+ "description": "The configuration settings of the endpoints used for the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "authorizationEndpoint": {
+ "description": "The endpoint to be used to make an authorization request.",
+ "type": "string"
+ },
+ "tokenEndpoint": {
+ "description": "The endpoint to be used to request a token.",
+ "type": "string"
+ },
+ "issuer": {
+ "description": "The endpoint that issues the token.",
+ "type": "string"
+ },
+ "certificationUri": {
+ "description": "The endpoint that provides the keys necessary to validate the token.",
+ "type": "string"
+ },
+ "wellKnownOpenIdConfiguration": {
+ "description": "The endpoint that contains all the configuration endpoints for the provider.",
+ "type": "string"
+ }
+ }
+ },
+ "OpenIdConnectLogin": {
+ "description": "The configuration settings of the login flow of the custom Open ID Connect provider.",
+ "type": "object",
+ "properties": {
+ "nameClaimType": {
+ "description": "The name of the claim that contains the users name.",
+ "type": "string"
+ },
+ "scopes": {
+ "description": "A list of the scopes that should be requested while authenticating.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/AvailableWorkloadProfiles.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/AvailableWorkloadProfiles.json
new file mode 100644
index 000000000000..7a049115d4ac
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/AvailableWorkloadProfiles.json
@@ -0,0 +1,144 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/locations/{location}/availableManagedEnvironmentsWorkloadProfileTypes": {
+ "get": {
+ "tags": [
+ "AvailableWorkloadProfiles"
+ ],
+ "summary": "Get available workload profiles by location.",
+ "description": "Get all available workload profiles for a location.",
+ "operationId": "AvailableWorkloadProfiles_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailableWorkloadProfilesCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "BillingMeters_Get": {
+ "$ref": "./examples/AvailableWorkloadProfiles_Get.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AvailableWorkloadProfile": {
+ "description": "A workload profile with specific hardware configure to run container apps.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "Region of the workload profile."
+ },
+ "properties": {
+ "description": "Revision resource specific properties",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "Used to categorize workload profiles.",
+ "type": "string"
+ },
+ "applicability": {
+ "type": "string",
+ "description": "indicates whether the profile is default for the location.",
+ "enum": [
+ "LocationDefault",
+ "Custom"
+ ],
+ "x-ms-enum": {
+ "name": "Applicability",
+ "modelAsString": true
+ }
+ },
+ "cores": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of cores in CPU."
+ },
+ "memoryGiB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Memory in GiB."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The everyday name of the workload profile."
+ }
+ }
+ }
+ }
+ },
+ "AvailableWorkloadProfilesCollection": {
+ "description": "Collection of available workload profiles in the location.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of workload profiles.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AvailableWorkloadProfile"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/BillingMeters.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/BillingMeters.json
new file mode 100644
index 000000000000..0c73217931e5
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/BillingMeters.json
@@ -0,0 +1,118 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/locations/{location}/billingMeters": {
+ "get": {
+ "tags": [
+ "BillingMeters"
+ ],
+ "summary": "Get billing meters by location.",
+ "description": "Get all billingMeters for a location.",
+ "operationId": "BillingMeters_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/BillingMeterCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "BillingMeters_Get": {
+ "$ref": "./examples/BillingMeters_Get.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BillingMeter": {
+ "description": "Billing meter.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "Region for the billing meter."
+ },
+ "properties": {
+ "description": "Revision resource specific properties",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "Used to categorize billing meters.",
+ "type": "string"
+ },
+ "meterType": {
+ "type": "string",
+ "description": "Billing meter type."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The everyday name of the billing meter."
+ }
+ }
+ }
+ }
+ },
+ "BillingMeterCollection": {
+ "description": "Collection of billing meters.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of billing meters.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BillingMeter"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "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/app/resource-manager/Microsoft.App/stable/2023-05-01/CommonDefinitions.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/CommonDefinitions.json
new file mode 100644
index 000000000000..7cda418aa224
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/CommonDefinitions.json
@@ -0,0 +1,1196 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {},
+ "definitions": {
+ "EnvironmentVar": {
+ "description": "Container App container environment variable.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Environment variable name.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Non-secret environment variable value.",
+ "type": "string"
+ },
+ "secretRef": {
+ "description": "Name of the Container App secret from which to pull the environment variable value.",
+ "type": "string"
+ }
+ }
+ },
+ "WorkloadProfileName": {
+ "description": "Workload profile name for container apps to execute on.",
+ "type": "string"
+ },
+ "WorkloadProfileType": {
+ "description": "Workload profile type for container apps to execute on.",
+ "type": "string"
+ },
+ "BaseContainer": {
+ "description": "Container App base container definition.",
+ "type": "object",
+ "properties": {
+ "image": {
+ "description": "Container image tag.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Custom container name.",
+ "type": "string"
+ },
+ "command": {
+ "description": "Container start command.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "args": {
+ "description": "Container start command arguments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "env": {
+ "description": "Container environment variables.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EnvironmentVar"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "resources": {
+ "$ref": "#/definitions/ContainerResources",
+ "description": "Container resource requirements."
+ },
+ "volumeMounts": {
+ "description": "Container volume mounts.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeMount"
+ },
+ "x-ms-identifiers": [
+ "volumeName"
+ ]
+ }
+ }
+ },
+ "InitContainer": {
+ "description": "Container App init container definition",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseContainer"
+ }
+ ]
+ },
+ "Container": {
+ "description": "Container App container definition",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseContainer"
+ }
+ ],
+ "properties": {
+ "probes": {
+ "description": "List of probes for the container.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerAppProbe"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ }
+ }
+ },
+ "ContainerResources": {
+ "description": "Container App container resource requirements.",
+ "type": "object",
+ "properties": {
+ "cpu": {
+ "format": "double",
+ "description": "Required CPU in cores, e.g. 0.5",
+ "type": "number"
+ },
+ "memory": {
+ "description": "Required memory, e.g. \"250Mb\"",
+ "type": "string"
+ },
+ "ephemeralStorage": {
+ "description": "Ephemeral Storage, e.g. \"1Gi\"",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ContainerAppProbe": {
+ "description": "Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.",
+ "type": "object",
+ "properties": {
+ "failureThreshold": {
+ "description": "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. Maximum value is 10.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "httpGet": {
+ "description": "HTTPGet specifies the http request to perform.",
+ "type": "object",
+ "required": [
+ "port"
+ ],
+ "properties": {
+ "host": {
+ "description": "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead.",
+ "type": "string"
+ },
+ "httpHeaders": {
+ "description": "Custom headers to set in the request. HTTP allows repeated headers.",
+ "type": "array",
+ "items": {
+ "description": "HTTPHeader describes a custom header to be used in HTTP probes",
+ "type": "object",
+ "required": [
+ "name",
+ "value"
+ ],
+ "properties": {
+ "name": {
+ "description": "The header field name",
+ "type": "string"
+ },
+ "value": {
+ "description": "The header field value",
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "path": {
+ "description": "Path to access on the HTTP server.",
+ "type": "string"
+ },
+ "port": {
+ "description": "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "scheme": {
+ "description": "Scheme to use for connecting to the host. Defaults to HTTP.",
+ "enum": [
+ "HTTP",
+ "HTTPS"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Scheme",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "initialDelaySeconds": {
+ "description": "Number of seconds after the container has started before liveness probes are initiated. Minimum value is 1. Maximum value is 60.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "periodSeconds": {
+ "description": "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "successThreshold": {
+ "description": "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. Maximum value is 10.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "tcpSocket": {
+ "description": "TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported.",
+ "type": "object",
+ "required": [
+ "port"
+ ],
+ "properties": {
+ "host": {
+ "description": "Optional: Host name to connect to, defaults to the pod IP.",
+ "type": "string"
+ },
+ "port": {
+ "description": "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "terminationGracePeriodSeconds": {
+ "description": "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is an alpha field and requires enabling ProbeTerminationGracePeriod feature gate. Maximum value is 3600 seconds (1 hour)",
+ "type": "integer",
+ "format": "int64"
+ },
+ "timeoutSeconds": {
+ "description": "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 240.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "type": {
+ "description": "The type of probe.",
+ "enum": [
+ "Liveness",
+ "Readiness",
+ "Startup"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Type",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CustomScaleRule": {
+ "description": "Container App container Custom scaling rule.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Type of the custom scale rule\neg: azure-servicebus, redis etc.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata properties to describe custom scale rule.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "auth": {
+ "description": "Authentication secrets for the custom scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "CustomDomainConfiguration": {
+ "type": "object",
+ "description": "Configuration properties for apps environment custom domain",
+ "properties": {
+ "customDomainVerificationId": {
+ "description": "Id used to verify domain name ownership",
+ "type": "string",
+ "readOnly": true
+ },
+ "dnsSuffix": {
+ "type": "string",
+ "description": "Dns suffix for the environment domain",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "certificateValue": {
+ "format": "byte",
+ "description": "PFX or PEM blob",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "certificatePassword": {
+ "description": "Certificate password",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "expirationDate": {
+ "format": "date-time",
+ "description": "Certificate expiration date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "thumbprint": {
+ "description": "Certificate thumbprint.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subjectName": {
+ "description": "Subject name of the certificate.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DefaultErrorResponse": {
+ "description": "App Service error response.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "description": "Error model.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "details": {
+ "type": "array",
+ "description": "Details or the error",
+ "items": {
+ "description": "Detailed errors.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "x-ms-identifiers": [
+ "code"
+ ]
+ },
+ "innererror": {
+ "description": "More information to debug error.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "HttpScaleRule": {
+ "description": "Container App container Http scaling rule.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata properties to describe http scale rule.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "auth": {
+ "description": "Authentication secrets for the custom scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "TcpScaleRule": {
+ "description": "Container App container Tcp scaling rule.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata properties to describe tcp scale rule.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "auth": {
+ "description": "Authentication secrets for the tcp scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "QueueScaleRule": {
+ "description": "Container App container Azure Queue based scaling rule.",
+ "type": "object",
+ "properties": {
+ "queueName": {
+ "description": "Queue name.",
+ "type": "string"
+ },
+ "queueLength": {
+ "format": "int32",
+ "description": "Queue length.",
+ "type": "integer"
+ },
+ "auth": {
+ "description": "Authentication secrets for the queue scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRuleAuth"
+ },
+ "x-ms-identifiers": [
+ "triggerParameter"
+ ]
+ }
+ }
+ },
+ "Scale": {
+ "description": "Container App scaling configurations.",
+ "type": "object",
+ "properties": {
+ "minReplicas": {
+ "format": "int32",
+ "description": "Optional. Minimum number of container replicas.",
+ "type": "integer"
+ },
+ "maxReplicas": {
+ "format": "int32",
+ "description": "Optional. Maximum number of container replicas. Defaults to 10 if not set.",
+ "type": "integer",
+ "default": 10
+ },
+ "rules": {
+ "description": "Scaling rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScaleRule"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ScaleRule": {
+ "description": "Container App container scaling rule.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Scale Rule Name",
+ "type": "string"
+ },
+ "azureQueue": {
+ "$ref": "#/definitions/QueueScaleRule",
+ "description": "Azure Queue based scaling."
+ },
+ "custom": {
+ "$ref": "#/definitions/CustomScaleRule",
+ "description": "Custom scale rule."
+ },
+ "http": {
+ "$ref": "#/definitions/HttpScaleRule",
+ "description": "HTTP requests based scaling."
+ },
+ "tcp": {
+ "$ref": "#/definitions/TcpScaleRule",
+ "description": "Tcp requests based scaling."
+ }
+ }
+ },
+ "ScaleRuleAuth": {
+ "description": "Auth Secrets for Scale Rule",
+ "type": "object",
+ "properties": {
+ "secretRef": {
+ "description": "Name of the secret from which to pull the auth params.",
+ "type": "string"
+ },
+ "triggerParameter": {
+ "description": "Trigger Parameter that uses the secret",
+ "type": "string"
+ }
+ }
+ },
+ "Secret": {
+ "description": "Secret definition.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Secret Name.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Secret Value.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "identity": {
+ "description": "Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a system-assigned identity.",
+ "type": "string"
+ },
+ "keyVaultUrl": {
+ "description": "Azure Key Vault URL pointing to the secret referenced by the container app.",
+ "type": "string"
+ }
+ }
+ },
+ "Template": {
+ "description": "Container App versioned application definition.\nDefines the desired state of an immutable revision.\nAny changes to this section Will result in a new revision being created",
+ "type": "object",
+ "properties": {
+ "revisionSuffix": {
+ "description": "User friendly suffix that is appended to the revision name",
+ "type": "string"
+ },
+ "terminationGracePeriodSeconds": {
+ "description": "Optional duration in seconds the Container App Instance needs to terminate gracefully. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). If this value is nil, the default grace period will be used instead. Set this value longer than the expected cleanup time for your process. Defaults to 30 seconds.",
+ "format": "int64",
+ "type": "integer"
+ },
+ "initContainers": {
+ "description": "List of specialized containers that run before app containers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InitContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "containers": {
+ "description": "List of container definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Container"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "scale": {
+ "$ref": "#/definitions/Scale",
+ "description": "Scaling properties for the Container App."
+ },
+ "volumes": {
+ "description": "List of volume definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "serviceBinds": {
+ "description": "List of container app services bound to the app",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ServiceBind"
+ },
+ "x-ms-identifier": [
+ "name"
+ ]
+ }
+ }
+ },
+ "Volume": {
+ "description": "Volume definitions for the Container App.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Volume name.",
+ "type": "string"
+ },
+ "storageType": {
+ "description": "Storage type for the volume. If not provided, use EmptyDir.",
+ "enum": [
+ "AzureFile",
+ "EmptyDir",
+ "Secret"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "StorageType",
+ "modelAsString": true
+ }
+ },
+ "storageName": {
+ "description": "Name of storage resource. No need to provide for EmptyDir and Secret.",
+ "type": "string"
+ },
+ "secrets": {
+ "description": "List of secrets to be added in volume. If no secrets are provided, all secrets in collection will be added to volume.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SecretVolumeItem"
+ },
+ "x-ms-identifiers": [
+ "secretRef"
+ ]
+ },
+ "mountOptions": {
+ "description": "Mount options used while mounting the AzureFile. Must be a comma-separated string.",
+ "type": "string"
+ }
+ }
+ },
+ "SecretVolumeItem": {
+ "description": "Secret to be added to volume.",
+ "type": "object",
+ "properties": {
+ "secretRef": {
+ "description": "Name of the Container App secret from which to pull the secret value.",
+ "type": "string"
+ },
+ "path": {
+ "description": "Path to project secret to. If no path is provided, path defaults to name of secret listed in secretRef.",
+ "type": "string"
+ }
+ }
+ },
+ "VolumeMount": {
+ "description": "Volume mount for the Container App.",
+ "type": "object",
+ "properties": {
+ "volumeName": {
+ "description": "This must match the Name of a Volume.",
+ "type": "string"
+ },
+ "mountPath": {
+ "description": "Path within the container at which the volume should be mounted.Must not contain ':'.",
+ "type": "string"
+ },
+ "subPath": {
+ "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).",
+ "type": "string"
+ }
+ }
+ },
+ "DaprComponentsCollection": {
+ "description": "Dapr Components ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DaprComponent"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DaprComponent": {
+ "description": "Dapr Component.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Dapr Component resource specific properties",
+ "type": "object",
+ "properties": {
+ "componentType": {
+ "description": "Component type",
+ "type": "string"
+ },
+ "version": {
+ "description": "Component version",
+ "type": "string"
+ },
+ "ignoreErrors": {
+ "description": "Boolean describing if the component errors are ignores",
+ "type": "boolean",
+ "default": false
+ },
+ "initTimeout": {
+ "description": "Initialization timeout",
+ "type": "string"
+ },
+ "secrets": {
+ "description": "Collection of secrets used by a Dapr component",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "secretStoreComponent": {
+ "description": "Name of a Dapr component to retrieve component secrets from",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Component metadata",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DaprMetadata"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "scopes": {
+ "description": "Names of container apps that can use this Dapr component",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "DaprMetadata": {
+ "description": "Dapr component metadata.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Metadata property name.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Metadata property value.",
+ "type": "string"
+ },
+ "secretRef": {
+ "description": "Name of the Dapr Component secret from which to pull the metadata property value.",
+ "type": "string"
+ }
+ }
+ },
+ "DaprSecretsCollection": {
+ "description": "Dapr component Secrets Collection for ListSecrets Action.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of secrets used by a Dapr component",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprSecret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "DaprSecret": {
+ "description": "Dapr component Secret for ListSecrets Action",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Secret Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "Secret Value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ }
+ }
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "description": "The complex type of the extended location.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extended location."
+ },
+ "type": {
+ "$ref": "#/definitions/ExtendedLocationType",
+ "description": "The type of the extended location."
+ }
+ }
+ },
+ "ExtendedLocationType": {
+ "type": "string",
+ "description": "The type of extendedLocation.",
+ "enum": [
+ "CustomLocation"
+ ],
+ "x-ms-enum": {
+ "name": "ExtendedLocationTypes",
+ "modelAsString": true
+ }
+ },
+ "AzureFileProperties": {
+ "description": "Azure File Properties.",
+ "type": "object",
+ "properties": {
+ "accountName": {
+ "description": "Storage account name for azure file.",
+ "type": "string"
+ },
+ "accountKey": {
+ "description": "Storage account key for azure file.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "accessMode": {
+ "description": "Access mode for storage",
+ "enum": [
+ "ReadOnly",
+ "ReadWrite"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AccessMode",
+ "modelAsString": true
+ }
+ },
+ "shareName": {
+ "description": "Azure file share name.",
+ "type": "string"
+ }
+ }
+ },
+ "Certificate": {
+ "description": "Certificate used for Custom Domain bindings of Container Apps in a Managed Environment",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Certificate resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the certificate.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "DeleteFailed",
+ "Pending"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "CertificateProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "password": {
+ "description": "Certificate password.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "subjectName": {
+ "description": "Subject name of the certificate.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subjectAlternativeNames": {
+ "description": "Subject alternative names the certificate applies to.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "value": {
+ "format": "byte",
+ "description": "PFX or PEM blob",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "issuer": {
+ "description": "Certificate issuer.",
+ "type": "string",
+ "readOnly": true
+ },
+ "issueDate": {
+ "format": "date-time",
+ "description": "Certificate issue Date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "expirationDate": {
+ "format": "date-time",
+ "description": "Certificate expiration date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "thumbprint": {
+ "description": "Certificate thumbprint.",
+ "type": "string",
+ "readOnly": true
+ },
+ "valid": {
+ "description": "Is the certificate valid?.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "publicKeyHash": {
+ "description": "Public key hash.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ },
+ "CertificateCollection": {
+ "description": "Collection of Certificates.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Certificate"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CertificatePatch": {
+ "description": "A certificate to update",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Application-specific metadata in the form of key-value pairs."
+ }
+ }
+ },
+ "ManagedCertificate": {
+ "description": "Managed certificates used for Custom Domain bindings of Container Apps in a Managed Environment",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Certificate resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the certificate.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "DeleteFailed",
+ "Pending"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "CertificateProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "subjectName": {
+ "description": "Subject name of the certificate.",
+ "type": "string"
+ },
+ "error": {
+ "description": "Any error occurred during the certificate provision.",
+ "type": "string",
+ "readOnly": true
+ },
+ "domainControlValidation": {
+ "description": "Selected type of domain control validation for managed certificates.",
+ "enum": [
+ "CNAME",
+ "HTTP",
+ "TXT"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ManagedCertificateDomainControlValidation",
+ "modelAsString": true
+ }
+ },
+ "validationToken": {
+ "description": "A TXT token used for DNS TXT domain control validation when issuing this type of managed certificates.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ },
+ "ManagedCertificatePatch": {
+ "description": "A managed certificate to update",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Application-specific metadata in the form of key-value pairs."
+ }
+ }
+ },
+ "ManagedCertificateCollection": {
+ "description": "Collection of Managed Certificates.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedCertificate"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "JobTemplate": {
+ "description": "Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to this section Will result in a new revision being created",
+ "type": "object",
+ "properties": {
+ "initContainers": {
+ "description": "List of specialized containers that run before app containers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InitContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "containers": {
+ "description": "List of container definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Container"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "volumes": {
+ "description": "List of volume definitions for the Container App.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ServiceBind": {
+ "description": "Configuration to bind a ContainerApp to a dev ContainerApp Service",
+ "type": "object",
+ "properties": {
+ "serviceId": {
+ "description": "Resource id of the target service",
+ "type": "string"
+ },
+ "name": {
+ "description": "Name of the service bind",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironments.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironments.json
new file mode 100644
index 000000000000..ffa4791be2e0
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironments.json
@@ -0,0 +1,469 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/connectedEnvironments": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Get all connectedEnvironments for a subscription.",
+ "description": "Get all connectedEnvironments for a subscription.",
+ "operationId": "ConnectedEnvironments_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List connected environments by subscription": {
+ "$ref": "./examples/ConnectedEnvironments_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "operationId": "ConnectedEnvironments_ListByResourceGroup",
+ "description": "Get all connectedEnvironments in a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by resource group": {
+ "$ref": "./examples/ConnectedEnvironments_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "operationId": "ConnectedEnvironments_Get",
+ "description": "Get the properties of an connectedEnvironment.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get connected environment by connectedEnvironmentName": {
+ "$ref": "./examples/ConnectedEnvironments_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "description": "Creates or updates an connectedEnvironment.",
+ "operationId": "ConnectedEnvironments_CreateOrUpdate",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "environmentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the connectedEnvironment.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create kube environments": {
+ "$ref": "./examples/ConnectedEnvironments_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Delete an connectedEnvironment.",
+ "description": "Delete an connectedEnvironment.",
+ "operationId": "ConnectedEnvironments_Delete",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "202": {
+ "description": "Delete operation is accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "ConnectedEnvironment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete connected environment by connectedEnvironmentName": {
+ "$ref": "./examples/ConnectedEnvironments_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Update connected Environment's properties.",
+ "description": "Patches a Managed Environment. Only patching of tags is supported currently",
+ "operationId": "ConnectedEnvironments_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connectedEnvironment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Managed Environment": {
+ "$ref": "./examples/ConnectedEnvironments_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "ConnectedEnvironments"
+ ],
+ "summary": "Checks the resource connectedEnvironmentName availability.",
+ "description": "Checks if resource connectedEnvironmentName is available.",
+ "operationId": "ConnectedEnvironments_CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "checkNameAvailabilityRequest",
+ "in": "body",
+ "description": "The check connectedEnvironmentName availability request.",
+ "required": true,
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Certificates_CheckNameAvailability": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConnectedEnvironment": {
+ "description": "An environment for Kubernetes cluster specialized for web workloads by Azure App Service",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "./CommonDefinitions.json#/definitions/ExtendedLocation"
+ },
+ "properties": {
+ "description": "ConnectedEnvironment resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Kubernetes Environment.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Waiting",
+ "InitializationInProgress",
+ "InfrastructureSetupInProgress",
+ "InfrastructureSetupComplete",
+ "ScheduledForDelete"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ConnectedEnvironmentProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "deploymentErrors": {
+ "description": "Any errors that occurred during deployment or deployment validation",
+ "type": "string",
+ "readOnly": true
+ },
+ "defaultDomain": {
+ "description": "Default Domain Name for the cluster",
+ "type": "string",
+ "readOnly": true
+ },
+ "staticIp": {
+ "description": "Static IP of the connectedEnvironment",
+ "type": "string"
+ },
+ "daprAIConnectionString": {
+ "type": "string",
+ "description": "Application Insights connection string used by Dapr to export Service to Service communication telemetry",
+ "x-ms-secret": true
+ },
+ "customDomainConfiguration": {
+ "$ref": "./CommonDefinitions.json#/definitions/CustomDomainConfiguration",
+ "description": "Custom domain configuration for the environment"
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ConnectedEnvironmentCollection": {
+ "description": "Collection of connectedEnvironments",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectedEnvironment"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsCertificates.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsCertificates.json
new file mode 100644
index 000000000000..895e962c8f06
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsCertificates.json
@@ -0,0 +1,315 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/certificates": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the Certificates in a given connected environment.",
+ "operationId": "ConnectedEnvironmentsCertificates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificateCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Certificates by Connected Environment": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/certificates/{certificateName}": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the specified Certificate.",
+ "operationId": "ConnectedEnvironmentsCertificates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificate_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Create or Update a Certificate.",
+ "operationId": "ConnectedEnvironmentsCertificates_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "description": "Certificate to be created or updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Deletes the specified Certificate.",
+ "operationId": "ConnectedEnvironmentsCertificates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Certificate does not exist"
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificate_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ConnectedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Update properties of a certificate",
+ "description": "Patches a certificate. Currently only patching of tags is supported",
+ "operationId": "ConnectedEnvironmentsCertificates_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Connected Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a certificate that need to be updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificatePatch"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Certificate updated successfully.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Certificate": {
+ "$ref": "./examples/ConnectedEnvironmentsCertificates_Patch.json"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsDaprComponents.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsDaprComponents.json
new file mode 100644
index 000000000000..fb6b10e4d0ed
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsDaprComponents.json
@@ -0,0 +1,307 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/daprComponents": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get the Dapr Components for a connected environment.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Dapr Components": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/daprComponents/{componentName}": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get a dapr component.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Dapr Component": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Creates or updates a Dapr Component.",
+ "description": "Creates or updates a Dapr Component in a connected environment.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "daprComponentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Dapr Component.",
+ "required": true,
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create or update dapr component": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Delete a Dapr Component.",
+ "description": "Delete a Dapr Component from a connected environment.",
+ "operationId": "ConnectedEnvironmentsDaprComponents_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Environment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete dapr component": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": false
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/daprComponents/{componentName}/listSecrets": {
+ "post": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "List secrets for a dapr component",
+ "operationId": "ConnectedEnvironmentsDaprComponents_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the connected environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprSecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Secrets": {
+ "$ref": "./examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsStorages.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsStorages.json
new file mode 100644
index 000000000000..e85c2daea101
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsStorages.json
@@ -0,0 +1,290 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/storages": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Get all storages for a connectedEnvironment.",
+ "description": "Get all storages for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStoragesCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/connectedEnvironments/{connectedEnvironmentName}/storages/{storageName}": {
+ "get": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Get storage for a connectedEnvironment.",
+ "description": "Get storage for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "get a environments storage properties by subscription": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Create or update storage for a connectedEnvironment.",
+ "description": "Create or update storage for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageEnvelope",
+ "in": "body",
+ "description": "Configuration details of storage.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update environments storage": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedEnvironmentsStorages"
+ ],
+ "summary": "Delete storage for a connectedEnvironment.",
+ "description": "Delete storage for a connectedEnvironment.",
+ "operationId": "ConnectedEnvironmentsStorages_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "connectedEnvironmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "Storage does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ConnectedEnvironmentsStorages_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConnectedEnvironmentStoragesCollection": {
+ "description": "Collection of Storage for Environments",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of storage resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectedEnvironmentStorage"
+ }
+ }
+ }
+ },
+ "ConnectedEnvironmentStorage": {
+ "description": "Storage resource for connectedEnvironment.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Storage properties",
+ "type": "object",
+ "properties": {
+ "azureFile": {
+ "$ref": "./CommonDefinitions.json#/definitions/AzureFileProperties",
+ "description": "Azure file properties"
+ }
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ContainerApps.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ContainerApps.json
new file mode 100644
index 000000000000..38b62dee7e09
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ContainerApps.json
@@ -0,0 +1,1363 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/containerApps": {
+ "get": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get the Container Apps in a given subscription.",
+ "operationId": "ContainerApps_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps by subscription": {
+ "$ref": "./examples/ContainerApps_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps": {
+ "get": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get the Container Apps in a given resource group.",
+ "operationId": "ContainerApps_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps by resource group": {
+ "$ref": "./examples/ContainerApps_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}": {
+ "get": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get the properties of a Container App.",
+ "operationId": "ContainerApps_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "404": {
+ "description": "Not found.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App": {
+ "$ref": "./examples/ContainerApps_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Create or update a Container App.",
+ "description": "Create or update a Container App.",
+ "operationId": "ContainerApps_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "containerAppEnvelope",
+ "in": "body",
+ "description": "Properties used to create a container app",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "No change performed on the Container App.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "201": {
+ "description": "Container App create or update has been started.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container App": {
+ "$ref": "./examples/ContainerApps_CreateOrUpdate.json"
+ },
+ "Create or Update Tcp App": {
+ "$ref": "./examples/ContainerApps_TcpApp_CreateOrUpdate.json"
+ },
+ "Create or Update ManagedBy App": {
+ "$ref": "./examples/ContainerApps_ManagedBy_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Delete a Container App.",
+ "description": "Delete a Container App.",
+ "operationId": "ContainerApps_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App deleted successfully."
+ },
+ "202": {
+ "description": "Delete operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "Container App does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container App": {
+ "$ref": "./examples/ContainerApps_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Update properties of a Container App",
+ "description": "Patches a Container App using JSON Merge Patch",
+ "operationId": "ContainerApps_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "containerAppEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a Container App that need to be updated",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "202": {
+ "description": "Patch operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Container App": {
+ "$ref": "./examples/ContainerApps_Patch.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/listCustomHostNameAnalysis": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Analyzes a custom hostname for a Container App",
+ "operationId": "ContainerApps_ListCustomHostNameAnalysis",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "customHostname",
+ "in": "query",
+ "description": "Custom hostname.",
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CustomHostnameAnalysisResult"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Analyze Custom Hostname": {
+ "$ref": "./examples/ContainerApps_ListCustomHostNameAnalysis.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/listSecrets": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "List secrets for a container app",
+ "operationId": "ContainerApps_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Secrets": {
+ "$ref": "./examples/ContainerApps_ListSecrets.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/getAuthtoken": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Get auth token for a container app",
+ "operationId": "ContainerApps_GetAuthToken",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppAuthToken"
+ }
+ },
+ "404": {
+ "description": "Not found.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App Auth Token": {
+ "$ref": "./examples/ContainerApps_GetAuthToken.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/start": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Start a container app",
+ "operationId": "ContainerApps_Start",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App started successfully.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "202": {
+ "description": "Start operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Start Container App": {
+ "$ref": "./examples/ContainerApps_Start.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/stop": {
+ "post": {
+ "tags": [
+ "ContainerApps"
+ ],
+ "summary": "Stop a container app",
+ "operationId": "ContainerApps_Stop",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App stopped successfully.",
+ "schema": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "202": {
+ "description": "Stop operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Stop Container App": {
+ "$ref": "./examples/ContainerApps_Stop.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Configuration": {
+ "description": "Non versioned Container App configuration properties that define the mutable settings of a Container app",
+ "type": "object",
+ "properties": {
+ "secrets": {
+ "description": "Collection of secrets used by a Container app",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "activeRevisionsMode": {
+ "description": "ActiveRevisionsMode controls how active revisions are handled for the Container app:\n- Multiple: multiple revisions can be active.
- Single: Only one revision can be active at a time. Revision weights can not be used in this mode. If no value if provided, this is the default.
",
+ "enum": [
+ "Multiple",
+ "Single"
+ ],
+ "type": "string",
+ "default": "Single",
+ "x-ms-enum": {
+ "name": "ActiveRevisionsMode",
+ "modelAsString": true
+ }
+ },
+ "ingress": {
+ "$ref": "#/definitions/Ingress",
+ "description": "Ingress configurations."
+ },
+ "registries": {
+ "description": "Collection of private container registry credentials for containers used by the Container app",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryCredentials"
+ },
+ "x-ms-identifiers": [
+ "server"
+ ]
+ },
+ "dapr": {
+ "$ref": "#/definitions/Dapr",
+ "description": "Dapr configuration for the Container App."
+ },
+ "maxInactiveRevisions": {
+ "format": "int32",
+ "description": "Optional. Max inactive revisions a Container App can have.",
+ "type": "integer"
+ },
+ "service": {
+ "$ref": "#/definitions/Service",
+ "description": "Container App to be a dev Container App Service"
+ }
+ }
+ },
+ "ContainerApp": {
+ "description": "Container App.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "./CommonDefinitions.json#/definitions/ExtendedLocation"
+ },
+ "identity": {
+ "description": "managed identities for the Container App to interact with other Azure services without maintaining any secrets or credentials in code.",
+ "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity"
+ },
+ "managedBy": {
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ],
+ "description": "The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource."
+ },
+ "properties": {
+ "description": "ContainerApp resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Container App.",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleting"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ContainerAppProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "managedEnvironmentId": {
+ "description": "Deprecated. Resource ID of the Container App's environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "environmentId": {
+ "description": "Resource ID of environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "workloadProfileName": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileName",
+ "description": "Workload profile name to pin for container app execution."
+ },
+ "latestRevisionName": {
+ "description": "Name of the latest revision of the Container App.",
+ "type": "string",
+ "readOnly": true
+ },
+ "latestReadyRevisionName": {
+ "description": "Name of the latest ready revision of the Container App.",
+ "type": "string",
+ "readOnly": true
+ },
+ "latestRevisionFqdn": {
+ "description": "Fully Qualified Domain Name of the latest revision of the Container App.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customDomainVerificationId": {
+ "description": "Id used to verify domain name ownership",
+ "type": "string",
+ "readOnly": true
+ },
+ "configuration": {
+ "$ref": "#/definitions/Configuration",
+ "description": "Non versioned Container App configuration properties."
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/Template",
+ "description": "Container App versioned application definition."
+ },
+ "outboundIpAddresses": {
+ "description": "Outbound IP Addresses for container app.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the container app.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ContainerAppCollection": {
+ "description": "Container App collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerApp"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Dapr": {
+ "description": "Container App Dapr configuration.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "description": "Boolean indicating if the Dapr side car is enabled",
+ "type": "boolean",
+ "default": false
+ },
+ "appId": {
+ "description": "Dapr application identifier",
+ "type": "string"
+ },
+ "appProtocol": {
+ "description": "Tells Dapr which protocol your application is using. Valid options are http and grpc. Default is http",
+ "enum": [
+ "http",
+ "grpc"
+ ],
+ "type": "string",
+ "default": "http",
+ "x-ms-enum": {
+ "name": "appProtocol",
+ "modelAsString": true
+ }
+ },
+ "appPort": {
+ "format": "int32",
+ "description": "Tells Dapr which port your application is listening on",
+ "type": "integer"
+ },
+ "httpReadBufferSize": {
+ "type": "integer",
+ "description": "Dapr max size of http header read buffer in KB to handle when sending multi-KB headers. Default is 65KB.",
+ "format": "int32"
+ },
+ "httpMaxRequestSize": {
+ "type": "integer",
+ "description": "Increasing max size of request body http and grpc servers parameter in MB to handle uploading of big files. Default is 4 MB.",
+ "format": "int32"
+ },
+ "logLevel": {
+ "description": "Sets the log level for the Dapr sidecar. Allowed values are debug, info, warn, error. Default is info.",
+ "enum": [
+ "info",
+ "debug",
+ "warn",
+ "error"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "logLevel",
+ "modelAsString": true
+ }
+ },
+ "enableApiLogging": {
+ "description": "Enables API logging for the Dapr sidecar",
+ "type": "boolean"
+ }
+ }
+ },
+ "Ingress": {
+ "description": "Container App Ingress configuration.",
+ "type": "object",
+ "properties": {
+ "fqdn": {
+ "description": "Hostname.",
+ "type": "string",
+ "readOnly": true
+ },
+ "external": {
+ "description": "Bool indicating if app exposes an external http endpoint",
+ "default": false,
+ "type": "boolean"
+ },
+ "targetPort": {
+ "format": "int32",
+ "description": "Target Port in containers for traffic from ingress",
+ "type": "integer"
+ },
+ "exposedPort": {
+ "format": "int32",
+ "description": "Exposed Port in containers for TCP traffic from ingress",
+ "type": "integer"
+ },
+ "transport": {
+ "description": "Ingress transport protocol",
+ "enum": [
+ "auto",
+ "http",
+ "http2",
+ "tcp"
+ ],
+ "type": "string",
+ "default": "auto",
+ "x-ms-enum": {
+ "name": "IngressTransportMethod",
+ "modelAsString": true
+ }
+ },
+ "traffic": {
+ "description": "Traffic weights for app's revisions",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TrafficWeight"
+ },
+ "x-ms-identifiers": [
+ "revisionName"
+ ]
+ },
+ "customDomains": {
+ "description": "custom domain bindings for Container Apps' hostnames.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CustomDomain"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "allowInsecure": {
+ "description": "Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically redirected to HTTPS connections",
+ "type": "boolean",
+ "default": false
+ },
+ "ipSecurityRestrictions": {
+ "description": "Rules to restrict incoming IP address.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IpSecurityRestrictionRule"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "stickySessions": {
+ "description": "Sticky Sessions for Single Revision Mode",
+ "type": "object",
+ "properties": {
+ "affinity": {
+ "description": "Sticky Session Affinity",
+ "enum": [
+ "sticky",
+ "none"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "affinity",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "clientCertificateMode": {
+ "description": "Client certificate mode for mTLS authentication. Ignore indicates server drops client certificate on forwarding. Accept indicates server forwards client certificate but does not require a client certificate. Require indicates server requires a client certificate.",
+ "enum": [
+ "ignore",
+ "accept",
+ "require"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "IngressClientCertificateMode",
+ "modelAsString": true
+ }
+ },
+ "corsPolicy": {
+ "description": "CORS policy for container app",
+ "$ref": "#/definitions/CorsPolicy"
+ }
+ }
+ },
+ "RegistryCredentials": {
+ "description": "Container App Private Registry",
+ "type": "object",
+ "properties": {
+ "server": {
+ "description": "Container Registry Server",
+ "type": "string"
+ },
+ "username": {
+ "description": "Container Registry Username",
+ "type": "string"
+ },
+ "passwordSecretRef": {
+ "description": "The name of the Secret that contains the registry login password",
+ "type": "string"
+ },
+ "identity": {
+ "description": "A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned identities, use the full user-assigned identity Resource ID. For system-assigned identities, use 'system'",
+ "type": "string"
+ }
+ }
+ },
+ "SecretsCollection": {
+ "description": "Container App Secrets Collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerAppSecret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ContainerAppSecret": {
+ "description": "Container App Secret.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Secret Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "Secret Value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ },
+ "identity": {
+ "description": "Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a system-assigned identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "keyVaultUrl": {
+ "description": "Azure Key Vault URL pointing to the secret referenced by the container app.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TrafficWeight": {
+ "description": "Traffic weight assigned to a revision",
+ "type": "object",
+ "properties": {
+ "revisionName": {
+ "description": "Name of a revision",
+ "type": "string"
+ },
+ "weight": {
+ "format": "int32",
+ "description": "Traffic weight assigned to a revision",
+ "type": "integer"
+ },
+ "latestRevision": {
+ "description": "Indicates that the traffic weight belongs to a latest stable revision",
+ "default": false,
+ "type": "boolean"
+ },
+ "label": {
+ "description": "Associates a traffic label with a revision",
+ "type": "string"
+ }
+ }
+ },
+ "CustomDomain": {
+ "description": "Custom Domain of a Container App",
+ "type": "object",
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "description": "Hostname.",
+ "type": "string"
+ },
+ "bindingType": {
+ "description": "Custom Domain binding type.",
+ "enum": [
+ "Disabled",
+ "SniEnabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "bindingType",
+ "modelAsString": true
+ }
+ },
+ "certificateId": {
+ "description": "Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.",
+ "type": "string"
+ }
+ }
+ },
+ "IpSecurityRestrictionRule": {
+ "description": "Rule to restrict incoming IP address.",
+ "type": "object",
+ "required": [
+ "name",
+ "ipAddressRange",
+ "action"
+ ],
+ "properties": {
+ "name": {
+ "description": "Name for the IP restriction rule.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Describe the IP restriction rule that is being sent to the container-app. This is an optional field.",
+ "type": "string"
+ },
+ "ipAddressRange": {
+ "description": "CIDR notation to match incoming IP address",
+ "type": "string"
+ },
+ "action": {
+ "description": "Allow or Deny rules to determine for incoming IP. Note: Rules can only consist of ALL Allow or ALL Deny",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "action",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CorsPolicy": {
+ "description": "Cross-Origin-Resource-Sharing policy",
+ "type": "object",
+ "required": [
+ "allowedOrigins"
+ ],
+ "properties": {
+ "allowedOrigins": {
+ "description": "Specifies the content for the access-control-allow-origins header",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "allowedMethods": {
+ "description": "Specifies the content for the access-control-allow-methods header",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "allowedHeaders": {
+ "description": "Specifies the content for the access-control-allow-headers header",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "exposeHeaders": {
+ "description": "Specifies the content for the access-control-expose-headers header ",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "maxAge": {
+ "format": "int32",
+ "description": "Specifies the content for the access-control-max-age header",
+ "type": "integer"
+ },
+ "allowCredentials": {
+ "description": "Specifies whether the resource allows credentials",
+ "type": "boolean"
+ }
+ }
+ },
+ "CustomHostnameAnalysisResult": {
+ "description": "Custom domain analysis.",
+ "type": "object",
+ "properties": {
+ "hostName": {
+ "description": "Host name that was analyzed",
+ "type": "string",
+ "readOnly": true
+ },
+ "isHostnameAlreadyVerified": {
+ "description": "true if hostname is already verified; otherwise, false.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "customDomainVerificationTest": {
+ "description": "DNS verification test result.",
+ "enum": [
+ "Passed",
+ "Failed",
+ "Skipped"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "DnsVerificationTestResult",
+ "modelAsString": false
+ }
+ },
+ "customDomainVerificationFailureInfo": {
+ "description": "Raw failure information if DNS verification fails.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "details": {
+ "type": "array",
+ "description": "Details or the error",
+ "items": {
+ "description": "Detailed errors.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Standardized string to programmatically identify the error.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Detailed error description and debugging information.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "x-ms-identifiers": [
+ "code"
+ ]
+ }
+ },
+ "readOnly": true
+ },
+ "hasConflictOnManagedEnvironment": {
+ "description": "true if there is a conflict on the Container App's managed environment; otherwise, false.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "conflictWithEnvironmentCustomDomain": {
+ "description": "true if there is a conflict on the Container App's managed environment level custom domain; otherwise, false.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "conflictingContainerAppResourceId": {
+ "description": "Name of the conflicting Container App on the Managed Environment if it's within the same subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "cNameRecords": {
+ "description": "CName records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "txtRecords": {
+ "description": "TXT records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "aRecords": {
+ "description": "A records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "alternateCNameRecords": {
+ "description": "Alternate CName records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "alternateTxtRecords": {
+ "description": "Alternate TXT records visible for this hostname.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ },
+ "ContainerAppAuthToken": {
+ "description": "Container App Auth Token.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Container App auth token resource specific properties",
+ "type": "object",
+ "properties": {
+ "token": {
+ "description": "Auth token value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ },
+ "expires": {
+ "format": "date-time",
+ "description": "Token expiration date.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "Service": {
+ "description": "Container App to be a dev service",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "description": "Dev ContainerApp service type",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ContainerAppsRevisions.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ContainerAppsRevisions.json
new file mode 100644
index 000000000000..f1ce9858b06f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ContainerAppsRevisions.json
@@ -0,0 +1,677 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Get the Revisions for a given Container App.",
+ "operationId": "ContainerAppsRevisions_ListRevisions",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App for which Revisions are needed.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply on the operation.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RevisionCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container App's revisions": {
+ "$ref": "./examples/Revisions_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-odata": "#/definitions/Revision"
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Get a revision of a Container App.",
+ "operationId": "ContainerAppsRevisions_GetRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Revision"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's revision": {
+ "$ref": "./examples/Revisions_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/activate": {
+ "post": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Activates a revision for a Container App",
+ "operationId": "ContainerAppsRevisions_ActivateRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App revision was activated"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Activate Container App's revision": {
+ "$ref": "./examples/Revisions_Activate.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/deactivate": {
+ "post": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Deactivates a revision for a Container App",
+ "operationId": "ContainerAppsRevisions_DeactivateRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App revision was deactivated"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Deactivate Container App's revision": {
+ "$ref": "./examples/Revisions_Deactivate.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/replicas/{replicaName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisionReplicas"
+ ],
+ "summary": "Get a replica for a Container App Revision.",
+ "operationId": "ContainerAppsRevisionReplicas_GetReplica",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "replicaName",
+ "in": "path",
+ "description": "Name of the Container App Revision Replica.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Replica"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's revision replica": {
+ "$ref": "./examples/Replicas_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/replicas": {
+ "get": {
+ "tags": [
+ "ContainerAppsRevisionReplicas"
+ ],
+ "summary": "List replicas for a Container App Revision.",
+ "operationId": "ContainerAppsRevisionReplicas_ListReplicas",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ReplicaCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container App's replicas": {
+ "$ref": "./examples/Replicas_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{revisionName}/restart": {
+ "post": {
+ "tags": [
+ "ContainerAppsRevisions"
+ ],
+ "summary": "Restarts a revision for a Container App",
+ "operationId": "ContainerAppsRevisions_RestartRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App revision was restarted"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Restart Container App's revision": {
+ "$ref": "./examples/Revisions_Restart.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Revision": {
+ "description": "Container App Revision.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Revision resource specific properties",
+ "type": "object",
+ "properties": {
+ "createdTime": {
+ "format": "date-time",
+ "description": "Timestamp describing when the revision was created\nby controller",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastActiveTime": {
+ "format": "date-time",
+ "description": "Timestamp describing when the revision was last active. Only meaningful when revision is inactive",
+ "type": "string",
+ "readOnly": true
+ },
+ "fqdn": {
+ "description": "Fully qualified domain name of the revision",
+ "type": "string",
+ "readOnly": true
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/Template",
+ "description": "Container App Revision Template with all possible settings and the\ndefaults if user did not provide them. The defaults are populated\nas they were at the creation time",
+ "readOnly": true
+ },
+ "active": {
+ "description": "Boolean describing if the Revision is Active",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "replicas": {
+ "format": "int32",
+ "description": "Number of pods currently running for this revision",
+ "type": "integer",
+ "readOnly": true
+ },
+ "trafficWeight": {
+ "format": "int32",
+ "description": "Traffic weight assigned to this revision",
+ "type": "integer",
+ "readOnly": true
+ },
+ "provisioningError": {
+ "description": "Optional Field - Platform Error Message",
+ "type": "string",
+ "readOnly": true
+ },
+ "healthState": {
+ "description": "Current health State of the revision",
+ "enum": [
+ "Healthy",
+ "Unhealthy",
+ "None"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RevisionHealthState",
+ "modelAsString": true
+ }
+ },
+ "provisioningState": {
+ "description": "Current provisioning State of the revision",
+ "enum": [
+ "Provisioning",
+ "Provisioned",
+ "Failed",
+ "Deprovisioning",
+ "Deprovisioned"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RevisionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "runningState": {
+ "description": "Current running state of the revision",
+ "enum": [
+ "Running",
+ "Processing",
+ "Stopped",
+ "Degraded",
+ "Failed",
+ "Unknown"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RevisionRunningState",
+ "modelAsString": true
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RevisionCollection": {
+ "description": "Container App Revisions collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Revision"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Replica": {
+ "description": "Container App Revision Replica.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Replica resource specific properties",
+ "type": "object",
+ "properties": {
+ "createdTime": {
+ "type": "string",
+ "description": "Timestamp describing when the pod was created by controller",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "runningState": {
+ "description": "Current running state of the replica",
+ "enum": [
+ "Running",
+ "NotRunning",
+ "Unknown"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ContainerAppReplicaRunningState",
+ "modelAsString": true
+ }
+ },
+ "runningStateDetails": {
+ "description": "The details of replica current running state",
+ "type": "string",
+ "readOnly": true
+ },
+ "containers": {
+ "description": "The containers collection under a replica.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ReplicaContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "initContainers": {
+ "description": "The init containers collection under a replica.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ReplicaContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ReplicaCollection": {
+ "description": "Container App Revision Replicas collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Replica"
+ }
+ }
+ }
+ },
+ "ReplicaContainer": {
+ "description": "Container object under Container App Revision Replica.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The Name of the Container",
+ "type": "string"
+ },
+ "containerId": {
+ "description": "The Id of the Container",
+ "type": "string"
+ },
+ "ready": {
+ "description": "The container ready status",
+ "type": "boolean"
+ },
+ "started": {
+ "description": "The container start status",
+ "type": "boolean"
+ },
+ "restartCount": {
+ "format": "int32",
+ "description": "The container restart count",
+ "type": "integer"
+ },
+ "runningState": {
+ "description": "Current running state of the container",
+ "enum": [
+ "Running",
+ "Terminated",
+ "Waiting"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ContainerAppContainerRunningState",
+ "modelAsString": true
+ }
+ },
+ "runningStateDetails": {
+ "description": "The details of container current running state",
+ "type": "string",
+ "readOnly": true
+ },
+ "logStreamEndpoint": {
+ "description": "Log Stream endpoint",
+ "type": "string",
+ "readOnly": true
+ },
+ "execEndpoint": {
+ "description": "Container exec endpoint",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Diagnostics.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Diagnostics.json
new file mode 100644
index 000000000000..a3dbdf7cc2de
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Diagnostics.json
@@ -0,0 +1,715 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectors": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get the list of diagnostics for a given Container App.",
+ "operationId": "ContainerAppsDiagnostics_ListDetectors",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App for which detector info is needed.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiagnosticsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get the list of available diagnostics for a given Container App": {
+ "$ref": "./examples/ContainerAppsDiagnostics_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectors/{detectorName}": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get a diagnostics result of a Container App.",
+ "operationId": "ContainerAppsDiagnostics_GetDetector",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "detectorName",
+ "in": "path",
+ "description": "Name of the Container App Detector.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Diagnostics"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's diagnostics info": {
+ "$ref": "./examples/ContainerAppsDiagnostics_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectorProperties/revisionsApi/revisions/": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get the Revisions for a given Container App.",
+ "operationId": "ContainerAppsDiagnostics_ListRevisions",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App for which Revisions are needed.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply on the operation.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./ContainerAppsRevisions.json#/definitions/RevisionCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container App's revisions": {
+ "$ref": "./examples/Revisions_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-odata": "#/definitions/Revision"
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectorProperties/revisionsApi/revisions/{revisionName}": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get a revision of a Container App.",
+ "operationId": "ContainerAppsDiagnostics_GetRevision",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "revisionName",
+ "in": "path",
+ "description": "Name of the Container App Revision.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./ContainerAppsRevisions.json#/definitions/Revision"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's revision": {
+ "$ref": "./examples/Revisions_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/detectorProperties/rootApi/": {
+ "get": {
+ "tags": [
+ "ContainerApps",
+ "Diagnostics"
+ ],
+ "summary": "Get the properties of a Container App.",
+ "operationId": "ContainerAppsDiagnostics_GetRoot",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "./ContainerApps.json#/definitions/ContainerApp"
+ }
+ },
+ "404": {
+ "description": "Not found.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App": {
+ "$ref": "./examples/ContainerApps_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/detectors": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Diagnostics"
+ ],
+ "summary": "Get the list of diagnostics for a given Managed Environment.",
+ "description": "Get the list of diagnostics for a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironmentDiagnostics_ListDetectors",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiagnosticsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get the list of available diagnostic data for a managed environments": {
+ "$ref": "./examples/ManagedEnvironmentDiagnostics_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/detectors/{detectorName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Diagnostics"
+ ],
+ "summary": "Get the diagnostics data for a given Managed Environment.",
+ "description": "Get the diagnostics data for a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironmentDiagnostics_GetDetector",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "detectorName",
+ "in": "path",
+ "description": "Name of the Managed Environment detector.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Diagnostics"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get diagnostic data for a managed environments": {
+ "$ref": "./examples/ManagedEnvironmentDiagnostics_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/detectorProperties/rootApi/": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Diagnostics"
+ ],
+ "summary": "Get the properties of a Managed Environment.",
+ "description": "Get the properties of a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironmentsDiagnostics_GetRoot",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./ManagedEnvironments.json#/definitions/ManagedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get environments by name": {
+ "$ref": "./examples/ManagedEnvironments_Get.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DiagnosticsCollection": {
+ "description": "Diagnostics data collection for a resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of diagnostic data.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Diagnostics"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Diagnostics": {
+ "description": "Diagnostics data for a resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Diagnostics resource specific properties",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "$ref": "#/definitions/DiagnosticsDefinition",
+ "description": "Metadata of the diagnostics response."
+ },
+ "dataset": {
+ "description": "Set of data collections associated with the response.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiagnosticsDataApiResponse"
+ },
+ "x-ms-identifiers": []
+ },
+ "status": {
+ "$ref": "#/definitions/DiagnosticsStatus",
+ "description": "Status of the diagnostics response."
+ },
+ "dataProviderMetadata": {
+ "$ref": "#/definitions/DiagnosticDataProviderMetadata",
+ "description": "List of data providers' metadata."
+ }
+ }
+ }
+ }
+ },
+ "DiagnosticsDefinition": {
+ "description": "Metadata of the diagnostics response",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Unique detector name",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Display Name of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "Details of the diagnostics info",
+ "type": "string",
+ "readOnly": true
+ },
+ "author": {
+ "description": "Authors' names of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "category": {
+ "description": "Category of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "supportTopicList": {
+ "description": "List of support topics",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiagnosticSupportTopic"
+ }
+ },
+ "analysisTypes": {
+ "description": "List of analysis types",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "type": {
+ "description": "Authors' names of the detector",
+ "type": "string",
+ "readOnly": true
+ },
+ "score": {
+ "description": "Authors' names of the detector",
+ "type": "number",
+ "readOnly": true
+ }
+ }
+ },
+ "DiagnosticSupportTopic": {
+ "description": "Support topic information",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Unique topic identifier",
+ "type": "string",
+ "readOnly": true
+ },
+ "pesId": {
+ "description": "PES identifier",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DiagnosticsDataApiResponse": {
+ "description": "Diagnostics data returned from a detector",
+ "type": "object",
+ "properties": {
+ "table": {
+ "description": "Table response",
+ "$ref": "#/definitions/DiagnosticDataTableResponseObject"
+ },
+ "renderingProperties": {
+ "description": "Details of the table response",
+ "$ref": "#/definitions/DiagnosticRendering"
+ }
+ }
+ },
+ "DiagnosticDataTableResponseObject": {
+ "description": "Diagnostics data table",
+ "type": "object",
+ "properties": {
+ "tableName": {
+ "description": "Table name",
+ "type": "string"
+ },
+ "columns": {
+ "description": "Columns in the table",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiagnosticDataTableResponseColumn"
+ },
+ "x-ms-identifiers": [
+ "columnName"
+ ]
+ },
+ "rows": {
+ "description": "Rows in the table",
+ "type": "array",
+ "items": {
+ "type": "object"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "DiagnosticDataTableResponseColumn": {
+ "description": "Diagnostics data column",
+ "type": "object",
+ "properties": {
+ "columnName": {
+ "description": "Column name",
+ "type": "string"
+ },
+ "dataType": {
+ "description": "Data type of the column",
+ "type": "string"
+ },
+ "columnType": {
+ "description": "Column type",
+ "type": "string"
+ }
+ }
+ },
+ "DiagnosticRendering": {
+ "description": "Rendering details of a diagnostics table",
+ "type": "object",
+ "properties": {
+ "type": {
+ "format": "int32",
+ "description": "Rendering type",
+ "type": "integer"
+ },
+ "title": {
+ "description": "Title of the table",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the table",
+ "type": "string"
+ },
+ "isVisible": {
+ "description": "Flag if the table should be rendered",
+ "type": "boolean"
+ }
+ }
+ },
+ "DiagnosticsStatus": {
+ "description": "Rendering details of a diagnostics table",
+ "type": "object",
+ "properties": {
+ "message": {
+ "description": "Diagnostic message",
+ "type": "string"
+ },
+ "statusId": {
+ "format": "int32",
+ "description": "Status",
+ "type": "integer"
+ }
+ }
+ },
+ "DiagnosticDataProviderMetadata": {
+ "description": "Details of a diagnostics data provider",
+ "type": "object",
+ "properties": {
+ "providerName": {
+ "description": "Name of data provider",
+ "type": "string"
+ },
+ "propertyBag": {
+ "description": "Collection of properties",
+ "type": "array",
+ "items": {
+ "description": "Property details",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Property name",
+ "type": "string"
+ },
+ "value": {
+ "description": "Property value",
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Global.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Global.json
new file mode 100644
index 000000000000..df7bfdbf61a0
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Global.json
@@ -0,0 +1,140 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/providers/Microsoft.App/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "Lists all of the available RP 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": "#/definitions/AvailableOperations"
+ }
+ },
+ "default": {
+ "description": "Resource Provider error response describing why the operation failed.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List all operations": {
+ "$ref": "./examples/Operations_List.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AvailableOperations": {
+ "description": "Available operations of the service",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of available operation details",
+ "uniqueItems": false,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationDetail"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "nextLink": {
+ "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDetail": {
+ "description": "Operation detail payload",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the operation",
+ "type": "string"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is a data action",
+ "type": "boolean"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplay",
+ "description": "Display of the operation"
+ },
+ "origin": {
+ "description": "Origin of the operation",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDisplay": {
+ "description": "Operation display payload",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Resource provider of the operation",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Resource of the operation",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Localized friendly name for the operation",
+ "type": "string"
+ },
+ "description": {
+ "description": "Localized friendly description for the operation",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Jobs.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Jobs.json
new file mode 100644
index 000000000000..c728acac1f2d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/Jobs.json
@@ -0,0 +1,1192 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/jobs": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get the Container Apps Jobs in a given subscription.",
+ "operationId": "Jobs_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobsCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Jobs by subscription": {
+ "$ref": "./examples/Jobs_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get the Container Apps Jobs in a given resource group.",
+ "operationId": "Jobs_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Jobs by resource group": {
+ "$ref": "./examples/Jobs_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get the properties of a Container Apps Job.",
+ "operationId": "Jobs_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container Apps Job": {
+ "$ref": "./examples/Job_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Create or Update a Container Apps Job.",
+ "description": "Create or Update a Container Apps Job.",
+ "operationId": "Jobs_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "name": "JobEnvelope",
+ "in": "body",
+ "description": "Properties used to create a container apps job",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Container Apps Job create has been started.",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "200": {
+ "description": "No change performed on the Container Apps Job.",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container Apps Job": {
+ "$ref": "./examples/Job_CreateorUpdate.json"
+ },
+ "Create or Update Container Apps Job With Event Driven Trigger": {
+ "$ref": "./examples/Job_CreateorUpdate_EventTrigger.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Delete a Container Apps Job.",
+ "description": "Delete a Container Apps Job.",
+ "operationId": "Jobs_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container Apps Job deleted successfully."
+ },
+ "202": {
+ "description": "Delete operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "Container Apps Job does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container Apps Job": {
+ "$ref": "./examples/Job_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Update properties of a Container Apps Job",
+ "description": "Patches a Container Apps Job using JSON Merge Patch",
+ "operationId": "Jobs_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "name": "JobEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties used to create a container apps job",
+ "schema": {
+ "$ref": "#/definitions/JobPatchProperties"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "202": {
+ "description": "Patch operation is in progress.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Container Apps Job": {
+ "$ref": "./examples/Job_Patch.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/start": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Start a Container Apps Job",
+ "operationId": "Jobs_Start",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "name": "template",
+ "in": "body",
+ "description": "Properties used to start a job execution.",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/JobExecutionTemplate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobExecutionBase"
+ }
+ },
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Run a Container Apps Job": {
+ "$ref": "./examples/Job_Start.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/executions/{jobExecutionName}/stop": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Terminates execution of a running container apps job",
+ "operationId": "Jobs_StopExecution",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobExecutionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container Apps Jobs terminated successfully."
+ },
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Terminate a Container Apps Job": {
+ "$ref": "./examples/Job_Stop_Execution.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/stop": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Terminates execution of a running container apps job",
+ "operationId": "Jobs_StopMultipleExecutions",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of all the job executions that were requested to be stopped",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppJobExecutions"
+ }
+ },
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Terminate Multiple Container Apps Job": {
+ "$ref": "./examples/Job_Stop_Multiple.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/executions": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get a Container Apps Job's executions",
+ "operationId": "JobsExecutions_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "description": "The filter to apply on the operation.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ContainerAppJobExecutions"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Container Apps Job Executions": {
+ "$ref": "./examples/Job_Executions_Get.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/executions/{jobExecutionName}": {
+ "get": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "Get details of a single job execution",
+ "operationId": "JobExecution",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ },
+ {
+ "$ref": "#/parameters/JobExecutionNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobExecution"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a single Job Execution": {
+ "$ref": "./examples/Job_Execution_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}/listSecrets": {
+ "post": {
+ "tags": [
+ "Jobs"
+ ],
+ "summary": "List secrets for a container apps job",
+ "operationId": "Jobs_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/JobNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobSecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Job Secrets": {
+ "$ref": "./examples/Job_ListSecrets.json"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "JobNameParameter": {
+ "name": "jobName",
+ "in": "path",
+ "description": "Job Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$",
+ "x-ms-parameter-location": "method"
+ },
+ "JobExecutionNameParameter": {
+ "name": "jobExecutionName",
+ "in": "path",
+ "description": "Job execution name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._\\(\\)]+$",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "JobConfiguration": {
+ "description": "Non versioned Container Apps Job configuration properties",
+ "type": "object",
+ "required": [
+ "replicaTimeout",
+ "triggerType"
+ ],
+ "properties": {
+ "secrets": {
+ "description": "Collection of secrets used by a Container Apps Job",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "triggerType": {
+ "description": "Trigger type of the job",
+ "enum": [
+ "Schedule",
+ "Event",
+ "Manual"
+ ],
+ "type": "string",
+ "default": "Manual",
+ "x-ms-enum": {
+ "name": "TriggerType",
+ "modelAsString": true
+ }
+ },
+ "replicaTimeout": {
+ "description": "Maximum number of seconds a replica is allowed to run.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "replicaRetryLimit": {
+ "format": "int32",
+ "description": "Maximum number of retries before failing the job.",
+ "type": "integer"
+ },
+ "manualTriggerConfig": {
+ "type": "object",
+ "description": "Manual trigger configuration for a single execution job. Properties replicaCompletionCount and parallelism would be set to 1 by default",
+ "properties": {
+ "replicaCompletionCount": {
+ "$ref": "#/definitions/ReplicaCompletionCount"
+ },
+ "parallelism": {
+ "$ref": "#/definitions/Parallelism"
+ }
+ }
+ },
+ "scheduleTriggerConfig": {
+ "description": "Cron formatted repeating trigger schedule (\"* * * * *\") for cronjobs. Properties completions and parallelism would be set to 1 by default",
+ "required": [
+ "cronExpression"
+ ],
+ "type": "object",
+ "properties": {
+ "replicaCompletionCount": {
+ "$ref": "#/definitions/ReplicaCompletionCount"
+ },
+ "cronExpression": {
+ "description": "Cron formatted repeating schedule (\"* * * * *\") of a Cron Job.",
+ "type": "string"
+ },
+ "parallelism": {
+ "$ref": "#/definitions/Parallelism"
+ }
+ }
+ },
+ "eventTriggerConfig": {
+ "type": "object",
+ "description": "Trigger configuration of an event driven job.",
+ "properties": {
+ "replicaCompletionCount": {
+ "$ref": "#/definitions/ReplicaCompletionCount"
+ },
+ "parallelism": {
+ "$ref": "#/definitions/Parallelism"
+ },
+ "scale": {
+ "$ref": "#/definitions/JobScale"
+ }
+ }
+ },
+ "registries": {
+ "description": "Collection of private container registry credentials used by a Container apps job",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryCredentials"
+ },
+ "x-ms-identifiers": [
+ "server"
+ ]
+ }
+ }
+ },
+ "Job": {
+ "type": "object",
+ "description": "Container App Job",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "identity": {
+ "description": "Managed identities needed by a container app job to interact with other Azure services to not maintain any secrets or credentials in code.",
+ "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity"
+ },
+ "properties": {
+ "description": "Container Apps Job resource specific properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Container Apps Job.",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleting"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "JobProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "environmentId": {
+ "description": "Resource ID of environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "workloadProfileName": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileName",
+ "description": "Workload profile name to pin for container apps job execution."
+ },
+ "configuration": {
+ "$ref": "#/definitions/JobConfiguration",
+ "description": "Container Apps Job configuration properties."
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/JobTemplate",
+ "description": "Container Apps job definition."
+ },
+ "outboundIpAddresses": {
+ "description": "Outbound IP Addresses of a container apps job.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the container apps job.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "JobPatchProperties": {
+ "type": "object",
+ "description": "Container Apps Job resource specific properties.",
+ "properties": {
+ "identity": {
+ "description": "Managed identities needed by a container app job to interact with other Azure services to not maintain any secrets or credentials in code.",
+ "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ],
+ "description": "Resource tags."
+ },
+ "properties": {
+ "type": "object",
+ "properties": {
+ "environmentId": {
+ "description": "Resource ID of environment.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read",
+ "update"
+ ]
+ },
+ "configuration": {
+ "$ref": "#/definitions/JobConfiguration",
+ "description": "Container Apps Job configuration properties."
+ },
+ "template": {
+ "$ref": "./CommonDefinitions.json#/definitions/JobTemplate",
+ "description": "Container Apps job definition."
+ },
+ "outboundIpAddresses": {
+ "description": "Outbound IP Addresses of a container apps job.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the container apps job.",
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "JobsCollection": {
+ "description": "Container Apps Jobs collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RegistryCredentials": {
+ "description": "Container App Private Registry",
+ "type": "object",
+ "properties": {
+ "server": {
+ "description": "Container Registry Server",
+ "type": "string"
+ },
+ "username": {
+ "description": "Container Registry Username",
+ "type": "string"
+ },
+ "passwordSecretRef": {
+ "description": "The name of the Secret that contains the registry login password",
+ "type": "string"
+ },
+ "identity": {
+ "description": "A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned identities, use the full user-assigned identity Resource ID. For system-assigned identities, use 'system'",
+ "type": "string"
+ }
+ }
+ },
+ "JobSecretsCollection": {
+ "description": "Container Apps Job Secrets Collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/Secret"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ReplicaCompletionCount": {
+ "description": "Minimum number of successful replica completions before overall job completion.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "Parallelism": {
+ "description": "Number of parallel replicas of a job that can run at a given time.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "PollingInterval": {
+ "description": "Interval to check each event source in seconds. Defaults to 30s",
+ "format": "int32",
+ "type": "integer"
+ },
+ "JobScaleRule": {
+ "description": "Scaling rule.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Scale Rule Name",
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of the scale rule\neg: azure-servicebus, redis etc.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata properties to describe the scale rule.",
+ "type": "object"
+ },
+ "auth": {
+ "description": "Authentication secrets for the scale rule.",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/ScaleRuleAuth"
+ }
+ }
+ }
+ },
+ "JobScale": {
+ "description": "Scaling configurations for event driven jobs.",
+ "type": "object",
+ "properties": {
+ "pollingInterval": {
+ "$ref": "#/definitions/PollingInterval"
+ },
+ "minExecutions": {
+ "format": "int32",
+ "description": "Minimum number of job executions that are created for a trigger, default 0",
+ "type": "integer",
+ "default": 0
+ },
+ "maxExecutions": {
+ "format": "int32",
+ "description": "Maximum number of job executions that are created for a trigger, default 100.",
+ "type": "integer",
+ "default": 100
+ },
+ "rules": {
+ "description": "Scaling rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobScaleRule"
+ }
+ }
+ }
+ },
+ "JobExecutionBase": {
+ "description": "Container App's Job execution name.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Job execution name.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Job execution Id.",
+ "type": "string"
+ }
+ }
+ },
+ "JobExecution": {
+ "description": "Container Apps Job execution.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Job execution Name.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Job execution Id.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Job Type.",
+ "type": "string"
+ },
+ "status": {
+ "description": "Current running State of the job",
+ "enum": [
+ "Running",
+ "Processing",
+ "Stopped",
+ "Degraded",
+ "Failed",
+ "Unknown",
+ "Succeeded"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "JobExecutionRunningState",
+ "modelAsString": true
+ }
+ },
+ "startTime": {
+ "description": "Job execution start time.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "endTime": {
+ "description": "Job execution end time.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "template": {
+ "description": "Job's execution container.",
+ "$ref": "#/definitions/JobExecutionTemplate"
+ }
+ }
+ },
+ "ContainerAppJobExecutions": {
+ "description": "Container App executions collection ARM resource.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecution"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "JobExecutionNamesCollection": {
+ "description": "Container App executions names list.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecutionBase"
+ }
+ }
+ }
+ },
+ "JobExecutionTemplate": {
+ "description": "Job's execution template, containing container configuration for a job's execution",
+ "type": "object",
+ "properties": {
+ "containers": {
+ "description": "List of container definitions for the Container Apps Job.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecutionContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "initContainers": {
+ "description": "List of specialized containers that run before job containers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobExecutionContainer"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "JobExecutionContainer": {
+ "description": "Container Apps Jobs execution container definition.",
+ "type": "object",
+ "properties": {
+ "image": {
+ "description": "Container image tag.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Custom container name.",
+ "type": "string"
+ },
+ "command": {
+ "description": "Container start command.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "args": {
+ "description": "Container start command arguments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "env": {
+ "description": "Container environment variables.",
+ "type": "array",
+ "items": {
+ "$ref": "./CommonDefinitions.json#/definitions/EnvironmentVar"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "resources": {
+ "$ref": "./CommonDefinitions.json#/definitions/ContainerResources",
+ "description": "Container resource requirements."
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironments.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironments.json
new file mode 100644
index 000000000000..7500c645c107
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironments.json
@@ -0,0 +1,1438 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.App/managedEnvironments": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get all Environments for a subscription.",
+ "description": "Get all Managed Environments for a subscription.",
+ "operationId": "ManagedEnvironments_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by subscription": {
+ "$ref": "./examples/ManagedEnvironments_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get all the Environments in a resource group.",
+ "description": "Get all the Managed Environments in a resource group.",
+ "operationId": "ManagedEnvironments_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by resource group": {
+ "$ref": "./examples/ManagedEnvironments_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get the properties of a Managed Environment.",
+ "description": "Get the properties of a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironments_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get environments by name": {
+ "$ref": "./examples/ManagedEnvironments_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Creates or updates a Managed Environment.",
+ "description": "Creates or updates a Managed Environment used to host container apps.",
+ "operationId": "ManagedEnvironments_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "environmentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Environment.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create environments": {
+ "$ref": "./examples/ManagedEnvironments_CreateOrUpdate.json"
+ },
+ "Create environment with custom infrastructureResourceGroup": {
+ "$ref": "./examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Delete a Managed Environment.",
+ "description": "Delete a Managed Environment if it does not have any container apps.",
+ "operationId": "ManagedEnvironments_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "202": {
+ "description": "Delete operation is in progress"
+ },
+ "204": {
+ "description": "Environment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete environment by name": {
+ "$ref": "./examples/ManagedEnvironments_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Update Managed Environment's properties.",
+ "description": "Patches a Managed Environment using JSON Merge Patch",
+ "operationId": "ManagedEnvironments_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "environmentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Environment.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "202": {
+ "description": "Patch operation is in progress."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Managed Environment": {
+ "$ref": "./examples/ManagedEnvironments_Patch.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/certificates": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the Certificates in a given managed environment.",
+ "operationId": "Certificates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificateCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Certificates by Managed Environment": {
+ "$ref": "./examples/Certificates_ListByManagedEnvironment.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/certificates/{certificateName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Get the specified Certificate.",
+ "operationId": "Certificates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Certificate": {
+ "$ref": "./examples/Certificate_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Create or Update a Certificate.",
+ "operationId": "Certificates_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "description": "Certificate to be created or updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Certificate": {
+ "$ref": "./examples/Certificate_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Deletes the specified Certificate.",
+ "operationId": "Certificates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Certificate does not exist"
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Certificate": {
+ "$ref": "./examples/Certificate_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedEnvironments",
+ "Certificates"
+ ],
+ "summary": "Update properties of a certificate",
+ "description": "Patches a certificate. Currently only patching of tags is supported",
+ "operationId": "Certificates_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Name of the Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a certificate that need to be updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/CertificatePatch"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Certificate updated successfully.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/Certificate"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Certificate": {
+ "$ref": "./examples/Certificates_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/managedCertificates/{managedCertificateName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Get the specified Managed Certificate.",
+ "operationId": "ManagedCertificates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Certificate": {
+ "$ref": "./examples/ManagedCertificate_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Create or Update a Managed Certificate.",
+ "operationId": "ManagedCertificates_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateEnvelope",
+ "in": "body",
+ "description": "Managed Certificate to be created or updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "400": {
+ "description": "Bad Request.",
+ "x-ms-error-response": true
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "Create or Update Certificate": {
+ "$ref": "./examples/ManagedCertificate_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Deletes the specified Managed Certificate.",
+ "operationId": "ManagedCertificates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Certificate does not exist"
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Certificate": {
+ "$ref": "./examples/ManagedCertificate_Delete.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Update tags of a managed certificate",
+ "description": "Patches a managed certificate. Oly patching of tags is supported",
+ "operationId": "ManagedCertificates_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateName",
+ "in": "path",
+ "description": "Name of the Managed Certificate.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "managedCertificateEnvelope",
+ "in": "body",
+ "required": true,
+ "description": "Properties of a managed certificate that need to be updated",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificatePatch"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Managed Certificate updated successfully.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificate"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Managed Certificate": {
+ "$ref": "./examples/ManagedCertificates_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/managedCertificates": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments",
+ "ManagedCertificates"
+ ],
+ "summary": "Get the Managed Certificates in a given managed environment.",
+ "operationId": "ManagedCertificates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/ManagedCertificateCollection"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Managed Certificates by Managed Environment": {
+ "$ref": "./examples/ManagedCertificates_ListByManagedEnvironment.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Checks the resource name availability.",
+ "description": "Checks if resource name is available.",
+ "operationId": "Namespaces_CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "checkNameAvailabilityRequest",
+ "in": "body",
+ "description": "The check name availability request.",
+ "required": true,
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ContainerApps_CheckNameAvailability": {
+ "$ref": "./examples/ContainerApps_CheckNameAvailability.json"
+ },
+ "Certificates_CheckNameAvailability": {
+ "$ref": "./examples/Certificates_CheckNameAvailability.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/getAuthtoken": {
+ "post": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get auth token for a managed environment",
+ "description": "Checks if resource name is available.",
+ "operationId": "ManagedEnvironments_GetAuthToken",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EnvironmentAuthToken"
+ }
+ },
+ "default": {
+ "description": "Error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Environment Auth Token": {
+ "$ref": "./examples/ManagedEnvironments_GetAuthToken.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/workloadProfileStates": {
+ "get": {
+ "tags": [
+ "ManagedEnvironments"
+ ],
+ "summary": "Get all workload Profile States for a Managed Environment..",
+ "description": "Get all workload Profile States for a Managed Environment.",
+ "operationId": "ManagedEnvironments_ListWorkloadProfileStates",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/workloadProfileStatesCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List environments by subscription": {
+ "$ref": "./examples/ManagedEnvironments_ListWorkloadProfileStates.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AppLogsConfiguration": {
+ "description": "Configuration of application logs",
+ "type": "object",
+ "properties": {
+ "destination": {
+ "description": "Logs destination, can be 'log-analytics', 'azure-monitor' or 'none'",
+ "type": "string"
+ },
+ "logAnalyticsConfiguration": {
+ "description": "Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'",
+ "$ref": "#/definitions/LogAnalyticsConfiguration"
+ }
+ }
+ },
+ "KedaConfiguration": {
+ "type": "object",
+ "description": "Configuration properties Keda component",
+ "properties": {
+ "version": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The version of Keda"
+ }
+ }
+ },
+ "DaprConfiguration": {
+ "type": "object",
+ "description": "Configuration properties Dapr component",
+ "properties": {
+ "version": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The version of Dapr"
+ }
+ }
+ },
+ "VnetConfiguration": {
+ "type": "object",
+ "description": "Configuration properties for apps environment to join a Virtual Network",
+ "properties": {
+ "internal": {
+ "type": "boolean",
+ "description": "Boolean indicating the environment only has an internal load balancer. These environments do not have a public static IP resource. They must provide infrastructureSubnetId if enabling this property",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "infrastructureSubnetId": {
+ "type": "string",
+ "description": "Resource ID of a subnet for infrastructure components. Must not overlap with any other provided IP ranges.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "dockerBridgeCidr": {
+ "type": "string",
+ "description": "CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other provided IP ranges.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "platformReservedCidr": {
+ "type": "string",
+ "description": "IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must not overlap with any other provided IP ranges.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "platformReservedDnsIP": {
+ "type": "string",
+ "description": " An IP address from the IP range defined by platformReservedCidr that will be reserved for the internal DNS server.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ }
+ }
+ },
+ "Mtls": {
+ "type": "object",
+ "description": "Configuration properties for mutual TLS authentication",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Boolean indicating whether the mutual TLS authentication is enabled"
+ }
+ }
+ },
+ "ManagedEnvironment": {
+ "description": "An environment for hosting container apps",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "type": "string",
+ "description": "Kind of the Environment."
+ },
+ "properties": {
+ "description": "Managed environment resource specific properties",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Environment.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Waiting",
+ "InitializationInProgress",
+ "InfrastructureSetupInProgress",
+ "InfrastructureSetupComplete",
+ "ScheduledForDelete",
+ "UpgradeRequested",
+ "UpgradeFailed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "EnvironmentProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "daprAIInstrumentationKey": {
+ "type": "string",
+ "description": "Azure Monitor instrumentation key used by Dapr to export Service to Service communication telemetry",
+ "x-ms-secret": true
+ },
+ "daprAIConnectionString": {
+ "type": "string",
+ "description": "Application Insights connection string used by Dapr to export Service to Service communication telemetry",
+ "x-ms-secret": true
+ },
+ "vnetConfiguration": {
+ "description": "Vnet configuration for the environment",
+ "$ref": "#/definitions/VnetConfiguration"
+ },
+ "deploymentErrors": {
+ "description": "Any errors that occurred during deployment or deployment validation",
+ "type": "string",
+ "readOnly": true
+ },
+ "defaultDomain": {
+ "description": "Default Domain Name for the cluster",
+ "type": "string",
+ "readOnly": true
+ },
+ "staticIp": {
+ "description": "Static IP of the Environment",
+ "type": "string",
+ "readOnly": true
+ },
+ "appLogsConfiguration": {
+ "$ref": "#/definitions/AppLogsConfiguration",
+ "description": "Cluster configuration which enables the log daemon to export\napp logs to a destination. Currently only \"log-analytics\" is\nsupported"
+ },
+ "zoneRedundant": {
+ "description": "Whether or not this Managed Environment is zone-redundant.",
+ "type": "boolean",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "customDomainConfiguration": {
+ "$ref": "./CommonDefinitions.json#/definitions/CustomDomainConfiguration",
+ "description": "Custom domain configuration for the environment"
+ },
+ "eventStreamEndpoint": {
+ "description": "The endpoint of the eventstream of the Environment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "workloadProfiles": {
+ "description": "Workload profiles configured for the Managed Environment.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WorkloadProfile"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "kedaConfiguration": {
+ "$ref": "#/definitions/KedaConfiguration",
+ "description": "The configuration of Keda component."
+ },
+ "daprConfiguration": {
+ "$ref": "#/definitions/DaprConfiguration",
+ "description": "The configuration of Dapr component."
+ },
+ "infrastructureResourceGroup": {
+ "description": "Name of the platform-managed resource group created for the Managed Environment to host infrastructure resources. If a subnet ID is provided, this resource group will be created in the same subscription as the subnet.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "peerAuthentication": {
+ "description": "Peer authentication settings for the Managed Environment",
+ "type": "object",
+ "properties": {
+ "mtls": {
+ "description": "Mutual TLS authentication settings for the Managed Environment",
+ "$ref": "#/definitions/Mtls"
+ }
+ }
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ManagedEnvironmentsCollection": {
+ "description": "Collection of Environments",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedEnvironment"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "LogAnalyticsConfiguration": {
+ "description": "Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'",
+ "type": "object",
+ "properties": {
+ "customerId": {
+ "description": "Log analytics customer id",
+ "type": "string"
+ },
+ "sharedKey": {
+ "description": "Log analytics customer key",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "EnvironmentAuthToken": {
+ "description": "Environment Auth Token.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Environment auth token resource specific properties",
+ "type": "object",
+ "properties": {
+ "token": {
+ "description": "Auth token value.",
+ "type": "string",
+ "x-ms-secret": true,
+ "readOnly": true
+ },
+ "expires": {
+ "format": "date-time",
+ "description": "Token expiration date.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WorkloadProfile": {
+ "description": "Workload profile to scope container app execution.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileName",
+ "description": "Workload profile type for the workloads to run on."
+ },
+ "workloadProfileType": {
+ "$ref": "./CommonDefinitions.json#/definitions/WorkloadProfileType",
+ "description": "Workload profile type for the workloads to run on."
+ },
+ "minimumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The minimum capacity."
+ },
+ "maximumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum capacity."
+ }
+ },
+ "required": [
+ "name",
+ "workloadProfileType"
+ ]
+ },
+ "workloadProfileStates": {
+ "description": "Collection of all the workload Profile States for a Managed Environment..",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Workload Profile resource specific properties.",
+ "type": "object",
+ "properties": {
+ "minimumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Minimum count of instances."
+ },
+ "maximumCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum count of nodes."
+ },
+ "currentCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Current count of nodes."
+ }
+ }
+ }
+ }
+ },
+ "workloadProfileStatesCollection": {
+ "description": "Collection of workloadProfileStates",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/workloadProfileStates"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironmentsDaprComponents.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironmentsDaprComponents.json
new file mode 100644
index 000000000000..0840aa667463
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironmentsDaprComponents.json
@@ -0,0 +1,313 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/daprComponents": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get the Dapr Components for a managed environment.",
+ "operationId": "DaprComponents_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponentsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Dapr Components": {
+ "$ref": "./examples/DaprComponents_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/daprComponents/{componentName}": {
+ "get": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Get a dapr component.",
+ "operationId": "DaprComponents_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Dapr Component with secrets": {
+ "$ref": "./examples/DaprComponents_Get_Secrets.json"
+ },
+ "Get Dapr Component with secret store component": {
+ "$ref": "./examples/DaprComponents_Get_SecretStoreComponent.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Creates or updates a Dapr Component.",
+ "description": "Creates or updates a Dapr Component in a Managed Environment.",
+ "operationId": "DaprComponents_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "daprComponentEnvelope",
+ "in": "body",
+ "description": "Configuration details of the Dapr Component.",
+ "required": true,
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprComponent"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create or update dapr component with secrets": {
+ "$ref": "./examples/DaprComponents_CreateOrUpdate_Secrets.json"
+ },
+ "Create or update dapr component with secret store component": {
+ "$ref": "./examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "Delete a Dapr Component.",
+ "description": "Delete a Dapr Component from a Managed Environment.",
+ "operationId": "DaprComponents_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Delete operation completed"
+ },
+ "204": {
+ "description": "Environment does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete dapr component": {
+ "$ref": "./examples/DaprComponents_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": false
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/daprComponents/{componentName}/listSecrets": {
+ "post": {
+ "tags": [
+ "DaprComponents"
+ ],
+ "summary": "List secrets for a dapr component",
+ "operationId": "DaprComponents_ListSecrets",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Managed Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "componentName",
+ "in": "path",
+ "description": "Name of the Dapr Component.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DaprSecretsCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Container Apps Secrets": {
+ "$ref": "./examples/DaprComponents_ListSecrets.json"
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironmentsStorages.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironmentsStorages.json
new file mode 100644
index 000000000000..94c262a23f7e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/ManagedEnvironmentsStorages.json
@@ -0,0 +1,290 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API Client"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/storages": {
+ "get": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Get all storages for a managedEnvironment.",
+ "description": "Get all storages for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStoragesCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}/storages/{storageName}": {
+ "get": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Get storage for a managedEnvironment.",
+ "description": "Get storage for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "get a environments storage properties by subscription": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Create or update storage for a managedEnvironment.",
+ "description": "Create or update storage for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageEnvelope",
+ "in": "body",
+ "description": "Configuration details of storage.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update environments storage": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedEnvironmentsStorages"
+ ],
+ "summary": "Delete storage for a managedEnvironment.",
+ "description": "Delete storage for a managedEnvironment.",
+ "operationId": "ManagedEnvironmentsStorages_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "environmentName",
+ "in": "path",
+ "description": "Name of the Environment.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "storageName",
+ "in": "path",
+ "description": "Name of the storage.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "Storage does not exist"
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List environments storages by subscription": {
+ "$ref": "./examples/ManagedEnvironmentsStorages_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ManagedEnvironmentStoragesCollection": {
+ "description": "Collection of Storage for Environments",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of storage resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedEnvironmentStorage"
+ }
+ }
+ }
+ },
+ "ManagedEnvironmentStorage": {
+ "description": "Storage resource for managedEnvironment.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Storage properties",
+ "type": "object",
+ "properties": {
+ "azureFile": {
+ "$ref": "./CommonDefinitions.json#/definitions/AzureFileProperties",
+ "description": "Azure file properties"
+ }
+ }
+ }
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/SourceControls.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/SourceControls.json
new file mode 100644
index 000000000000..99542d45ab75
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/SourceControls.json
@@ -0,0 +1,446 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-05-01",
+ "title": "ContainerApps API 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/Microsoft.App/containerApps/{containerAppName}/sourcecontrols": {
+ "get": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Get the Container App SourceControls in a given resource group.",
+ "operationId": "ContainerAppsSourceControls_ListByContainerApp",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControlCollection"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List App's Source Controls": {
+ "$ref": "./examples/SourceControls_ListByContainer.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/sourcecontrols/{sourceControlName}": {
+ "get": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Get a SourceControl of a Container App.",
+ "operationId": "ContainerAppsSourceControls_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlName",
+ "in": "path",
+ "description": "Name of the Container App SourceControl.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container App's SourceControl": {
+ "$ref": "./examples/SourceControls_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Create or update the SourceControl for a Container App.",
+ "description": "Create or update the SourceControl for a Container App.",
+ "operationId": "ContainerAppsSourceControls_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlName",
+ "in": "path",
+ "description": "Name of the Container App SourceControl.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlEnvelope",
+ "in": "body",
+ "description": "Properties used to create a Container App SourceControl",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update Container App SourceControl": {
+ "$ref": "./examples/SourceControls_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "tags": [
+ "ContainerAppsSourceControls"
+ ],
+ "summary": "Delete a Container App SourceControl.",
+ "description": "Delete a Container App SourceControl.",
+ "operationId": "ContainerAppsSourceControls_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "containerAppName",
+ "in": "path",
+ "description": "Name of the Container App.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sourceControlName",
+ "in": "path",
+ "description": "Name of the Container App SourceControl.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Container App SourceControl deleted successfully."
+ },
+ "202": {
+ "description": "Delete operation is in progress."
+ },
+ "204": {
+ "description": "Container App SourceControl does not exist."
+ },
+ "default": {
+ "description": "Common error response.",
+ "schema": {
+ "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Container App SourceControl": {
+ "$ref": "./examples/SourceControls_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "SourceControl": {
+ "description": "Container App SourceControl.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "SourceControl resource specific properties",
+ "type": "object",
+ "properties": {
+ "operationState": {
+ "description": "Current provisioning State of the operation",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "SourceControlOperationState",
+ "modelAsString": true
+ }
+ },
+ "repoUrl": {
+ "description": "The repo url which will be integrated to ContainerApp.",
+ "type": "string"
+ },
+ "branch": {
+ "description": "The branch which will trigger the auto deployment",
+ "type": "string"
+ },
+ "githubActionConfiguration": {
+ "$ref": "#/definitions/GithubActionConfiguration",
+ "description": "Container App Revision Template with all possible settings and the\ndefaults if user did not provide them. The defaults are populated\nas they were at the creation time"
+ }
+ },
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "GithubActionConfiguration": {
+ "description": "Configuration properties that define the mutable settings of a Container App SourceControl",
+ "type": "object",
+ "properties": {
+ "registryInfo": {
+ "$ref": "#/definitions/RegistryInfo",
+ "description": "Registry configurations."
+ },
+ "azureCredentials": {
+ "$ref": "#/definitions/AzureCredentials",
+ "description": "AzureCredentials configurations."
+ },
+ "contextPath": {
+ "description": "Context path",
+ "type": "string"
+ },
+ "githubPersonalAccessToken": {
+ "description": "One time Github PAT to configure github environment",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "image": {
+ "description": "Image name",
+ "type": "string"
+ },
+ "publishType": {
+ "description": "Code or Image",
+ "type": "string"
+ },
+ "os": {
+ "description": "Operation system",
+ "type": "string"
+ },
+ "runtimeStack": {
+ "description": "Runtime stack",
+ "type": "string"
+ },
+ "runtimeVersion": {
+ "description": "Runtime version",
+ "type": "string"
+ }
+ }
+ },
+ "RegistryInfo": {
+ "description": "Container App registry information.",
+ "type": "object",
+ "properties": {
+ "registryUrl": {
+ "description": "registry server Url.",
+ "type": "string"
+ },
+ "registryUserName": {
+ "description": "registry username.",
+ "type": "string"
+ },
+ "registryPassword": {
+ "description": "registry secret.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "AzureCredentials": {
+ "description": "Container App credentials.",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "Client Id.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "clientSecret": {
+ "description": "Client Secret.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "tenantId": {
+ "description": "Tenant Id.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "kind": {
+ "description": "Kind of auth github does for deploying the template",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "subscriptionId": {
+ "description": "Subscription Id.",
+ "type": "string"
+ }
+ }
+ },
+ "SourceControlCollection": {
+ "description": "SourceControl collection ARM resource.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_CreateOrUpdate.json
new file mode 100644
index 000000000000..b67ddc1244c5
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_CreateOrUpdate.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "authConfigName": "current",
+ "api-version": "2023-05-01",
+ "authConfigEnvelope": {
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/authconfigs/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/authconfigs",
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_Delete.json
new file mode 100644
index 000000000000..fb12301eaddb
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "authConfigName": "current",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_Get.json
new file mode 100644
index 000000000000..c39056838cc9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_Get.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "authConfigName": "current",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/authconfigs/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/authconfigs",
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_ListByContainer.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_ListByContainer.json
new file mode 100644
index 000000000000..a26fcc9bbddc
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AuthConfigs_ListByContainer.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/authconfigs/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/authconfigs",
+ "properties": {
+ "platform": {
+ "enabled": true
+ },
+ "globalValidation": {
+ "unauthenticatedClientAction": "AllowAnonymous"
+ },
+ "identityProviders": {
+ "facebook": {
+ "registration": {
+ "appId": "123",
+ "appSecretSettingName": "facebook-secret"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AvailableWorkloadProfiles_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AvailableWorkloadProfiles_Get.json
new file mode 100644
index 000000000000..63d6858a5540
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/AvailableWorkloadProfiles_Get.json
@@ -0,0 +1,145 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "location": "East US",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-D4",
+ "category": "General purpose D-series",
+ "applicability": "LocationDefault",
+ "cores": 4,
+ "memoryGiB": 16
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-D4",
+ "name": "Dedicated-D4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-D8",
+ "category": "General purpose D-series",
+ "applicability": "Custom",
+ "cores": 8,
+ "memoryGiB": 32
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-D8",
+ "name": "Dedicated-D4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-D16",
+ "category": "General purpose D-series",
+ "applicability": "Custom",
+ "cores": 16,
+ "memoryGiB": 64
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-D16",
+ "name": "Dedicated-D16",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-E4",
+ "category": "Memory optimized E-series",
+ "applicability": "Custom",
+ "cores": 4,
+ "memoryGiB": 32
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-E4",
+ "name": "Dedicated-E4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-E8",
+ "category": "Memory optimized E-series",
+ "applicability": "Custom",
+ "cores": 8,
+ "memoryGiB": 64
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-E8",
+ "name": "Dedicated-E8",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-E16",
+ "category": "Memory optimized E-series",
+ "applicability": "Custom",
+ "cores": 16,
+ "memoryGiB": 128
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-E16",
+ "name": "Dedicated-E16",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-F4",
+ "category": "Compute optimized F-series",
+ "applicability": "Custom",
+ "cores": 4,
+ "memoryGiB": 8
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-F4",
+ "name": "Dedicated-F4",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-F8",
+ "category": "Compute optimized F-series",
+ "applicability": "Custom",
+ "cores": 8,
+ "memoryGiB": 16
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-F8",
+ "name": "Dedicated-F8",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Dedicated-F16",
+ "category": "Compute optimized F-series",
+ "applicability": "Custom",
+ "cores": 16,
+ "memoryGiB": 32
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Dedicated-F16",
+ "name": "Dedicated-F16",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "displayName": "Consumption",
+ "category": "Consumption",
+ "applicability": "Custom",
+ "cores": 3,
+ "memoryGiB": 3
+ },
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes/Consumption",
+ "name": "Consumption",
+ "type": "Microsoft.App/availableManagedEnvironmentsWorkloadProfileTypes"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/BillingMeters_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/BillingMeters_Get.json
new file mode 100644
index 000000000000..e4b16b84ad3e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/BillingMeters_Get.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "location": "East US",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "East US",
+ "properties": {
+ "category": "General purpose D-series",
+ "meterType": "CPU",
+ "displayName": "General Purpose Cores per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/GeneralPurposeDseriesCPU",
+ "name": "GeneralPurposeDseriesCPU",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "General purpose D-series",
+ "meterType": "Memory",
+ "displayName": "General Purpose Memory GiB per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/GeneralPurposeDseriesMemory",
+ "name": "GeneralPurposeDseriesMemory",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Memory optimized E-series",
+ "meterType": "CPU",
+ "displayName": "Memory Optimized Cores per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/MemoryOptimizedEseriesCPU",
+ "name": "MemoryOptimizedEseriesCPU",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Memory optimized E-series",
+ "meterType": "Memory",
+ "displayName": "Memory Optimized Memory GiB per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/MemoryOptimizedEseriesMemory",
+ "name": "MemoryOptimizedEseriesMemory",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Compute optimized F-series",
+ "meterType": "CPU",
+ "displayName": "Compute Optimized Cores per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/ComputeOptimizedFseriesCPU",
+ "name": "ComputeOptimizedFseriesCPU",
+ "type": "Microsoft.App/billingMeters"
+ },
+ {
+ "location": "East US",
+ "properties": {
+ "category": "Compute optimized F-series",
+ "meterType": "Memory",
+ "displayName": "Compute Optimized Memory GiB per Second"
+ },
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/GeneralComputeMemory",
+ "name": "GeneralComputeMemory",
+ "type": "Microsoft.App/billingMeters"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_CreateOrUpdate.json
new file mode 100644
index 000000000000..9881a09758a9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_CreateOrUpdate.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01",
+ "certificateEnvelope": {
+ "location": "East US",
+ "properties": {
+ "password": "private key password",
+ "value": "Y2VydA=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_Delete.json
new file mode 100644
index 000000000000..fc5a50777e37
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_Get.json
new file mode 100644
index 000000000000..c989916f508e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificate_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_CheckNameAvailability.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_CheckNameAvailability.json
new file mode 100644
index 000000000000..38ec5273ee79
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_CheckNameAvailability.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-05-01",
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "checkNameAvailabilityRequest": {
+ "name": "testcertificatename",
+ "type": "Microsoft.App/managedEnvironments/certificates"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true,
+ "reason": "None",
+ "message": ""
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_ListByManagedEnvironment.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_ListByManagedEnvironment.json
new file mode 100644
index 000000000000..185036c8ec9c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_ListByManagedEnvironment.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_Patch.json
new file mode 100644
index 000000000000..cb5d6a7228d3
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Certificates_Patch.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01",
+ "certificateEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/Certificates",
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json
new file mode 100644
index 000000000000..29bc19400d79
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_CreateOrUpdate.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01",
+ "certificateEnvelope": {
+ "location": "East US",
+ "properties": {
+ "password": "private key password",
+ "value": "Y2VydA=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_Delete.json
new file mode 100644
index 000000000000..fc6551787f29
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_Get.json
new file mode 100644
index 000000000000..4e1a9128a5c3
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificate_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json
new file mode 100644
index 000000000000..19cfed48319f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_CheckNameAvailability.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-05-01",
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "checkNameAvailabilityRequest": {
+ "name": "testcertificatename",
+ "type": "Microsoft.App/connectedEnvironments/certificates"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true,
+ "reason": "None",
+ "message": ""
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json
new file mode 100644
index 000000000000..b24c5334a7b7
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_ListByConnectedEnvironment.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "name": "certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_Patch.json
new file mode 100644
index 000000000000..48dc0bb38637
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsCertificates_Patch.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testcontainerenv",
+ "certificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01",
+ "certificateEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testcontainerenv/certificate-firendly-name",
+ "type": "Microsoft.App/ConnectedEnvironments/Certificates",
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "subjectName": "my-subject-name.company.country.net",
+ "subjectAlternativeNames": [
+ "CN=my-subject-name.com"
+ ],
+ "issuer": "Issuer Name",
+ "issueDate": "2021-11-06T04:00:00Z",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT",
+ "valid": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json
new file mode 100644
index 000000000000..fc703bbd7bd6
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_CreateOrUpdate.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01",
+ "daprComponentEnvelope": {
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey",
+ "value": "keyvalue"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/connectedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_Delete.json
new file mode 100644
index 000000000000..5e6914275997
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_Get.json
new file mode 100644
index 000000000000..eb9a20755e8a
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_Get.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/connectedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_List.json
new file mode 100644
index 000000000000..ccadb705bb38
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_List.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/myenvironment/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/connectedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json
new file mode 100644
index 000000000000..dc616b9eb951
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsDaprComponents_ListSecrets.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1",
+ "value": "value1"
+ },
+ {
+ "name": "secret2",
+ "value": "value2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json
new file mode 100644
index 000000000000..b07bf70375fd
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_CreateOrUpdate.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "env",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-01",
+ "storageEnvelope": {
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "accountKey": "key",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/env/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/connectedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_Delete.json
new file mode 100644
index 000000000000..00935096f7bb
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "env",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_Get.json
new file mode 100644
index 000000000000..2f63fc00cbf8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_Get.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "env",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/env/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/connectedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_List.json
new file mode 100644
index 000000000000..b6f0ae1f3c35
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironmentsStorages_List.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "managedEnv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/connectedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_CreateOrUpdate.json
new file mode 100644
index 000000000000..16710e33d7a9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_CreateOrUpdate.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testenv",
+ "api-version": "2023-05-01",
+ "kind": "kubernetes",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "staticIp": "1.2.3.4",
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "private key password"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Waiting",
+ "deploymentErrors": null,
+ "defaultDomain": "testenv.k4apps.io",
+ "staticIp": "1.2.3.4"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Delete.json
new file mode 100644
index 000000000000..0560bc6369a1
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Delete.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "examplekenv",
+ "api-version": "2023-05-01",
+ "kind": "kubernetes",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/localtions/eastus/operationResults/00000"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Get.json
new file mode 100644
index 000000000000..8642e9ed07d9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Get.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "examplekenv",
+ "api-version": "2023-05-01",
+ "kind": "kubernetes",
+ "location": "East US",
+ "extendedLocation": {
+ "name": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/kubeEnvironments/examplekenv",
+ "name": "examplekenv",
+ "type": "Microsoft.App/kubeEnvironments",
+ "location": "North Central US",
+ "extendedLocation": {
+ "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "examplekenv.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_ListByResourceGroup.json
new file mode 100644
index 000000000000..9073b94344f9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_ListByResourceGroup.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/sample1",
+ "name": "sample1",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "extendedLocation": {
+ "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/sample2",
+ "name": "sample2",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "extendedLocation": {
+ "name": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.ExtendedLocation/customLocations/testcustomlocation",
+ "type": "CustomLocation"
+ },
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample2.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_ListBySubscription.json
new file mode 100644
index 000000000000..4c02eab13957
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_ListBySubscription.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/sample1",
+ "name": "sample1",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/DemoRG/providers/Microsoft.App/connectedEnvironments/sample2",
+ "name": "sample2",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "sample2.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Patch.json
new file mode 100644
index 000000000000..9fe398d14278
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ConnectedEnvironments_Patch.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "connectedEnvironmentName": "testenv",
+ "api-version": "2023-05-01",
+ "location": "East US",
+ "environmentEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/connectedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/connectedEnvironments",
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testenv.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerAppsDiagnostics_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerAppsDiagnostics_Get.json
new file mode 100644
index 000000000000..d717eb863054
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerAppsDiagnostics_Get.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "containerAppName": "mikono-capp-stage1",
+ "detectorName": "cappcontainerappnetworkIO",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/containerApps/mikono-capp-stage1/detectors/cappcontainerappnetworkIO",
+ "name": "cappcontainerappnetworkIO",
+ "type": "Microsoft.App/containerapps/detectors",
+ "properties": {
+ "metadata": {
+ "id": "cappcontainerappnetworkIO",
+ "name": "Container App Network Inbound and Outbound",
+ "description": "This detector shows the Container App Network Inbound and Outbound.",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Detector",
+ "score": 0
+ },
+ "dataset": [
+ {
+ "table": {
+ "tableName": "",
+ "columns": [
+ {
+ "columnName": "TimeStamp",
+ "dataType": "DateTime"
+ },
+ {
+ "columnName": "Metric",
+ "dataType": "String"
+ },
+ {
+ "columnName": "Average",
+ "dataType": "Double"
+ }
+ ],
+ "rows": [
+ [
+ "2022-03-15T21:35:00",
+ "RxBytes",
+ 0
+ ]
+ ]
+ },
+ "renderingProperties": {
+ "type": 8,
+ "title": "Container Apps Network Inbound ",
+ "description": "",
+ "isVisible": true
+ }
+ }
+ ],
+ "status": {
+ "statusId": 3
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerAppsDiagnostics_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerAppsDiagnostics_List.json
new file mode 100644
index 000000000000..6063a8dfabdf
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerAppsDiagnostics_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "containerAppName": "mikono-capp-stage1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/containerApps/mikono-capp-stage1/detectors/cappContainerAppAvailabilityMetrics",
+ "name": "cappContainerAppAvailabilityMetrics",
+ "type": "Microsoft.App/containerapps/detectors",
+ "properties": {
+ "metadata": {
+ "id": "cappContainerAppAvailabilityMetrics",
+ "name": "Availability Metrics for Container Apps",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Analysis",
+ "score": 0
+ },
+ "dataset": [],
+ "status": {
+ "statusId": 4
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_CheckNameAvailability.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_CheckNameAvailability.json
new file mode 100644
index 000000000000..2cb0f7b0bc7a
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_CheckNameAvailability.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-05-01",
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "checkNameAvailabilityRequest": {
+ "name": "testcappname",
+ "type": "Microsoft.App/containerApps"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true,
+ "reason": "None",
+ "message": ""
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_CreateOrUpdate.json
new file mode 100644
index 000000000000..92e74a04234f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_CreateOrUpdate.json
@@ -0,0 +1,387 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-01",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my-other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerApp0-ab1234",
+ "label": "production"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ },
+ "clientCertificateMode": "accept",
+ "corsPolicy": {
+ "allowedOrigins": [
+ "https://a.test.com",
+ "https://b.test.com"
+ ],
+ "allowedMethods": [
+ "GET",
+ "POST"
+ ],
+ "allowedHeaders": [
+ "HEADER1",
+ "HEADER2"
+ ],
+ "exposeHeaders": [
+ "HEADER3",
+ "HEADER4"
+ ],
+ "maxAge": 1234,
+ "allowCredentials": true
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v1",
+ "name": "testcontainerApp0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "custom": {
+ "type": "http",
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/redisService",
+ "name": "redisService"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my-other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "201": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Delete.json
new file mode 100644
index 000000000000..b50692d1b5f7
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testWorkerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/containerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Get.json
new file mode 100644
index 000000000000..a31d926bf214
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Get.json
@@ -0,0 +1,131 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/service",
+ "name": "service"
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "404": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_GetAuthToken.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_GetAuthToken.json
new file mode 100644
index 000000000000..0db007427f53
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_GetAuthToken.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps/accesstoken",
+ "location": "East US",
+ "properties": {
+ "token": "testToken",
+ "expires": "2022-07-14T19:22:50.3080223Z"
+ }
+ }
+ },
+ "404": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListByResourceGroup.json
new file mode 100644
index 000000000000..f08db7684e34
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListByResourceGroup.json
@@ -0,0 +1,125 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListBySubscription.json
new file mode 100644
index 000000000000..6266f1dad74c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListBySubscription.json
@@ -0,0 +1,133 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/service",
+ "name": "service"
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListCustomHostNameAnalysis.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListCustomHostNameAnalysis.json
new file mode 100644
index 000000000000..8174af49e7c4
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListCustomHostNameAnalysis.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "customHostname": "my.name.corp",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hostName": "my.name.corp",
+ "isHostnameAlreadyVerified": true,
+ "customDomainVerificationTest": "Passed",
+ "customDomainVerificationFailureInfo": {},
+ "hasConflictOnManagedEnvironment": false,
+ "conflictingContainerAppResourceId": "",
+ "cNameRecords": [
+ "cNameRecord1",
+ "cNameRecord2"
+ ],
+ "txtRecords": [
+ "txtRecord1",
+ "txtRecord2"
+ ],
+ "aRecords": [
+ "aRecord1",
+ "aRecord2"
+ ],
+ "alternateCNameRecords": [
+ "cNameRecord1",
+ "cNameRecord2"
+ ],
+ "alternateTxtRecords": [
+ "txtRecord1",
+ "txtRecord2"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListSecrets.json
new file mode 100644
index 000000000000..5d3f1ad8880a
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ListSecrets.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1"
+ },
+ {
+ "name": "secret2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ManagedBy_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ManagedBy_CreateOrUpdate.json
new file mode 100644
index 000000000000..ed5d9bd5645e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_ManagedBy_CreateOrUpdate.json
@@ -0,0 +1,204 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerAppManagedBy",
+ "api-version": "2023-05-01",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "managedBy": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppPlatform/Spring/springapp",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerAppManagedBy-ab1234"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppManagedBy:v1",
+ "name": "testcontainerAppManagedBy",
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppManagedBy",
+ "name": "testcontainerAppManagedBy",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "managedBy": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppPlatform/Spring/springapp",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppManagedBy-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerAppManagedBy-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppManagedBy.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppManagedBy-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppManagedBy-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppManagedBy:v4",
+ "name": "testcontainerAppManagedBy",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppManagedBy",
+ "name": "testcontainerAppManagedBy",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "managedBy": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppPlatform/Spring/springapp",
+ "properties": {
+ "provisioningState": "InProgress",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppManagedBy-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppManagedBy.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppManagedBy-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppManagedBy-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppManagedBy:v4",
+ "name": "testcontainerAppManagedBy",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Patch.json
new file mode 100644
index 000000000000..db4665e2815e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Patch.json
@@ -0,0 +1,243 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-01",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my-other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerApp0-ab1234",
+ "label": "production"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ],
+ "stickySessions": {
+ "affinity": "sticky"
+ }
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10,
+ "service": {
+ "type": "redis"
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v1",
+ "name": "testcontainerApp0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "custom": {
+ "type": "http",
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ },
+ "serviceBinds": [
+ {
+ "serviceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/service",
+ "name": "service"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/locations/eastus/containerappOperationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Start.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Start.json
new file mode 100644
index 000000000000..81390010e202
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Start.json
@@ -0,0 +1,123 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testWorkerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/containerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Stop.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Stop.json
new file mode 100644
index 000000000000..81390010e202
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_Stop.json
@@ -0,0 +1,123 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testWorkerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0",
+ "name": "testcontainerApp0",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "workloadProfileName": "My-GP-01",
+ "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerApp0-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "transport": "auto",
+ "customDomains": [
+ {
+ "name": "www.my-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-name-dot-com"
+ },
+ {
+ "name": "www.my--other-name.com",
+ "bindingType": "SniEnabled",
+ "certificateId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube/certificates/my-certificate-for-my-other-name-dot-com"
+ }
+ ],
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerApp0-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerApp0-ab4321",
+ "label": "staging"
+ }
+ ],
+ "ipSecurityRestrictions": [
+ {
+ "name": "Allow work IP A subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/32",
+ "action": "Allow"
+ },
+ {
+ "name": "Allow work IP B subnet",
+ "description": "Allowing all IP's within the subnet below to access containerapp",
+ "ipAddressRange": "192.168.1.1/8",
+ "action": "Allow"
+ }
+ ]
+ },
+ "dapr": {
+ "enabled": true,
+ "appPort": 3000,
+ "appProtocol": "http",
+ "httpReadBufferSize": 30,
+ "httpMaxRequestSize": 10,
+ "logLevel": "debug",
+ "enableApiLogging": true
+ },
+ "maxInactiveRevisions": 10
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerApp0:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/containerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_TcpApp_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_TcpApp_CreateOrUpdate.json
new file mode 100644
index 000000000000..905b6fe89d07
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ContainerApps_TcpApp_CreateOrUpdate.json
@@ -0,0 +1,201 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerAppTcp",
+ "api-version": "2023-05-01",
+ "containerAppEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "ingress": {
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 100,
+ "revisionName": "testcontainerAppTcp-ab1234"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppTcp:v1",
+ "name": "testcontainerAppTcp",
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppTcp",
+ "name": "testcontainerAppTcp",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppTcp-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "latestReadyRevisionName": "testcontainerAppTcp-pjxhsye",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppTcp.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppTcp-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppTcp-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppTcp:v4",
+ "name": "testcontainerAppTcp",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerAppTcp",
+ "name": "testcontainerAppTcp",
+ "type": "Microsoft.App/containerApps",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "latestRevisionFqdn": "testcontainerAppTcp-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "configuration": {
+ "ingress": {
+ "fqdn": "testcontainerAppTcp.demokube-t24clv0g.eastus.containerApps.k4apps.io",
+ "external": true,
+ "targetPort": 3000,
+ "exposedPort": 4000,
+ "transport": "tcp",
+ "traffic": [
+ {
+ "weight": 80,
+ "revisionName": "testcontainerAppTcp-ab1234"
+ },
+ {
+ "weight": 20,
+ "revisionName": "testcontainerAppTcp-ab4321"
+ }
+ ]
+ }
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppTcp:v4",
+ "name": "testcontainerAppTcp",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "tcpSocket": {
+ "port": 8080
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "tcpscalingrule",
+ "tcp": {
+ "metadata": {
+ "concurrentConnections": "50"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json
new file mode 100644
index 000000000000..e44a4552c20f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_CreateOrUpdate_SecretStoreComponent.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01",
+ "daprComponentEnvelope": {
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_CreateOrUpdate_Secrets.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_CreateOrUpdate_Secrets.json
new file mode 100644
index 000000000000..7679336013ce
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_CreateOrUpdate_Secrets.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01",
+ "daprComponentEnvelope": {
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey",
+ "value": "keyvalue"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Delete.json
new file mode 100644
index 000000000000..b3ee833b656d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Get_SecretStoreComponent.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Get_SecretStoreComponent.json
new file mode 100644
index 000000000000..3a950e764cc6
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Get_SecretStoreComponent.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Get_Secrets.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Get_Secrets.json
new file mode 100644
index 000000000000..9b9f2a911bd9
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_Get_Secrets.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_List.json
new file mode 100644
index 000000000000..d17b5c654c26
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_List.json
@@ -0,0 +1,122 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/myenvironment/daprcomponents/reddog",
+ "name": "reddog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secrets": [
+ {
+ "name": "masterkey"
+ }
+ ],
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/myenvironment/daprcomponents/vaultdog",
+ "name": "vaultdog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "value": ""
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/myenvironment/daprcomponents/vaultdog",
+ "name": "vaultdog",
+ "type": "Microsoft.App/managedEnvironments/daprcomponents",
+ "properties": {
+ "componentType": "state.azure.cosmosdb",
+ "version": "v1",
+ "ignoreErrors": false,
+ "initTimeout": "50s",
+ "secretStoreComponent": "my-secret-store",
+ "metadata": [
+ {
+ "name": "url",
+ "secretRef": "cosmosdb/url"
+ },
+ {
+ "name": "database",
+ "value": "itemsDB"
+ },
+ {
+ "name": "collection",
+ "value": "items"
+ },
+ {
+ "name": "masterkey",
+ "secretRef": "cosmosdb/masterkey"
+ }
+ ],
+ "scopes": [
+ "container-app-1",
+ "container-app-2"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_ListSecrets.json
new file mode 100644
index 000000000000..9986e78a4382
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/DaprComponents_ListSecrets.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "myenvironment",
+ "componentName": "reddog",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1"
+ },
+ {
+ "name": "secret2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_CreateorUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_CreateorUpdate.json
new file mode 100644
index 000000000000..8c8e105e1a47
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_CreateorUpdate.json
@@ -0,0 +1,207 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-01",
+ "JobEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v1",
+ "name": "testcontainerAppsJob0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 5,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Location": "location"
+ },
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_CreateorUpdate_EventTrigger.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_CreateorUpdate_EventTrigger.json
new file mode 100644
index 000000000000..b131b7520f40
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_CreateorUpdate_EventTrigger.json
@@ -0,0 +1,199 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-01",
+ "JobEnvelope": {
+ "location": "East US",
+ "properties": {
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "eventTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4,
+ "scale": {
+ "pollingInterval": 40,
+ "minExecutions": 1,
+ "maxExecutions": 5,
+ "rules": [
+ {
+ "name": "servicebuscalingrule",
+ "type": "azure-servicebus",
+ "metadata": {
+ "topicName": "my-topic"
+ }
+ }
+ ]
+ }
+ },
+ "triggerType": "Event"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v1",
+ "name": "testcontainerAppsJob0"
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "eventTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4,
+ "scale": {
+ "pollingInterval": 20,
+ "minExecutions": 1,
+ "maxExecutions": 5,
+ "rules": [
+ {
+ "name": "githubscalingrule",
+ "type": "github-runner",
+ "metadata": {
+ "githubAPIURL": "https://api.github.com"
+ }
+ }
+ ]
+ }
+ },
+ "triggerType": "Event"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Location": "location"
+ },
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InProgress",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "eventTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4,
+ "scale": {
+ "minExecutions": 1,
+ "maxExecutions": 5,
+ "pollingInterval": 20,
+ "rules": [
+ {
+ "name": "servicebuscalingrule",
+ "type": "azure-servicebus",
+ "metadata": {
+ "queueName": "my-queue",
+ "messageCount": "50"
+ }
+ }
+ ]
+ }
+ },
+ "triggerType": "Event"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "eventStreamEndpoint": "testEndpoint"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Delete.json
new file mode 100644
index 000000000000..4dd3b30c50da
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testWorkerContainerAppsJob0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/jobs/testWorkerContainerAppsJob0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Execution_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Execution_Get.json
new file mode 100644
index 000000000000..5a96d6477d85
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Execution_Get.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "jobExecutionName": "jobExecution1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "name": "jobExecution1",
+ "status": "Running",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Executions_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Executions_Get.json
new file mode 100644
index 000000000000..bd48031206da
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Executions_Get.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "testcontainerAppJob-27944454",
+ "status": "Running",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Get.json
new file mode 100644
index 000000000000..392fd5d05d73
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Get.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_ListSecrets.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_ListSecrets.json
new file mode 100644
index 000000000000..1d9a3c7d5229
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_ListSecrets.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "secret1"
+ },
+ {
+ "name": "secret2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Patch.json
new file mode 100644
index 000000000000..af668c00e855
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Patch.json
@@ -0,0 +1,114 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "api-version": "2023-05-01",
+ "JobEnvelope": {
+ "properties": {
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v1",
+ "name": "testcontainerAppsJob0",
+ "probes": [
+ {
+ "type": "Liveness",
+ "httpGet": {
+ "path": "/health",
+ "port": 8080,
+ "httpHeaders": [
+ {
+ "name": "Custom-Header",
+ "value": "Awesome"
+ }
+ ]
+ },
+ "initialDelaySeconds": 3,
+ "periodSeconds": 3
+ }
+ ]
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/locations/eastus/containerappsjobOperationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ },
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Start.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Start.json
new file mode 100644
index 000000000000..a2847a73829b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Start.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ },
+ "command": [
+ "/bin/sh"
+ ],
+ "args": [
+ "-c",
+ "while true; do echo hello; sleep 10;done"
+ ]
+ }
+ ]
+ },
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "name": "testcontainerAppsJob0-pjxhsye",
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/{containerAppsJobName}/executions/{jobExecutionName}"
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "location"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Stop_Execution.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Stop_Execution.json
new file mode 100644
index 000000000000..7823a5a6980b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Stop_Execution.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "jobExecutionName": "jobExecution1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "location"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Stop_Multiple.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Stop_Multiple.json
new file mode 100644
index 000000000000..4534b50ac355
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Job_Stop_Multiple.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "jobName": "testcontainerAppsJob0",
+ "jobExecutionName": {
+ "value": [
+ {
+ "name": "jobExecution-27944453"
+ },
+ {
+ "name": "jobExecution-27944452"
+ },
+ {
+ "name": "jobExecution-27944451"
+ }
+ ]
+ },
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "jobExecution-27944453",
+ "status": "Stopped",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00"
+ },
+ {
+ "name": "jobExecution-27944452",
+ "status": "Stopped",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00"
+ },
+ {
+ "name": "jobExecution-27944453",
+ "status": "Failed",
+ "startTime": "2023-02-13T20:37:30+00:00",
+ "endTime": "2023-02-13T20:47:30+00:00"
+ }
+ ],
+ "nextLink": null
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "location"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Jobs_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Jobs_ListByResourceGroup.json
new file mode 100644
index 000000000000..a781372cc5c0
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Jobs_ListByResourceGroup.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob1",
+ "name": "testcontainerAppsJob1",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "scheduleTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "cronExpression": "* * * * 5",
+ "parallelism": 4
+ },
+ "triggerType": "Scheduled"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob1:v4",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testinitcontainerAppsJob1:v4",
+ "name": "testinitcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Jobs_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Jobs_ListBySubscription.json
new file mode 100644
index 000000000000..8ce1f1291466
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Jobs_ListBySubscription.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob0",
+ "name": "testcontainerAppsJob0",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "manualTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "parallelism": 4
+ },
+ "triggerType": "Manual"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob0:v4",
+ "name": "testinitcontainerAppsJob0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/jobs/testcontainerAppsJob1",
+ "name": "testcontainerAppsJob1",
+ "type": "Microsoft.App/jobs",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "environmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube",
+ "configuration": {
+ "replicaTimeout": 10,
+ "replicaRetryLimit": 10,
+ "scheduleTriggerConfig": {
+ "replicaCompletionCount": 1,
+ "cronExpression": "* * * * 5",
+ "parallelism": 5
+ },
+ "triggerType": "Scheduled"
+ },
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerAppsJob1:v4",
+ "name": "testcontainerAppsJob1",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "initContainers": [
+ {
+ "image": "repo/testcontainerAppsJob1:v4",
+ "name": "testinitcontainerAppsJob1",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_CreateOrUpdate.json
new file mode 100644
index 000000000000..0cbe23241d88
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_CreateOrUpdate.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01",
+ "managedCertificateEnvelope": {
+ "location": "East US",
+ "properties": {
+ "subjectName": "my-subject-name.company.country.net",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/locations/eastus/managedCertificateOperationStatuses/dc27c9cd-370f-4623-95d4-827b6dc4120a?api-version=2022-06-01-preview&azureAsyncOperation=true"
+ },
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Pending",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ },
+ "400": {
+ "code": "ManagedCertNoUpdate",
+ "message": "Properties of managed certificates cannot be updated. Please delete the current resource and retry or use a different resource id."
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_Delete.json
new file mode 100644
index 000000000000..6ea350b67d0e
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_Get.json
new file mode 100644
index 000000000000..ddfbac661d24
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificate_Get.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificates_ListByManagedEnvironment.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificates_ListByManagedEnvironment.json
new file mode 100644
index 000000000000..f2015d246f3d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificates_ListByManagedEnvironment.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name-root",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "HTTP"
+ }
+ },
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name-txt",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=txt.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "TXT"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificates_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificates_Patch.json
new file mode 100644
index 000000000000..d5fd64e0470f
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedCertificates_Patch.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "managedCertificateName": "certificate-firendly-name",
+ "api-version": "2023-05-01",
+ "managedCertificateEnvelope": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv/managedCertificates/certificate-firendly-name",
+ "type": "Microsoft.App/ManagedEnvironments/managedCertificates",
+ "location": "East US",
+ "properties": {
+ "subjectName": "CN=my-subject-name.company.country.net",
+ "provisioningState": "Succeeded",
+ "domainControlValidation": "CNAME"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentDiagnostics_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentDiagnostics_Get.json
new file mode 100644
index 000000000000..4de74bb40dae
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentDiagnostics_Get.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "environmentName": "mikonokubeenv",
+ "detectorName": "ManagedEnvAvailabilityMetrics",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/managedEnvironments/mikonokubeenv/detectors/ManagedEnvAvailabilityMetrics",
+ "name": "ManagedEnvAvailabilityMetrics",
+ "type": "Microsoft.App/managedEnvironments/detectors",
+ "properties": {
+ "metadata": {
+ "id": "ManagedEnvAvailabilityMetrics",
+ "name": "Managed Env Netowrk Inbound and Outbound",
+ "description": "This detector shows the Managed Environment Network Inbound and Outbound.",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Detector",
+ "score": 0
+ },
+ "dataset": [
+ {
+ "table": {
+ "tableName": "",
+ "columns": [
+ {
+ "columnName": "TimeStamp",
+ "dataType": "DateTime"
+ },
+ {
+ "columnName": "Metric",
+ "dataType": "String"
+ },
+ {
+ "columnName": "Average",
+ "dataType": "Double"
+ }
+ ],
+ "rows": [
+ [
+ "2022-03-15T21:35:00",
+ "RxBytes",
+ 0
+ ]
+ ]
+ },
+ "renderingProperties": {
+ "type": 8,
+ "title": "Managed Environment Network Inbound ",
+ "description": "",
+ "isVisible": true
+ }
+ }
+ ],
+ "status": {
+ "statusId": 3
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentDiagnostics_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentDiagnostics_List.json
new file mode 100644
index 000000000000..f6cb94eb0c3d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentDiagnostics_List.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "subscriptionId": "f07f3711-b45e-40fe-a941-4e6d93f851e6",
+ "resourceGroupName": "mikono-workerapp-test-rg",
+ "environmentName": "mikonokubeenv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/f07f3711-b45e-40fe-a941-4e6d93f851e6/resourceGroups/mikono-workerapp-test-rg/providers/Microsoft.App/managedEnvironments/mikonokubeenv/detectors/ManagedEnvAvailabilityMetrics",
+ "name": "ManagedEnvAvailabilityMetrics",
+ "type": "Microsoft.App/managedEnvironments/detectors",
+ "properties": {
+ "metadata": {
+ "id": "ManagedEnvAvailabilityMetrics",
+ "name": "Availability Metrics for Managed Environments",
+ "author": "",
+ "category": "Availability and Performance",
+ "supportTopicList": [],
+ "type": "Analysis",
+ "score": 0
+ },
+ "dataset": [],
+ "status": {
+ "statusId": 4
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_CreateOrUpdate.json
new file mode 100644
index 000000000000..7c2de2fadcdb
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_CreateOrUpdate.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-01",
+ "storageEnvelope": {
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "accountKey": "key",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_Delete.json
new file mode 100644
index 000000000000..08baffd27e6b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_Get.json
new file mode 100644
index 000000000000..aa764b612851
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_Get.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "storageName": "jlaw-demo1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_List.json
new file mode 100644
index 000000000000..2bc8070b49d2
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironmentsStorages_List.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "managedEnv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/managedEnv/storages/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments/storages",
+ "properties": {
+ "azureFile": {
+ "accountName": "account1",
+ "shareName": "share1",
+ "accessMode": "ReadOnly"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_CreateOrUpdate.json
new file mode 100644
index 000000000000..3609b77a5711
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_CreateOrUpdate.json
@@ -0,0 +1,182 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-01",
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string",
+ "sharedKey": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "1234"
+ },
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-testcontainerenv-eastus",
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InitializationInProgress",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-testcontainerenv-eastus",
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
new file mode 100644
index 000000000000..dd349ffbd172
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_CustomInfrastructureResourceGroup_Create.json
@@ -0,0 +1,168 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-01",
+ "environmentEnvelope": {
+ "location": "East US",
+ "properties": {
+ "daprAIConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://northcentralus-0.in.applicationinsights.azure.com/",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string",
+ "sharedKey": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "dnsSuffix": "www.my-name.com",
+ "certificateValue": "Y2VydA==",
+ "certificatePassword": "1234"
+ },
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv",
+ "name": "testcontainerenv",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "East US",
+ "properties": {
+ "provisioningState": "InitializationInProgress",
+ "deploymentErrors": null,
+ "defaultDomain": "testcontainerenv.k4apps.io",
+ "staticIp": "1.2.3.4",
+ "appLogsConfiguration": {
+ "logAnalyticsConfiguration": {
+ "customerId": "string"
+ }
+ },
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "myInfrastructureRgName"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Delete.json
new file mode 100644
index 000000000000..e967589280a3
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "examplekenv",
+ "api-version": "2023-05-01",
+ "location": "East US"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/localtions/eastus/operationResults/00000"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Get.json
new file mode 100644
index 000000000000..25edeba14af7
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Get.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "jlaw-demo1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "kedaConfiguration": {
+ "version": "2.8.1"
+ },
+ "daprConfiguration": {
+ "version": "1.9"
+ },
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus",
+ "peerAuthentication": {
+ "mtls": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_GetAuthToken.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_GetAuthToken.json
new file mode 100644
index 000000000000..7018e298c03d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_GetAuthToken.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "rg",
+ "environmentName": "testenv",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/testenv",
+ "name": "testenv",
+ "type": "Microsoft.App/environments/accesstoken",
+ "location": "East US",
+ "properties": {
+ "token": "testToken",
+ "expires": "2022-07-14T19:22:50.3080223Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListByResourceGroup.json
new file mode 100644
index 000000000000..b1c2435083b8
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListByResourceGroup.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus"
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/demo1",
+ "name": "demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "demo1.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "infrastructureResourceGroup": "capp-svc-demo1-northcentralus"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListBySubscription.json
new file mode 100644
index 000000000000..bf2ad2cd121c
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListBySubscription.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus"
+ }
+ },
+ {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/DemoRG/providers/Microsoft.App/managedEnvironments/demo1",
+ "name": "demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "demo1.k4apps.io",
+ "staticIp": "52.142.21.61",
+ "appLogsConfiguration": null,
+ "zoneRedundant": true,
+ "vnetConfiguration": {
+ "infrastructureSubnetId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/VNetName/subnets/subnetName1"
+ },
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name2.com",
+ "subjectName": "CN=www.my-name2.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "infrastructureResourceGroup": "capp-svc-demo1-northcentralus"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListWorkloadProfileStates.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListWorkloadProfileStates.json
new file mode 100644
index 000000000000..6285e14fe17b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_ListWorkloadProfileStates.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9",
+ "resourceGroupName": "examplerg",
+ "environmentName": "jlaw-demo1",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/workloadProfileStates/GP1",
+ "name": "GP1",
+ "type": "/providers/Microsoft.App/workloadProfileStates",
+ "properties": {
+ "minimumCount": 3,
+ "maximumCount": 10,
+ "currentCount": 3
+ }
+ },
+ {
+ "id": "/subscriptions/55f240e3-3d66-44f6-8358-4e4f3d7a2e51/providers/Microsoft.App/workloadProfileStates/MO3",
+ "name": "MO3",
+ "type": "/providers/Microsoft.App/workloadProfileStates",
+ "properties": {
+ "minimumCount": 0,
+ "maximumCount": 2,
+ "currentCount": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Patch.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Patch.json
new file mode 100644
index 000000000000..eb0d7bb7d038
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/ManagedEnvironments_Patch.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "examplerg",
+ "environmentName": "testcontainerenv",
+ "api-version": "2023-05-01",
+ "environmentEnvelope": {
+ "location": "East US",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1",
+ "name": "jlaw-demo1",
+ "type": "Microsoft.App/managedEnvironments",
+ "location": "North Central US",
+ "tags": {},
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentErrors": null,
+ "defaultDomain": "jlaw-demo1.k4apps.io",
+ "staticIp": "20.42.33.145",
+ "zoneRedundant": true,
+ "customDomainConfiguration": {
+ "customDomainVerificationId": "custom domain verification id",
+ "dnsSuffix": "www.my-name.com",
+ "subjectName": "CN=www.my-name.com",
+ "expirationDate": "2022-11-06T04:00:00Z",
+ "thumbprint": "CERTIFICATE_THUMBPRINT"
+ },
+ "eventStreamEndpoint": "testEndpoint",
+ "workloadProfiles": [
+ {
+ "name": "My-GP-01",
+ "workloadProfileType": "GeneralPurpose",
+ "minimumCount": 3,
+ "maximumCount": 12
+ },
+ {
+ "name": "My-MO-01",
+ "workloadProfileType": "MemoryOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-CO-01",
+ "workloadProfileType": "ComputeOptimized",
+ "minimumCount": 3,
+ "maximumCount": 6
+ },
+ {
+ "name": "My-consumption-01",
+ "workloadProfileType": "Consumption"
+ }
+ ],
+ "infrastructureResourceGroup": "capp-svc-jlaw-demo1-northcentralus"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/locations/eastus/managedEnvironmentOperationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2023-05-01"
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Operations_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Operations_List.json
new file mode 100644
index 000000000000..53cd18119896
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Operations_List.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.App/containerApps/Read",
+ "display": {
+ "provider": "Microsoft Apps",
+ "resource": "Container App",
+ "operation": "Get Container App",
+ "description": "Get the properties of a Container App"
+ },
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Replicas_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Replicas_Get.json
new file mode 100644
index 000000000000..345b313bd02b
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Replicas_Get.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "myapp",
+ "revisionName": "myapp--0wlqy09",
+ "replicaName": "myapp--0wlqy09-5d9774cff-5wnd8",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/revisions/myapp--0wlqy09/replicas/myapp--0wlqy09-5d9774cff-5wnd8",
+ "name": "myapp--0wlqy09-5d9774cff-5wnd8",
+ "type": "Microsoft.Web/containerapps/revisions/replicas",
+ "properties": {
+ "createdTime": "2022-01-25T19:42:45Z",
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "containers": [
+ {
+ "name": "hello92",
+ "containerId": "containerd://6bac7bb3afed1c704b5fe563c34c0ecf59ac30c766bb73488f7fa552dc42ee54",
+ "ready": true,
+ "started": true,
+ "restartCount": 0,
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "logStreamEndpoint": "testLogStreamEndpoint",
+ "execEndpoint": "testExecEndpoint"
+ }
+ ],
+ "initContainers": []
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Replicas_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Replicas_List.json
new file mode 100644
index 000000000000..a7a29ab167be
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Replicas_List.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "myapp",
+ "revisionName": "myapp--0wlqy09",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/revisions/myapp--0wlqy09/replicas/myapp--0wlqy09-5d9774cff-5wnd8",
+ "name": "myapp--0wlqy09-5d9774cff-5wnd8",
+ "type": "Microsoft.Web/containerapps/revisions/replicas",
+ "properties": {
+ "createdTime": "2022-01-25T19:42:45Z",
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "containers": [
+ {
+ "name": "hello92",
+ "containerId": "containerd://6bac7bb3afed1c704b5fe563c34c0ecf59ac30c766bb73488f7fa552dc42ee54",
+ "ready": true,
+ "started": true,
+ "restartCount": 0,
+ "runningState": "Running",
+ "runningStateDetails": "testDetail",
+ "logStreamEndpoint": "testLogStreamEndpoint",
+ "execEndpoint": "testExecEndpoint"
+ }
+ ],
+ "initContainers": []
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Activate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Activate.json
new file mode 100644
index 000000000000..0c90109f8240
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Activate.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Deactivate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Deactivate.json
new file mode 100644
index 000000000000..0c90109f8240
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Deactivate.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Get.json
new file mode 100644
index 000000000000..4ff454a63613
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Get.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppcontainerApps/testcontainerApp0/revisions/testcontainerApp0-pjxhsye",
+ "name": "testcontainerApp0-pjxhsye",
+ "type": "Microsoft.App/containerApps/revisions",
+ "properties": {
+ "createdTime": "2021-05-24T21:24:22+00:00",
+ "lastActiveTime": "2021-05-24T21:24:22+00:00",
+ "fqdn": "testcontainerApp0-pjxhsye.politehill-ab123456.eastus.azurecontainerapps.io",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v2",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "trafficWeight": 80,
+ "active": true,
+ "replicas": 1,
+ "runningState": "Running"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_List.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_List.json
new file mode 100644
index 000000000000..2e27941183fb
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_List.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testcontainerApp0",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0/revisions/testcontainerApp0-pjxhsye",
+ "name": "testcontainerApp0-pjxhsye",
+ "type": "Microsoft.App/containerApps/revisions",
+ "properties": {
+ "createdTime": "2021-05-24T21:24:22+00:00",
+ "lastActiveTime": "2021-05-24T21:24:22+00:00",
+ "fqdn": "testcontainerApp0-pjxhsye.politehill-ab123456.eastus.azurecontainerapps.io",
+ "template": {
+ "containers": [
+ {
+ "image": "repo/testcontainerApp0:v2",
+ "name": "testcontainerApp0",
+ "resources": {
+ "cpu": 0.2,
+ "memory": "100Mi"
+ }
+ }
+ ],
+ "scale": {
+ "minReplicas": 1,
+ "maxReplicas": 5,
+ "rules": [
+ {
+ "name": "httpscalingrule",
+ "http": {
+ "metadata": {
+ "concurrentRequests": "50"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "trafficWeight": 80,
+ "active": true,
+ "replicas": 1
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Restart.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Restart.json
new file mode 100644
index 000000000000..55e8d7c1b6ed
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/Revisions_Restart.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345",
+ "resourceGroupName": "rg",
+ "containerAppName": "testStaticSite0",
+ "revisionName": "testcontainerApp0-pjxhsye",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_CreateOrUpdate.json
new file mode 100644
index 000000000000..bbdddec01e34
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_CreateOrUpdate.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "sourceControlName": "current",
+ "api-version": "2023-05-01",
+ "sourceControlEnvelope": {
+ "properties": {
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "test-registry.azurecr.io",
+ "registryUserName": "test-registry",
+ "registryPassword": ""
+ },
+ "azureCredentials": {
+ "clientId": "",
+ "clientSecret": "",
+ "tenantId": "",
+ "kind": "feaderated"
+ },
+ "contextPath": "./",
+ "image": "image/tag",
+ "githubPersonalAccessToken": "test"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "operationState": "InProgress",
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "test-registry.azurecr.io",
+ "registryUserName": "testreg"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://localhost/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/currentInOperationModel/operationresults/5a7f31af-8ae5-489b-a67e-f0a2d11df796?api-version=2021-03-01"
+ },
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "operationState": "InProgress",
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "test-registry.azurecr.io",
+ "registryUserName": "test-registry"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_Delete.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_Delete.json
new file mode 100644
index 000000000000..9ed30f003477
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "sourceControlName": "current",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://localhost/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/myapp/sourcecontrols/currentInOperationModel/operationresults/14a787ee-c65f-462d-8a8b-897f69a2ab4f?api-version=2021-03-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_Get.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_Get.json
new file mode 100644
index 000000000000..a4905d84ad3d
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_Get.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "sourceControlName": "current",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "xwang971reg.azurecr.io",
+ "registryUserName": "xwang971reg"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_ListByContainer.json b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_ListByContainer.json
new file mode 100644
index 000000000000..fa625a5680db
--- /dev/null
+++ b/specification/app/resource-manager/Microsoft.App/stable/2023-05-01/examples/SourceControls_ListByContainer.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "651f8027-33e8-4ec4-97b4-f6e9f3dc8744",
+ "resourceGroupName": "workerapps-rg-xj",
+ "containerAppName": "testcanadacentral",
+ "api-version": "2023-05-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/651f8027-33e8-4ec4-97b4-f6e9f3dc8744/resourceGroups/workerapps-rg-xj/providers/Microsoft.App/containerApps/testcanadacentral/sourcecontrols/current",
+ "name": "current",
+ "type": "Microsoft.App/containerapps/sourcecontrols",
+ "properties": {
+ "repoUrl": "https://github.com/xwang971/ghatest",
+ "branch": "master",
+ "githubActionConfiguration": {
+ "registryInfo": {
+ "registryUrl": "xwang971reg.azurecr.io",
+ "registryUserName": "xwang971reg"
+ },
+ "contextPath": "./",
+ "image": "image/tag"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/app/resource-manager/readme.md b/specification/app/resource-manager/readme.md
index 797889fd9ce8..f066ec6edb63 100644
--- a/specification/app/resource-manager/readme.md
+++ b/specification/app/resource-manager/readme.md
@@ -26,15 +26,65 @@ These are the global settings for the app.
``` yaml
openapi-type: arm
-tag: package-preview-2023-04
+tag: package-2023-05
```
+### Tag: package-preview-2023-05
+These settings apply only when `--tag=package-preview-2023-05` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2023-05'
+input-file:
+ - Microsoft.App/preview/2023-05-02-preview/AuthConfigs.json
+ - Microsoft.App/preview/2023-05-02-preview/AvailableWorkloadProfiles.json
+ - Microsoft.App/preview/2023-05-02-preview/BillingMeters.json
+ - Microsoft.App/preview/2023-05-02-preview/CommonDefinitions.json
+ - Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironments.json
+ - Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsCertificates.json
+ - Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsDaprComponents.json
+ - Microsoft.App/preview/2023-05-02-preview/ConnectedEnvironmentsStorages.json
+ - Microsoft.App/preview/2023-05-02-preview/ContainerApps.json
+ - Microsoft.App/preview/2023-05-02-preview/ContainerAppsRevisions.json
+ - Microsoft.App/preview/2023-05-02-preview/Diagnostics.json
+ - Microsoft.App/preview/2023-05-02-preview/Global.json
+ - Microsoft.App/preview/2023-05-02-preview/Jobs.json
+ - Microsoft.App/preview/2023-05-02-preview/ManagedEnvironments.json
+ - Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsDaprComponents.json
+ - Microsoft.App/preview/2023-05-02-preview/ManagedEnvironmentsStorages.json
+ - Microsoft.App/preview/2023-05-02-preview/SourceControls.json
+ - Microsoft.App/preview/2023-05-02-preview/Subscriptions.json
+ - Microsoft.App/preview/2023-05-02-preview/Usages.json
+```
+
+### Tag: package-2023-05
+
+These settings apply only when `--tag=package-2023-05` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-05'
+input-file:
+ - Microsoft.App/stable/2023-05-01/AuthConfigs.json
+ - Microsoft.App/stable/2023-05-01/AvailableWorkloadProfiles.json
+ - Microsoft.App/stable/2023-05-01/BillingMeters.json
+ - Microsoft.App/stable/2023-05-01/CommonDefinitions.json
+ - Microsoft.App/stable/2023-05-01/ConnectedEnvironments.json
+ - Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsCertificates.json
+ - Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsDaprComponents.json
+ - Microsoft.App/stable/2023-05-01/ConnectedEnvironmentsStorages.json
+ - Microsoft.App/stable/2023-05-01/ContainerApps.json
+ - Microsoft.App/stable/2023-05-01/ContainerAppsRevisions.json
+ - Microsoft.App/stable/2023-05-01/Diagnostics.json
+ - Microsoft.App/stable/2023-05-01/Global.json
+ - Microsoft.App/stable/2023-05-01/Jobs.json
+ - Microsoft.App/stable/2023-05-01/ManagedEnvironments.json
+ - Microsoft.App/stable/2023-05-01/ManagedEnvironmentsDaprComponents.json
+ - Microsoft.App/stable/2023-05-01/ManagedEnvironmentsStorages.json
+ - Microsoft.App/stable/2023-05-01/SourceControls.json
+```
### Tag: package-preview-2023-04
These settings apply only when `--tag=package-preview-2023-04` is specified on the command line.
-```yaml $(tag) == 'package-preview-2023-04'
+``` yaml $(tag) == 'package-preview-2023-04'
input-file:
- Microsoft.App/preview/2023-04-01-preview/AuthConfigs.json
- Microsoft.App/preview/2023-04-01-preview/AvailableWorkloadProfiles.json
@@ -54,6 +104,7 @@ input-file:
- Microsoft.App/preview/2023-04-01-preview/ManagedEnvironmentsStorages.json
- Microsoft.App/preview/2023-04-01-preview/SourceControls.json
```
+
### Tag: package-preview-2022-11
These settings apply only when `--tag=package-preview-2022-11` is specified on the command line.
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json
index a3ccb1ea500f..51a9fddcee85 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2020-11-01-preview/appplatform.json
@@ -2841,7 +2841,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
}
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json
index 6c0fbc77cf5e..be92d6cc6429 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-06-01-preview/appplatform.json
@@ -2850,7 +2850,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
}
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-09-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-09-01-preview/appplatform.json
index 9b512e642820..c93a9629d777 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-09-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2021-09-01-preview/appplatform.json
@@ -3345,7 +3345,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-01-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-01-01-preview/appplatform.json
index c8b056e7d1f1..97894c10ee12 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-01-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-01-01-preview/appplatform.json
@@ -6313,7 +6313,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-03-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-03-01-preview/appplatform.json
index 4dc661c83bfa..ded1c381cbc9 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-03-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-03-01-preview/appplatform.json
@@ -6313,7 +6313,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-05-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-05-01-preview/appplatform.json
index c46222190a86..caba4f2aa37d 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-05-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-05-01-preview/appplatform.json
@@ -6179,7 +6179,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-09-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-09-01-preview/appplatform.json
index 7adbd82c2c36..98c3836a1fbb 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-09-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-09-01-preview/appplatform.json
@@ -6394,7 +6394,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/appplatform.json
index 3b990bd8d152..e6f99af1f99a 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/appplatform.json
@@ -7489,7 +7489,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
@@ -8579,17 +8579,15 @@
"modelAsString": true
}
},
- "resourceRequests": {
- "$ref": "#/definitions/DevToolPortalResourceRequests",
- "description": "The requested resource quantity for required CPU and Memory."
- },
- "instances": {
- "description": "Collection of instances belong to Dev Tool Portal.",
+ "components": {
+ "description": "Collection of components belong to Dev Tool Portal.",
"uniqueItems": false,
"type": "array",
- "x-ms-identifiers": [],
+ "x-ms-identifiers": [
+ "name"
+ ],
"items": {
- "$ref": "#/definitions/DevToolPortalInstance"
+ "$ref": "#/definitions/DevToolPortalComponent"
},
"readOnly": true
},
@@ -8613,6 +8611,29 @@
}
}
},
+ "DevToolPortalComponent": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceRequests": {
+ "$ref": "#/definitions/DevToolPortalResourceRequests",
+ "description": "The requested resource quantity for required CPU and Memory."
+ },
+ "instances": {
+ "description": "Collection of instances belong to Dev Tool Portal.",
+ "uniqueItems": false,
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/DevToolPortalInstance"
+ },
+ "readOnly": true
+ }
+ }
+ },
"DevToolPortalSsoProperties": {
"description": "Single sign-on related configuration",
"type": "object",
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_CreateOrUpdate.json
index 98310d1de838..0e38b9330e06 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_CreateOrUpdate.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_CreateOrUpdate.json
@@ -14,7 +14,7 @@
"openid"
],
"clientSecret": "xxxxx",
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -37,7 +37,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -51,15 +51,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
@@ -85,7 +90,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_Get.json
index 4bf2c747e1e6..b8de6aa646c5 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_Get.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_Get.json
@@ -16,7 +16,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -30,15 +30,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_List.json
index 4d883e290fcc..90fca05bc0d4 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_List.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2022-11-01-preview/examples/DevToolPortals_List.json
@@ -17,7 +17,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -31,15 +31,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/appplatform.json
index ba494bf8713d..9508490d39a6 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/appplatform.json
@@ -7604,7 +7604,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
@@ -8702,17 +8702,15 @@
"modelAsString": true
}
},
- "resourceRequests": {
- "$ref": "#/definitions/DevToolPortalResourceRequests",
- "description": "The requested resource quantity for required CPU and Memory."
- },
- "instances": {
- "description": "Collection of instances belong to Dev Tool Portal.",
+ "components": {
+ "description": "Collection of components belong to Dev Tool Portal.",
"uniqueItems": false,
"type": "array",
- "x-ms-identifiers": [],
+ "x-ms-identifiers": [
+ "name"
+ ],
"items": {
- "$ref": "#/definitions/DevToolPortalInstance"
+ "$ref": "#/definitions/DevToolPortalComponent"
},
"readOnly": true
},
@@ -8736,6 +8734,29 @@
}
}
},
+ "DevToolPortalComponent": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceRequests": {
+ "$ref": "#/definitions/DevToolPortalResourceRequests",
+ "description": "The requested resource quantity for required CPU and Memory."
+ },
+ "instances": {
+ "description": "Collection of instances belong to Dev Tool Portal.",
+ "uniqueItems": false,
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/DevToolPortalInstance"
+ },
+ "readOnly": true
+ }
+ }
+ },
"DevToolPortalSsoProperties": {
"description": "Single sign-on related configuration",
"type": "object",
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_CreateOrUpdate.json
index 32d3112451cf..8edff8f5f0c8 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_CreateOrUpdate.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_CreateOrUpdate.json
@@ -14,7 +14,7 @@
"openid"
],
"clientSecret": "xxxxx",
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -37,7 +37,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -51,15 +51,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
@@ -85,7 +90,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_Get.json
index 136158c49f8f..9d3f40d648ba 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_Get.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_Get.json
@@ -16,7 +16,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -30,15 +30,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_List.json
index ee20eb8523fa..aae16340e620 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_List.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-01-01-preview/examples/DevToolPortals_List.json
@@ -17,7 +17,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -31,15 +31,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/appplatform.json
index 9bb87570ec1e..61511be6df9e 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/appplatform.json
@@ -7930,7 +7930,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
@@ -9150,17 +9150,15 @@
"modelAsString": true
}
},
- "resourceRequests": {
- "$ref": "#/definitions/DevToolPortalResourceRequests",
- "description": "The requested resource quantity for required CPU and Memory."
- },
- "instances": {
- "description": "Collection of instances belong to Dev Tool Portal.",
+ "components": {
+ "description": "Collection of components belong to Dev Tool Portal.",
"uniqueItems": false,
"type": "array",
- "x-ms-identifiers": [],
+ "x-ms-identifiers": [
+ "name"
+ ],
"items": {
- "$ref": "#/definitions/DevToolPortalInstance"
+ "$ref": "#/definitions/DevToolPortalComponent"
},
"readOnly": true
},
@@ -9184,6 +9182,29 @@
}
}
},
+ "DevToolPortalComponent": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceRequests": {
+ "$ref": "#/definitions/DevToolPortalResourceRequests",
+ "description": "The requested resource quantity for required CPU and Memory."
+ },
+ "instances": {
+ "description": "Collection of instances belong to Dev Tool Portal.",
+ "uniqueItems": false,
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/DevToolPortalInstance"
+ },
+ "readOnly": true
+ }
+ }
+ },
"DevToolPortalSsoProperties": {
"description": "Single sign-on related configuration",
"type": "object",
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_CreateOrUpdate.json
index 0765a1274835..c0bfdbb36d97 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_CreateOrUpdate.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_CreateOrUpdate.json
@@ -14,7 +14,7 @@
"openid"
],
"clientSecret": "xxxxx",
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -37,7 +37,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -51,15 +51,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
@@ -85,7 +90,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_Get.json
index 3057a5efdd8d..c2345690892a 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_Get.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_Get.json
@@ -16,7 +16,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -30,15 +30,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_List.json
index 4e2ad4218e4e..edc1d75ff06d 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_List.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-03-01-preview/examples/DevToolPortals_List.json
@@ -17,7 +17,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -31,15 +31,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/appplatform.json
index f6b1af62e480..5ad19ab52ce1 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/appplatform.json
@@ -8728,7 +8728,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
@@ -10004,17 +10004,15 @@
"modelAsString": true
}
},
- "resourceRequests": {
- "$ref": "#/definitions/DevToolPortalResourceRequests",
- "description": "The requested resource quantity for required CPU and Memory."
- },
- "instances": {
- "description": "Collection of instances belong to Dev Tool Portal.",
+ "components": {
+ "description": "Collection of components belong to Dev Tool Portal.",
"uniqueItems": false,
"type": "array",
- "x-ms-identifiers": [],
+ "x-ms-identifiers": [
+ "name"
+ ],
"items": {
- "$ref": "#/definitions/DevToolPortalInstance"
+ "$ref": "#/definitions/DevToolPortalComponent"
},
"readOnly": true
},
@@ -10038,6 +10036,29 @@
}
}
},
+ "DevToolPortalComponent": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceRequests": {
+ "$ref": "#/definitions/DevToolPortalResourceRequests",
+ "description": "The requested resource quantity for required CPU and Memory."
+ },
+ "instances": {
+ "description": "Collection of instances belong to Dev Tool Portal.",
+ "uniqueItems": false,
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/DevToolPortalInstance"
+ },
+ "readOnly": true
+ }
+ }
+ },
"DevToolPortalSsoProperties": {
"description": "Single sign-on related configuration",
"type": "object",
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_CreateOrUpdate.json
index 31ce2d85d819..c0828eecc366 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_CreateOrUpdate.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_CreateOrUpdate.json
@@ -14,7 +14,7 @@
"openid"
],
"clientSecret": "xxxxx",
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -37,7 +37,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -51,15 +51,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
@@ -85,7 +90,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_Get.json
index db0b39e238eb..2e8fed0d9bf4 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_Get.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_Get.json
@@ -16,7 +16,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -30,15 +30,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_List.json
index 2706893b6e85..082735adfc09 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_List.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2023-05-01-preview/examples/DevToolPortals_List.json
@@ -17,7 +17,7 @@
"scopes": [
"openid"
],
- "metadataUrl": "https://login.microsoft.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
+ "metadataUrl": "https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/.well-known/openid-configuration"
},
"features": {
"applicationAccelerator": {
@@ -31,15 +31,20 @@
},
"url": "aaa.com",
"provisioningState": "Succeeded",
- "resourceRequests": {
- "cpu": "1",
- "memory": "1Gi",
- "instanceCount": 1
- },
- "instances": [
+ "components": [
{
- "name": "app-live-view-server-name",
- "status": "Running"
+ "name": "server",
+ "resourceRequests": {
+ "cpu": "1",
+ "memory": "1Gi",
+ "instanceCount": 1
+ },
+ "instances": [
+ {
+ "name": "dev-tool-portal-server-name",
+ "status": "Running"
+ }
+ ]
}
]
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json
index d2a6ef35dcd7..e660f266ba96 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json
@@ -2841,7 +2841,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
}
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-04-01/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-04-01/appplatform.json
index f4c6c103e01a..bcf20a98def1 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-04-01/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-04-01/appplatform.json
@@ -4729,7 +4729,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-12-01/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-12-01/appplatform.json
index 2e385055e27f..37292e460c84 100644
--- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-12-01/appplatform.json
+++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2022-12-01/appplatform.json
@@ -6394,7 +6394,7 @@
"readOnly": true
},
"serviceId": {
- "description": "ServiceInstanceEntity GUID which uniquely identifies a created resource",
+ "description": "ServiceInstanceEntity Id which uniquely identifies a created resource",
"type": "string",
"readOnly": true
},
diff --git a/specification/authorization/resource-manager/readme.python.md b/specification/authorization/resource-manager/readme.python.md
index 5a7182e484d5..6518f9ec6f28 100644
--- a/specification/authorization/resource-manager/readme.python.md
+++ b/specification/authorization/resource-manager/readme.python.md
@@ -20,6 +20,7 @@ multiapi: true
clear-output-folder: true
batch:
- tag: package-2022-08-01-preview-only
+ - tag: package-2022-05-01-preview-only
- tag: package-2022-04-01-only
- tag: package-2022-04-01-preview-only
- tag: package-2021-12-01-preview-python-only
@@ -52,6 +53,15 @@ namespace: azure.mgmt.authorization.v2022_08_01_preview
output-folder: $(python-sdks-folder)/authorization/azure-mgmt-authorization/azure/mgmt/authorization/v2022_08_01_preview
```
+### Tag: package-2022-05-01-preview-only and python
+
+These settings apply only when `--tag=package-2022-05-01-preview-only --python` is specified on the command line.
+
+``` yaml $(tag) == 'package-2022-05-01-preview-only' && $(python)
+namespace: azure.mgmt.authorization.v2022_05_01_preview
+output-folder: $(python-sdks-folder)/authorization/azure-mgmt-authorization/azure/mgmt/authorization/v2022_05_01_preview
+```
+
### Tag: package-2022-04-01-only and python
These settings apply only when `--tag=package-2022-04-01-only --python` is specified on the command line.
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json
index e7dfbc89d475..de1306e0dae4 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json
@@ -1,61 +1,61 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
- "api-version": "2020-06-14",
- "parameters": {
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "kustodatabase",
- "defaultPrincipalsModificationKind": "Union"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Creating"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Creating"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "kustodatabase",
+ "defaultPrincipalsModificationKind": "Union"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Creating"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsDelete.json
index dd57033e26c5..dc74cce253fb 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsDelete.json
@@ -1,14 +1,14 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsGet.json
index 55e7468e060b..be5eca0f5228 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsGet.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "databaseName": "*",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "databaseName": "*",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsListByCluster.json
index d03ad4e69fc1..099275b23471 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsListByCluster.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoAttachedDatabaseConfigurationsListByCluster.json
@@ -1,40 +1,40 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9",
- "name": "KustoClusterRPTest4/KustoDatabase9",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9",
+ "name": "KustoClusterRPTest4/KustoDatabase9",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterAddLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterAddLanguageExtensions.json
index 714b2de30e42..6c26e4278d03 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterAddLanguageExtensions.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterAddLanguageExtensions.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14",
- "languageExtensionsToAdd": {
- "value": [
- {
- "languageExtensionName": "PYTHON"
- },
- {
- "languageExtensionName": "R"
- }
- ]
- }
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14",
+ "languageExtensionsToAdd": {
+ "value": [
+ {
+ "languageExtensionName": "PYTHON"
+ },
+ {
+ "languageExtensionName": "R"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterDetachFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterDetachFollowerDatabases.json
index f45bcf4f54b3..1c16c2fd4b1a 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterDetachFollowerDatabases.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterDetachFollowerDatabases.json
@@ -1,16 +1,16 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14",
- "followerDatabaseToRemove": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4",
- "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration"
- }
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14",
+ "followerDatabaseToRemove": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4",
+ "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListFollowerDatabases.json
index 372ed1fed327..d4c5be7ecdc7 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListFollowerDatabases.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListFollowerDatabases.json
@@ -1,26 +1,26 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "attachedDatabaseConfigurationName": "attachedDbConfiguration",
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1",
- "databaseName": "*"
- },
- {
- "attachedDatabaseConfigurationName": "attachedDbConfiguration2",
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4",
- "databaseName": "db1"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "attachedDatabaseConfigurationName": "attachedDbConfiguration",
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1",
+ "databaseName": "*"
+ },
+ {
+ "attachedDatabaseConfigurationName": "attachedDbConfiguration2",
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4",
+ "databaseName": "db1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListLanguageExtensions.json
index 6581203981d9..2cb7975fcccd 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListLanguageExtensions.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterListLanguageExtensions.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "languageExtensionName": "PYTHON"
- },
- {
- "languageExtensionName": "R"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "languageExtensionName": "PYTHON"
+ },
+ {
+ "languageExtensionName": "R"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json
index c86831b19e09..c673add5080f 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json
@@ -1,21 +1,21 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": {
- "name": "kustoprincipal1",
- "type": "Microsoft.Kusto/clusters/principalAssignments"
- },
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "name": "kustoprincipal1",
- "nameAvailable": false,
- "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": {
+ "name": "kustoprincipal1",
+ "type": "Microsoft.Kusto/clusters/principalAssignments"
+ },
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kustoprincipal1",
+ "nameAvailable": false,
+ "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json
index 5be64e6e3e46..af1763ceb229 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json
@@ -1,51 +1,51 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-06-14",
- "parameters": {
- "properties": {
- "role": "AllDatabasesAdmin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "properties": {
+ "role": "AllDatabasesAdmin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsDelete.json
index eec31255f447..73962f811de2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsDelete.json
@@ -1,14 +1,14 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsGet.json
index 13737e053f15..7168f26d59eb 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsGet.json
@@ -1,27 +1,27 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsList.json
index b1b71083aa78..378cdd4a8d3b 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterPrincipalAssignmentsList.json
@@ -1,45 +1,45 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterRemoveLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterRemoveLanguageExtensions.json
index b66521becf23..1b4ef4557fd2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterRemoveLanguageExtensions.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClusterRemoveLanguageExtensions.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14",
- "languageExtensionsToRemove": {
- "value": [
- {
- "languageExtensionName": "PYTHON"
- },
- {
- "languageExtensionName": "R"
- }
- ]
- }
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14",
+ "languageExtensionsToRemove": {
+ "value": [
+ {
+ "languageExtensionName": "PYTHON"
+ },
+ {
+ "languageExtensionName": "R"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCheckNameAvailability.json
index 29f8da9d1654..e06131ed4bec 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCheckNameAvailability.json
@@ -1,20 +1,20 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "api-version": "2020-06-14",
- "location": "wus",
- "clusterName": {
- "name": "kustoclusterrptest4",
- "type": "Microsoft.Kusto/clusters"
- }
- },
- "responses": {
- "200": {
- "body": {
- "name": "kuskusprod",
- "nameAvailable": false,
- "message": "Name 'kuskusprod' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "api-version": "2020-06-14",
+ "location": "wus",
+ "clusterName": {
+ "name": "kustoclusterrptest4",
+ "type": "Microsoft.Kusto/clusters"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kuskusprod",
+ "nameAvailable": false,
+ "message": "Name 'kuskusprod' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCreateOrUpdate.json
index 5065c3af67e8..329d7530096f 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersCreateOrUpdate.json
@@ -1,86 +1,86 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14",
- "parameters": {
- "location": "westus",
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned"
- },
- "properties": {
- "enableStreamingIngest": true,
- "enablePurge": true,
- "enableDoubleEncryption": false
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "enableDoubleEncryption": false,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "enableDoubleEncryption": false,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "location": "westus",
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "enableDoubleEncryption": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "enableDoubleEncryption": false,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "enableDoubleEncryption": false,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDelete.json
index 635552d1cbc1..ea477f07fc88 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDelete.json
@@ -1,13 +1,13 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDiagnoseVirtualNetwork.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDiagnoseVirtualNetwork.json
index 197a3f05f496..705879ea4d21 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDiagnoseVirtualNetwork.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersDiagnoseVirtualNetwork.json
@@ -1,18 +1,18 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "findings": [
- "Outbound dependency 'Storage:443' might not be satisfied (Outbound)"
- ]
- }
- },
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "findings": [
+ "Outbound dependency 'Storage:443' might not be satisfied (Outbound)"
+ ]
+ }
+ },
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersGet.json
index 44892ca5acf3..17b4e7c816bb 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersGet.json
@@ -1,39 +1,39 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": false,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": false,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersList.json
index 88284a960b25..091710fbd737 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersList.json
@@ -1,47 +1,47 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
- "name": "KustoClusterRPTest3",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
+ "name": "KustoClusterRPTest3",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListByResourceGroup.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListByResourceGroup.json
index 0108b9372831..9fd32ddd015c 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListByResourceGroup.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListByResourceGroup.json
@@ -1,48 +1,48 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
- "name": "KustoClusterRPTest3",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
+ "name": "KustoClusterRPTest3",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListResourceSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListResourceSkus.json
index 44ade5876d50..33c899b7c486 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListResourceSkus.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListResourceSkus.json
@@ -1,68 +1,68 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_D13_v2",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- },
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_D14_v2",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- },
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_L8s",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- },
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_L16s",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_D13_v2",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ },
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_D14_v2",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ },
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_L8s",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ },
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_L16s",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListSkus.json
index 9c44eecbf557..d78993e52803 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListSkus.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersListSkus.json
@@ -1,103 +1,103 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Standard_D13_v2",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- },
- {
- "name": "Standard_D14_v2",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- },
- {
- "name": "L8",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- },
- {
- "name": "L16",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Standard_D13_v2",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ },
+ {
+ "name": "Standard_D14_v2",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ },
+ {
+ "name": "L8",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ },
+ {
+ "name": "L16",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStart.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStart.json
index 13eb4ac881c3..f2fb9462c0d8 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStart.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStart.json
@@ -1,12 +1,12 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStop.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStop.json
index 13eb4ac881c3..f2fb9462c0d8 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStop.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersStop.json
@@ -1,12 +1,12 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersUpdate.json
index 3c5d33b762f3..9c0cb1c986b1 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoClustersUpdate.json
@@ -1,107 +1,107 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14",
- "parameters": {
- "location": "westus"
- },
- "identity": {
- "type": "SystemAssigned"
- },
- "properties": {
- "enableStreamingIngest": true,
- "enablePurge": true,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- }
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "location": "westus"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ }
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionValidation.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionValidation.json
index 0cc43d24d15d..91c82712144d 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionValidation.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionValidation.json
@@ -1,30 +1,30 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "parameters": {
- "dataConnectionName": "DataConnections8",
- "properties": {
- "kind": "EventHub",
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "responses": {
- "200": {
- "body": [
- {
- "errorMessage": "Event hub's namespace does not exist"
- },
- {
- "errorMessage": "Database does not exist"
- }
- ]
- },
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "dataConnectionName": "DataConnections8",
+ "properties": {
+ "kind": "EventHub",
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "errorMessage": "Event hub's namespace does not exist"
+ },
+ {
+ "errorMessage": "Database does not exist"
+ }
+ ]
+ },
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCheckNameAvailability.json
index 874c7fb9a8de..a892511dcb56 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCheckNameAvailability.json
@@ -1,23 +1,23 @@
-{
- "parameters": {
- "api-version": "2020-06-14",
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "dataConnectionName": {
- "name": "DataConnections8",
- "type": "Microsoft.Kusto/clusters/databases/dataConnections"
- }
- },
- "responses": {
- "200": {
- "body": {
- "name": "DataConnections8",
- "nameAvailable": false,
- "message": "Name 'DataConnections8' is already taken. Please specify a different name.",
- "reason": "AlreadyExists"
- }
- }
- }
-}
+{
+ "parameters": {
+ "api-version": "2020-06-14",
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "dataConnectionName": {
+ "name": "DataConnections8",
+ "type": "Microsoft.Kusto/clusters/databases/dataConnections"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "DataConnections8",
+ "nameAvailable": false,
+ "message": "Name 'DataConnections8' is already taken. Please specify a different name.",
+ "reason": "AlreadyExists"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCreateOrUpdate.json
index d8f408b09135..0a0dd74906be 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsCreateOrUpdate.json
@@ -1,59 +1,59 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "dataConnectionName": "DataConnections8",
- "parameters": {
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "dataConnectionName": "DataConnections8",
+ "parameters": {
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsDelete.json
index d8e12541ac64..3cb05bbfde80 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsDelete.json
@@ -1,15 +1,15 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "dataConnectionName": "kustoeventhubconnection1"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "dataConnectionName": "kustoeventhubconnection1"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsGet.json
index 4b6e6fc20dbe..8096fd1512c3 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsGet.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "dataConnectionName": "DataConnections8"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "dataConnectionName": "DataConnections8"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsListByDatabase.json
index ae066afb7e08..fa02f77a8a36 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsListByDatabase.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsListByDatabase.json
@@ -1,39 +1,39 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8",
- "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9",
- "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2",
- "consumerGroup": "testConsumerGroup2"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9",
+ "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2",
+ "consumerGroup": "testConsumerGroup2"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsUpdate.json
index d8f408b09135..0a0dd74906be 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDataConnectionsUpdate.json
@@ -1,59 +1,59 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "dataConnectionName": "DataConnections8",
- "parameters": {
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "dataConnectionName": "DataConnections8",
+ "parameters": {
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseAddPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseAddPrincipals.json
index 76782e424a77..407013c3c5ff 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseAddPrincipals.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseAddPrincipals.json
@@ -1,69 +1,69 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "databasePrincipalsToAdd": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "databasePrincipalsToAdd": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseListPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseListPrincipals.json
index 30ce44d15ecf..99a86fb13d32 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseListPrincipals.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseListPrincipals.json
@@ -1,41 +1,41 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json
index 786337cdc34d..3e19087e1647 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": {
- "name": "kustoprincipal1",
- "type": "Microsoft.Kusto/clusters/databases/principalAssignments"
- },
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "name": "kustoprincipal1",
- "nameAvailable": false,
- "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": {
+ "name": "kustoprincipal1",
+ "type": "Microsoft.Kusto/clusters/databases/principalAssignments"
+ },
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kustoprincipal1",
+ "nameAvailable": false,
+ "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json
index 3c805dbfde19..70979cf0fe30 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json
@@ -1,52 +1,52 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-06-14",
- "parameters": {
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsDelete.json
index cac1fe662991..dd31722d2f77 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsDelete.json
@@ -1,15 +1,15 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsGet.json
index f68b3ef7496d..184866b87e91 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsGet.json
@@ -1,28 +1,28 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsList.json
index b1b71083aa78..378cdd4a8d3b 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasePrincipalAssignmentsList.json
@@ -1,45 +1,45 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseRemovePrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseRemovePrincipals.json
index f4082621bcaf..98b2da77ca9b 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseRemovePrincipals.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabaseRemovePrincipals.json
@@ -1,69 +1,69 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "databasePrincipalsToRemove": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "databasePrincipalsToRemove": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCheckNameAvailability.json
index 5726470601bb..0c44b8720760 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCheckNameAvailability.json
@@ -1,21 +1,21 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "api-version": "2020-06-14",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "resourceName": {
- "name": "kustoresourcename1",
- "type": "Microsoft.Kusto/clusters/databases"
- }
- },
- "responses": {
- "200": {
- "body": {
- "name": "kustoresourcename1",
- "nameAvailable": false,
- "message": "Name 'kuskus' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "api-version": "2020-06-14",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "resourceName": {
+ "name": "kustoresourcename1",
+ "type": "Microsoft.Kusto/clusters/databases"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kustoresourcename1",
+ "nameAvailable": false,
+ "message": "Name 'kuskus' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCreateOrUpdate.json
index 76b9c8e81e96..6034c0ef65cc 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesCreateOrUpdate.json
@@ -1,57 +1,57 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "parameters": {
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesDelete.json
index 566a505547e7..a1142ecfe332 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesDelete.json
@@ -1,14 +1,14 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesGet.json
index 34b4e866b585..cf30b19eb46c 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesGet.json
@@ -1,24 +1,24 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesListByCluster.json
index 0d43e6b33f66..e8fc45a80cf2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesListByCluster.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesListByCluster.json
@@ -1,36 +1,36 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9",
- "name": "KustoClusterRPTest4/KustoDatabase9",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9",
+ "name": "KustoClusterRPTest4/KustoDatabase9",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesUpdate.json
index 4c36dd0a6038..739c7a8ff42a 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoDatabasesUpdate.json
@@ -1,55 +1,55 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-06-14",
- "parameters": {
- "properties": {
- "softDeletePeriod": "P1D"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-06-14",
+ "parameters": {
+ "properties": {
+ "softDeletePeriod": "P1D"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoOperationsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoOperationsList.json
index 36ea112ce353..c8fba9fec093 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoOperationsList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-06-14/examples/KustoOperationsList.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "api-version": "2020-06-14"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "operationName",
- "display": {
- "provider": "providerName",
- "resource": "resourceName",
- "operation": "operationName",
- "description": "operation description"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "api-version": "2020-06-14"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "operationName",
+ "display": {
+ "provider": "providerName",
+ "resource": "resourceName",
+ "operation": "operationName",
+ "description": "operation description"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json
index 3cd7dcc2bc03..8f06ea9b6330 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json
@@ -1,61 +1,61 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
- "api-version": "2020-09-18",
- "parameters": {
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "kustodatabase",
- "defaultPrincipalsModificationKind": "Union"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Creating"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Creating"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "kustodatabase",
+ "defaultPrincipalsModificationKind": "Union"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Creating"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsDelete.json
index b4d3053b2661..4fd2dc614767 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsDelete.json
@@ -1,14 +1,14 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsGet.json
index 9084959fe306..d5a20bb62559 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsGet.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1",
- "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "databaseName": "*",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1",
+ "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "databaseName": "*",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsListByCluster.json
index 486ab7459f31..3ad6051ff531 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsListByCluster.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoAttachedDatabaseConfigurationsListByCluster.json
@@ -1,40 +1,40 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9",
- "name": "KustoClusterRPTest4/KustoDatabase9",
- "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
- "location": "westus",
- "properties": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
- "databaseName": "db1",
- "defaultPrincipalsModificationKind": "Union",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9",
+ "name": "KustoClusterRPTest4/KustoDatabase9",
+ "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations",
+ "location": "westus",
+ "properties": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader",
+ "databaseName": "db1",
+ "defaultPrincipalsModificationKind": "Union",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterAddLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterAddLanguageExtensions.json
index 64fc755ae1fc..d3b79768d459 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterAddLanguageExtensions.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterAddLanguageExtensions.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18",
- "languageExtensionsToAdd": {
- "value": [
- {
- "languageExtensionName": "PYTHON"
- },
- {
- "languageExtensionName": "R"
- }
- ]
- }
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18",
+ "languageExtensionsToAdd": {
+ "value": [
+ {
+ "languageExtensionName": "PYTHON"
+ },
+ {
+ "languageExtensionName": "R"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterDetachFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterDetachFollowerDatabases.json
index fa7219ff1b82..98efdfe4ffbf 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterDetachFollowerDatabases.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterDetachFollowerDatabases.json
@@ -1,16 +1,16 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18",
- "followerDatabaseToRemove": {
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4",
- "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration"
- }
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18",
+ "followerDatabaseToRemove": {
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4",
+ "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListFollowerDatabases.json
index f6fc5b64ce8a..2b94874483f1 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListFollowerDatabases.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListFollowerDatabases.json
@@ -1,26 +1,26 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "attachedDatabaseConfigurationName": "attachedDbConfiguration",
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1",
- "databaseName": "*"
- },
- {
- "attachedDatabaseConfigurationName": "attachedDbConfiguration2",
- "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4",
- "databaseName": "db1"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "attachedDatabaseConfigurationName": "attachedDbConfiguration",
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1",
+ "databaseName": "*"
+ },
+ {
+ "attachedDatabaseConfigurationName": "attachedDbConfiguration2",
+ "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4",
+ "databaseName": "db1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListLanguageExtensions.json
index 32d0dabe8250..1d924b5e63ae 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListLanguageExtensions.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterListLanguageExtensions.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "languageExtensionName": "PYTHON"
- },
- {
- "languageExtensionName": "R"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "languageExtensionName": "PYTHON"
+ },
+ {
+ "languageExtensionName": "R"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json
index 28b8998c1008..d72198a54c56 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json
@@ -1,21 +1,21 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": {
- "name": "kustoprincipal1",
- "type": "Microsoft.Kusto/clusters/principalAssignments"
- },
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "name": "kustoprincipal1",
- "nameAvailable": false,
- "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": {
+ "name": "kustoprincipal1",
+ "type": "Microsoft.Kusto/clusters/principalAssignments"
+ },
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kustoprincipal1",
+ "nameAvailable": false,
+ "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json
index dd7571930885..b77bb8411502 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json
@@ -1,51 +1,51 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-09-18",
- "parameters": {
- "properties": {
- "role": "AllDatabasesAdmin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "properties": {
+ "role": "AllDatabasesAdmin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsDelete.json
index 7f1ec1602d86..64448b9e67a1 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsDelete.json
@@ -1,14 +1,14 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsGet.json
index 21e5ab70c8f7..3931cd422ade 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsGet.json
@@ -1,27 +1,27 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsList.json
index 080811fea6db..93966d2ddca2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterPrincipalAssignmentsList.json
@@ -1,45 +1,45 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterRemoveLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterRemoveLanguageExtensions.json
index 6cdfd1e46b90..90fcbda92bf3 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterRemoveLanguageExtensions.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClusterRemoveLanguageExtensions.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18",
- "languageExtensionsToRemove": {
- "value": [
- {
- "languageExtensionName": "PYTHON"
- },
- {
- "languageExtensionName": "R"
- }
- ]
- }
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18",
+ "languageExtensionsToRemove": {
+ "value": [
+ {
+ "languageExtensionName": "PYTHON"
+ },
+ {
+ "languageExtensionName": "R"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCheckNameAvailability.json
index a2298cbd294e..0282988e0409 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCheckNameAvailability.json
@@ -1,20 +1,20 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "api-version": "2020-09-18",
- "location": "wus",
- "clusterName": {
- "name": "kustoclusterrptest4",
- "type": "Microsoft.Kusto/clusters"
- }
- },
- "responses": {
- "200": {
- "body": {
- "name": "kuskusprod",
- "nameAvailable": false,
- "message": "Name 'kuskusprod' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "api-version": "2020-09-18",
+ "location": "wus",
+ "clusterName": {
+ "name": "kustoclusterrptest4",
+ "type": "Microsoft.Kusto/clusters"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kuskusprod",
+ "nameAvailable": false,
+ "message": "Name 'kuskusprod' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCreateOrUpdate.json
index da62b0b8fabb..a52d13fed715 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersCreateOrUpdate.json
@@ -1,88 +1,88 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18",
- "parameters": {
- "location": "westus",
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned"
- },
- "properties": {
- "enableStreamingIngest": true,
- "enablePurge": true,
- "enableDoubleEncryption": false
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "enableDoubleEncryption": false,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "enableDoubleEncryption": false,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "location": "westus",
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "enableDoubleEncryption": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "enableDoubleEncryption": false,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "enableDoubleEncryption": false,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDelete.json
index 07afa7145686..5a5bb7cb570f 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDelete.json
@@ -1,13 +1,13 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDiagnoseVirtualNetwork.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDiagnoseVirtualNetwork.json
index 4d28dd726a9a..43309ec41030 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDiagnoseVirtualNetwork.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersDiagnoseVirtualNetwork.json
@@ -1,18 +1,18 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "findings": [
- "Outbound dependency 'Storage:443' might not be satisfied (Outbound)"
- ]
- }
- },
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "findings": [
+ "Outbound dependency 'Storage:443' might not be satisfied (Outbound)"
+ ]
+ }
+ },
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersGet.json
index 4eed52534e40..1c533d4b8a70 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersGet.json
@@ -1,40 +1,40 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": false,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": false,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersList.json
index ae7841c260b0..bade6f3450ef 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersList.json
@@ -1,48 +1,48 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
- "name": "KustoClusterRPTest3",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
+ "name": "KustoClusterRPTest3",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListByResourceGroup.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListByResourceGroup.json
index eb34b2c020ab..9213c1ee0045 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListByResourceGroup.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListByResourceGroup.json
@@ -1,49 +1,49 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
- "name": "KustoClusterRPTest3",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3",
+ "name": "KustoClusterRPTest3",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListResourceSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListResourceSkus.json
index e3068b3326cc..b6badf6aa162 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListResourceSkus.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListResourceSkus.json
@@ -1,68 +1,68 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_D13_v2",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- },
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_D14_v2",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- },
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_L8s",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- },
- {
- "resourceType": "clusters",
- "sku": {
- "name": "Standard_L16s",
- "tier": "Standard"
- },
- "capacity": {
- "minimum": 2,
- "maximum": 100,
- "default": 2,
- "scaleType": "automatic"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_D13_v2",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ },
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_D14_v2",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ },
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_L8s",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ },
+ {
+ "resourceType": "clusters",
+ "sku": {
+ "name": "Standard_L16s",
+ "tier": "Standard"
+ },
+ "capacity": {
+ "minimum": 2,
+ "maximum": 100,
+ "default": 2,
+ "scaleType": "automatic"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListSkus.json
index 3ab882df762b..2a95ec5ef418 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListSkus.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersListSkus.json
@@ -1,103 +1,103 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Standard_D13_v2",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- },
- {
- "name": "Standard_D14_v2",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- },
- {
- "name": "L8",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- },
- {
- "name": "L16",
- "tier": "Standard",
- "locations": [
- "West US",
- "West Europe"
- ],
- "locationInfo": [
- {
- "location": "West US",
- "zones": [
- "1",
- "2",
- "3"
- ]
- },
- {
- "location": "West Europe",
- "zones": []
- }
- ]
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Standard_D13_v2",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ },
+ {
+ "name": "Standard_D14_v2",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ },
+ {
+ "name": "L8",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ },
+ {
+ "name": "L16",
+ "tier": "Standard",
+ "locations": [
+ "West US",
+ "West Europe"
+ ],
+ "locationInfo": [
+ {
+ "location": "West US",
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ]
+ },
+ {
+ "location": "West Europe",
+ "zones": []
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStart.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStart.json
index 980f22a32831..286ea5966dfd 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStart.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStart.json
@@ -1,12 +1,12 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStop.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStop.json
index 980f22a32831..286ea5966dfd 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStop.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersStop.json
@@ -1,12 +1,12 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersUpdate.json
index b770f9d74a4b..84df44b1eca1 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoClustersUpdate.json
@@ -1,111 +1,111 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18",
- "parameters": {
- "location": "westus"
- },
- "identity": {
- "type": "SystemAssigned"
- },
- "properties": {
- "enableStreamingIngest": true,
- "enablePurge": true,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "keyVaultProperties": {
- "keyVaultUri": "https://dummy.keyvault.com",
- "keyName": "keyName",
- "keyVersion": "keyVersion"
- },
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
- "name": "KustoClusterRPTest4",
- "type": "Microsoft.Kusto/Clusters",
- "location": "westus",
- "properties": {
- "provisioningState": "Succeeded",
- "enableStreamingIngest": true,
- "enablePurge": true,
- "engineType": "V2"
- },
- "sku": {
- "name": "Standard_L8s",
- "capacity": 2,
- "tier": "Standard"
- },
- "identity": {
- "type": "SystemAssigned",
- "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
- "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
- "userAssignedIdentities": {}
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "location": "westus"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "keyVaultProperties": {
+ "keyVaultUri": "https://dummy.keyvault.com",
+ "keyName": "keyName",
+ "keyVersion": "keyVersion"
+ },
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4",
+ "name": "KustoClusterRPTest4",
+ "type": "Microsoft.Kusto/Clusters",
+ "location": "westus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "enableStreamingIngest": true,
+ "enablePurge": true,
+ "engineType": "V2"
+ },
+ "sku": {
+ "name": "Standard_L8s",
+ "capacity": 2,
+ "tier": "Standard"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4",
+ "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c",
+ "userAssignedIdentities": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCheckNameAvailability.json
index 2903d8f64139..c089553c5700 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCheckNameAvailability.json
@@ -1,23 +1,23 @@
-{
- "parameters": {
- "api-version": "2020-09-18",
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "dataConnectionName": {
- "name": "DataConnections8",
- "type": "Microsoft.Kusto/clusters/databases/dataConnections"
- }
- },
- "responses": {
- "200": {
- "body": {
- "name": "DataConnections8",
- "nameAvailable": false,
- "message": "Name 'DataConnections8' is already taken. Please specify a different name.",
- "reason": "AlreadyExists"
- }
- }
- }
-}
+{
+ "parameters": {
+ "api-version": "2020-09-18",
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "dataConnectionName": {
+ "name": "DataConnections8",
+ "type": "Microsoft.Kusto/clusters/databases/dataConnections"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "DataConnections8",
+ "nameAvailable": false,
+ "message": "Name 'DataConnections8' is already taken. Please specify a different name.",
+ "reason": "AlreadyExists"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCreateOrUpdate.json
index 1fb8d3788065..88028923b7c6 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsCreateOrUpdate.json
@@ -1,59 +1,59 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "dataConnectionName": "DataConnections8",
- "parameters": {
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "dataConnectionName": "DataConnections8",
+ "parameters": {
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsDelete.json
index 05a772ff4ed3..b5933e9a43e2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsDelete.json
@@ -1,15 +1,15 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "dataConnectionName": "kustoeventhubconnection1"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "dataConnectionName": "kustoeventhubconnection1"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsGet.json
index d9abaf9772b0..7d6e7497226e 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsGet.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "dataConnectionName": "DataConnections8"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "dataConnectionName": "DataConnections8"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsListByDatabase.json
index 4c7e09b7d2fb..3c9216d3ae98 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsListByDatabase.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsListByDatabase.json
@@ -1,39 +1,39 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8",
- "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9",
- "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2",
- "consumerGroup": "testConsumerGroup2"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9",
+ "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2",
+ "consumerGroup": "testConsumerGroup2"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsUpdate.json
index 1fb8d3788065..88028923b7c6 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDataConnectionsUpdate.json
@@ -1,59 +1,59 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "dataConnectionName": "DataConnections8",
- "parameters": {
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
- "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
- "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
- "location": "westus",
- "kind": "EventHub",
- "properties": {
- "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
- "consumerGroup": "testConsumerGroup1"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "dataConnectionName": "DataConnections8",
+ "parameters": {
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8",
+ "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8",
+ "type": "Microsoft.Kusto/Clusters/Databases/DataConnections",
+ "location": "westus",
+ "kind": "EventHub",
+ "properties": {
+ "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1",
+ "consumerGroup": "testConsumerGroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseAddPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseAddPrincipals.json
index f4b6adfd87b2..99e27f641cdb 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseAddPrincipals.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseAddPrincipals.json
@@ -1,69 +1,69 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "databasePrincipalsToAdd": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "databasePrincipalsToAdd": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseListPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseListPrincipals.json
index ad1c9c42eb2b..df210225f8e3 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseListPrincipals.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseListPrincipals.json
@@ -1,41 +1,41 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json
index 7321c6c47b03..7dc84cfee4ea 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": {
- "name": "kustoprincipal1",
- "type": "Microsoft.Kusto/clusters/databases/principalAssignments"
- },
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "name": "kustoprincipal1",
- "nameAvailable": false,
- "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": {
+ "name": "kustoprincipal1",
+ "type": "Microsoft.Kusto/clusters/databases/principalAssignments"
+ },
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kustoprincipal1",
+ "nameAvailable": false,
+ "message": "Name 'kustoprincipal1' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json
index 4cf19b4d4be5..9363328f8690 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json
@@ -1,52 +1,52 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-09-18",
- "parameters": {
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsDelete.json
index 5973f67ea030..79be804dcecd 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsDelete.json
@@ -1,15 +1,15 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsGet.json
index 77dfcf895e20..d50e6efbb58f 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsGet.json
@@ -1,28 +1,28 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "principalAssignmentName": "kustoprincipal1",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "principalAssignmentName": "kustoprincipal1",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsList.json
index 080811fea6db..93966d2ddca2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasePrincipalAssignmentsList.json
@@ -1,45 +1,45 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "Kustodatabase8",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
- "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
- "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
- "properties": {
- "role": "Admin",
- "principalId": "87654321-1234-1234-1234-123456789123",
- "principalType": "App",
- "tenantId": "12345678-1234-1234-1234-123456789123",
- "tenantName": "tenantName",
- "principalName": "TestApp",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "Kustodatabase8",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1",
+ "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2",
+ "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments",
+ "properties": {
+ "role": "Admin",
+ "principalId": "87654321-1234-1234-1234-123456789123",
+ "principalType": "App",
+ "tenantId": "12345678-1234-1234-1234-123456789123",
+ "tenantName": "tenantName",
+ "principalName": "TestApp",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseRemovePrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseRemovePrincipals.json
index c8a35a599846..b9e000c296c1 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseRemovePrincipals.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabaseRemovePrincipals.json
@@ -1,69 +1,69 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "databasePrincipalsToRemove": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "Some User",
- "role": "Admin",
- "type": "User",
- "fqn": "aaduser=some_guid",
- "email": "user@microsoft.com",
- "appId": ""
- },
- {
- "name": "Kusto",
- "role": "Viewer",
- "type": "Group",
- "fqn": "aadgroup=some_guid",
- "email": "kusto@microsoft.com",
- "appId": ""
- },
- {
- "name": "SomeApp",
- "role": "Admin",
- "type": "App",
- "fqn": "aadapp=some_guid_app_id",
- "email": "",
- "appId": "some_guid_app_id"
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "databasePrincipalsToRemove": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Some User",
+ "role": "Admin",
+ "type": "User",
+ "fqn": "aaduser=some_guid",
+ "email": "user@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "Kusto",
+ "role": "Viewer",
+ "type": "Group",
+ "fqn": "aadgroup=some_guid",
+ "email": "kusto@microsoft.com",
+ "appId": ""
+ },
+ {
+ "name": "SomeApp",
+ "role": "Admin",
+ "type": "App",
+ "fqn": "aadapp=some_guid_app_id",
+ "email": "",
+ "appId": "some_guid_app_id"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCheckNameAvailability.json
index 6184f1f78580..abc1b99faaf2 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCheckNameAvailability.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCheckNameAvailability.json
@@ -1,21 +1,21 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "api-version": "2020-09-18",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "resourceName": {
- "name": "kustoresourcename1",
- "type": "Microsoft.Kusto/clusters/databases"
- }
- },
- "responses": {
- "200": {
- "body": {
- "name": "kustoresourcename1",
- "nameAvailable": false,
- "message": "Name 'kuskus' is already taken. Please specify a different name"
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "api-version": "2020-09-18",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "resourceName": {
+ "name": "kustoresourcename1",
+ "type": "Microsoft.Kusto/clusters/databases"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "kustoresourcename1",
+ "nameAvailable": false,
+ "message": "Name 'kuskus' is already taken. Please specify a different name"
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCreateOrUpdate.json
index e161d5a0a085..a29cb12dda00 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCreateOrUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesCreateOrUpdate.json
@@ -1,56 +1,56 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "parameters": {
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesDelete.json
index f00f7b7e7313..d8bacb864956 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesDelete.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesDelete.json
@@ -1,14 +1,14 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {},
- "202": {},
- "204": {}
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesGet.json
index 87cd1481ba25..7cfd373276e5 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesGet.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesGet.json
@@ -1,24 +1,24 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesListByCluster.json
index 5c6b1fcf6456..2d35b68dad08 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesListByCluster.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesListByCluster.json
@@ -1,36 +1,36 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- },
- {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9",
- "name": "KustoClusterRPTest4/KustoDatabase9",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9",
+ "name": "KustoClusterRPTest4/KustoDatabase9",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesUpdate.json
index d9994e7244f7..fb3047fe3043 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesUpdate.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoDatabasesUpdate.json
@@ -1,55 +1,55 @@
-{
- "parameters": {
- "subscriptionId": "12345678-1234-1234-1234-123456789098",
- "resourceGroupName": "kustorptest",
- "clusterName": "kustoclusterrptest4",
- "databaseName": "KustoDatabase8",
- "api-version": "2020-09-18",
- "parameters": {
- "properties": {
- "softDeletePeriod": "P1D"
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "201": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "kind": "ReadWrite",
- "location": "westus",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- },
- "202": {
- "body": {
- "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
- "name": "KustoClusterRPTest4/KustoDatabase8",
- "type": "Microsoft.Kusto/Clusters/Databases",
- "location": "westus",
- "kind": "ReadWrite",
- "properties": {
- "softDeletePeriod": "P1D",
- "provisioningState": "Succeeded"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "subscriptionId": "12345678-1234-1234-1234-123456789098",
+ "resourceGroupName": "kustorptest",
+ "clusterName": "kustoclusterrptest4",
+ "databaseName": "KustoDatabase8",
+ "api-version": "2020-09-18",
+ "parameters": {
+ "properties": {
+ "softDeletePeriod": "P1D"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "kind": "ReadWrite",
+ "location": "westus",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8",
+ "name": "KustoClusterRPTest4/KustoDatabase8",
+ "type": "Microsoft.Kusto/Clusters/Databases",
+ "location": "westus",
+ "kind": "ReadWrite",
+ "properties": {
+ "softDeletePeriod": "P1D",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoOperationsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoOperationsList.json
index f5e8a42bd538..ae78796d4f95 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoOperationsList.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-09-18/examples/KustoOperationsList.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "api-version": "2020-09-18"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "operationName",
- "display": {
- "provider": "providerName",
- "resource": "resourceName",
- "operation": "operationName",
- "description": "operation description"
- }
- }
- ]
- }
- }
- }
-}
+{
+ "parameters": {
+ "api-version": "2020-09-18"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "operationName",
+ "display": {
+ "provider": "providerName",
+ "resource": "resourceName",
+ "operation": "operationName",
+ "description": "operation description"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2023-05-02/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2023-05-02/kusto.json
index 68103461b793..af3416f9eaac 100644
--- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2023-05-02/kusto.json
+++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2023-05-02/kusto.json
@@ -67,9 +67,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Create or update a Kusto cluster.",
"parameters": [
{
@@ -142,9 +139,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Update a Kusto cluster.",
"parameters": [
{
@@ -227,9 +221,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Deletes a Kusto cluster.",
"parameters": [
{
@@ -282,9 +273,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Stops a Kusto cluster.",
"parameters": [
{
@@ -334,9 +322,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Starts a Kusto cluster.",
"parameters": [
{
@@ -386,9 +371,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Migrate data from a Kusto cluster to another cluster.",
"parameters": [
{
@@ -541,9 +523,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Create a Kusto cluster principalAssignment.",
"parameters": [
{
@@ -603,9 +582,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Deletes a Kusto cluster principalAssignment.",
"parameters": [
{
@@ -752,9 +728,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
@@ -813,9 +786,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
@@ -1441,10 +1411,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
},
"patch": {
"tags": [
@@ -1524,10 +1491,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
},
"delete": {
"tags": [
@@ -1580,10 +1544,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/inviteFollower": {
@@ -1752,9 +1713,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Creates a Kusto cluster database principalAssignment.",
"parameters": [
{
@@ -1817,9 +1775,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Deletes a Kusto principalAssignment.",
"parameters": [
{
@@ -2122,9 +2077,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Creates a Kusto database script.",
"parameters": [
{
@@ -2199,9 +2151,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Updates a database script.",
"parameters": [
{
@@ -2270,9 +2219,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Deletes a Kusto database script.",
"parameters": [
{
@@ -2419,9 +2365,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Creates a managed private endpoint.",
"parameters": [
{
@@ -2493,9 +2436,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Updates a managed private endpoint.",
"parameters": [
{
@@ -2561,9 +2501,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Deletes a managed private endpoint.",
"parameters": [
{
@@ -2752,10 +2689,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
},
"delete": {
"tags": [
@@ -2808,10 +2742,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/privateLinkResources": {
@@ -3107,10 +3038,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
},
"delete": {
"tags": [
@@ -3163,10 +3091,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/removePrincipals": {
@@ -3286,9 +3211,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"description": "Checks that the data connection parameters are valid.",
"parameters": [
{
@@ -3580,10 +3502,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
},
"patch": {
"tags": [
@@ -3669,10 +3588,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
},
"delete": {
"tags": [
@@ -3728,10 +3644,7 @@
}
}
},
- "x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- }
+ "x-ms-long-running-operation": true
}
},
"/providers/Microsoft.Kusto/operations": {
@@ -3828,9 +3741,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
@@ -3889,9 +3799,6 @@
}
},
"x-ms-long-running-operation": true,
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/common.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/common.json
new file mode 100644
index 000000000000..f8d5a5c2a14c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/common.json
@@ -0,0 +1,64 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec",
+ "version": "2023-07-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {},
+ "definitions": {
+ "ExtendedLocationType": {
+ "type": "string",
+ "description": "The type of extendedLocation.",
+ "enum": [
+ "CustomLocation"
+ ],
+ "x-ms-enum": {
+ "name": "ExtendedLocationTypes",
+ "modelAsString": true
+ }
+ },
+ "ExtendedLocation": {
+ "description": "The complex type of the extended location.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extended location."
+ },
+ "type": {
+ "$ref": "#/definitions/ExtendedLocationType",
+ "description": "The type of the extended location."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/CreateGuestAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/CreateGuestAgent.json
new file mode 100644
index 000000000000..439249eab360
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/CreateGuestAgent.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM",
+ "body": {
+ "properties": {
+ "provisioningAction": "install",
+ "credentials": {
+ "username": "tempuser",
+ "password": ""
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteGalleryImage.json
new file mode 100644
index 000000000000..da0a76eee4f3
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteGalleryImage.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "galleryImageName": "test-gallery-image",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteGuestAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteGuestAgent.json
new file mode 100644
index 000000000000..b60992f2831e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteGuestAgent.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteMarketplaceGalleryImage.json
new file mode 100644
index 000000000000..ec1670cab45a
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteMarketplaceGalleryImage.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "marketplaceGalleryImageName": "test-marketplace-gallery-image",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteNetworkInterface.json
new file mode 100644
index 000000000000..72ec6d3c6c70
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteNetworkInterface.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "networkInterfaceName": "test-nic",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteStorageContainer.json
new file mode 100644
index 000000000000..f777733c808e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteStorageContainer.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "storageContainerName": "Default_Container",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualHardDisk.json
new file mode 100644
index 000000000000..2c38ec3cf2f2
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualHardDisk.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualHardDiskName": "test-vhd",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualMachineInstance.json
new file mode 100644
index 000000000000..b24db94442c2
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualMachineInstance.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualNetwork.json
new file mode 100644
index 000000000000..984f0aee2e0e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/DeleteVirtualNetwork.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualNetworkName": "test-vnet",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetGalleryImage.json
new file mode 100644
index 000000000000..51bac00b3364
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetGalleryImage.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "galleryImageName": "test-gallery-image",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image",
+ "name": "test-gallery-image",
+ "type": "Microsoft.AzureStackHCI/galleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9382
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetGuestAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetGuestAgent.json
new file mode 100644
index 000000000000..db0c4fc8ebb6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetGuestAgent.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetHybridIdentityMetadata.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetHybridIdentityMetadata.json
new file mode 100644
index 000000000000..35b1162f5368
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetHybridIdentityMetadata.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances/hybridIdentityMetadata",
+ "properties": {
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2",
+ "identity": {
+ "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d",
+ "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetMarketplaceGalleryImage.json
new file mode 100644
index 000000000000..a1c102db31c5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetMarketplaceGalleryImage.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "marketplaceGalleryImageName": "test-marketplace-gallery-image",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image",
+ "name": "test-marketplace-gallery-image",
+ "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetNetworkInterface.json
new file mode 100644
index 000000000000..17ab5a9de84e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetNetworkInterface.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "networkInterfaceName": "test-nic",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/networkInterfaces",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "external"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetStorageContainer.json
new file mode 100644
index 000000000000..81c75c612f52
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetStorageContainer.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "storageContainerName": "Default_Container",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/Default_Container",
+ "name": "Default_Container",
+ "type": "Microsoft.AzureStackHCI/storageContainers",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "path": "C:\\container_storage"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualHardDisk.json
new file mode 100644
index 000000000000..af4c970431d0
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualHardDisk.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualHardDiskName": "test-vhd",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd",
+ "name": "test-vhd",
+ "type": "Microsoft.AzureStackHCI/virtualHardDisks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "diskSizeGB": 32,
+ "blockSizeBytes": 0,
+ "logicalSectorBytes": 512,
+ "physicalSectorBytes": 512,
+ "provisioningState": "Accepted",
+ "diskFileFormat": "vhdx",
+ "hyperVGeneration": "V2",
+ "dynamic": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualMachineInstance.json
new file mode 100644
index 000000000000..b6515c9f427e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualMachineInstance.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualNetwork.json
new file mode 100644
index 000000000000..9c01e9956bb7
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GetVirtualNetwork.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualNetworkName": "test-vnet",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-vnet",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/virtualNetworks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "networkType": "Transparent"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GuestAgent_List.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GuestAgent_List.json
new file mode 100644
index 000000000000..5ad9fec8398f
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/GuestAgent_List.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/HybridIdentityMetadata_List.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/HybridIdentityMetadata_List.json
new file mode 100644
index 000000000000..e3abeb1904d5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/HybridIdentityMetadata_List.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances/hybridIdentityMetadata",
+ "properties": {
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2",
+ "identity": {
+ "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d",
+ "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListGalleryImageByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListGalleryImageByResourceGroup.json
new file mode 100644
index 000000000000..f0b2101f9646
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListGalleryImageByResourceGroup.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image",
+ "name": "test-gallery-image",
+ "type": "Microsoft.AzureStackHCI/galleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Linux",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V2",
+ "version": {
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListGalleryImageBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListGalleryImageBySubscription.json
new file mode 100644
index 000000000000..cf2d13c6dcc6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListGalleryImageBySubscription.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image",
+ "name": "test-gallery-image",
+ "type": "Microsoft.AzureStackHCI/galleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Linux",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V2",
+ "version": {
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListMarketplaceGalleryImageByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListMarketplaceGalleryImageByResourceGroup.json
new file mode 100644
index 000000000000..88f07faef807
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListMarketplaceGalleryImageByResourceGroup.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image",
+ "name": "test-marketplace-gallery-image",
+ "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "Azure",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListMarketplaceGalleryImageBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListMarketplaceGalleryImageBySubscription.json
new file mode 100644
index 000000000000..063d00f9fa45
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListMarketplaceGalleryImageBySubscription.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image",
+ "name": "test-marketplace-gallery-image",
+ "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "Azure",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListNetworkInterfaceByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListNetworkInterfaceByResourceGroup.json
new file mode 100644
index 000000000000..fe31b1ef5d83
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListNetworkInterfaceByResourceGroup.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "networkInterfaceName": "test-nic",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/networkInterfaces",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "external"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListNetworkInterfaceBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListNetworkInterfaceBySubscription.json
new file mode 100644
index 000000000000..fe31b1ef5d83
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListNetworkInterfaceBySubscription.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "networkInterfaceName": "test-nic",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/networkInterfaces",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "external"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListOperations.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListOperations.json
new file mode 100644
index 000000000000..be51116e795d
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListOperations.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.AzureStackHCI/galleryImages/read",
+ "display": {
+ "provider": "Azure Stack HCI",
+ "resource": "GalleryImages",
+ "operation": "List or Get Addresses",
+ "description": "List or get the Addresses"
+ },
+ "origin": "user",
+ "isDataAction": false
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListStorageContainerByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListStorageContainerByResourceGroup.json
new file mode 100644
index 000000000000..8f4b6f86afbc
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListStorageContainerByResourceGroup.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/Default_Container",
+ "name": "Default_Container",
+ "type": "Microsoft.AzureStackHCI/storageContainers",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "path": "C:\\container_storage"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListStorageContainerBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListStorageContainerBySubscription.json
new file mode 100644
index 000000000000..3a8004f75fe7
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListStorageContainerBySubscription.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/Default_Container",
+ "name": "Default_Container",
+ "type": "Microsoft.AzureStackHCI/storageContainers",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "path": "C:\\container_storage"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualHardDiskByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualHardDiskByResourceGroup.json
new file mode 100644
index 000000000000..ee734c6c2424
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualHardDiskByResourceGroup.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd",
+ "name": "test-vhd",
+ "type": "Microsoft.AzureStackHCI/virtualHardDisks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "diskSizeGB": 32,
+ "blockSizeBytes": 0,
+ "logicalSectorBytes": 512,
+ "physicalSectorBytes": 512,
+ "provisioningState": "Accepted",
+ "diskFileFormat": "vhdx",
+ "hyperVGeneration": "V2",
+ "dynamic": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualHardDiskBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualHardDiskBySubscription.json
new file mode 100644
index 000000000000..59a5add78ab5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualHardDiskBySubscription.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd",
+ "name": "test-vhd",
+ "type": "Microsoft.AzureStackHCI/virtualHardDisks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "diskSizeGB": 32,
+ "blockSizeBytes": 0,
+ "logicalSectorBytes": 512,
+ "physicalSectorBytes": 512,
+ "provisioningState": "Accepted",
+ "diskFileFormat": "vhdx",
+ "hyperVGeneration": "V2",
+ "dynamic": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualMachineInstances.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualMachineInstances.json
new file mode 100644
index 000000000000..d2e287a609cb
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualMachineInstances.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualNetworkByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualNetworkByResourceGroup.json
new file mode 100644
index 000000000000..85515bbf56fa
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualNetworkByResourceGroup.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-vnet",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/virtualNetworks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "networkType": "Transparent"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualNetworkBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualNetworkBySubscription.json
new file mode 100644
index 000000000000..f54eb1b54ad6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/ListVirtualNetworkBySubscription.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-vnet",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/virtualNetworks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "networkType": "Transparent"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutGalleryImage.json
new file mode 100644
index 000000000000..0267b1023dc7
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutGalleryImage.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "galleryImageName": "test-gallery-image",
+ "api-version": "2023-07-01-preview",
+ "galleryImages": {
+ "location": "West US2",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "imagePath": "C:\\test.vhdx",
+ "containerId": "Default_Container",
+ "osType": "Linux"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image",
+ "name": "test-gallery-image",
+ "type": "Microsoft.AzureStackHCI/galleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Linux",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V2",
+ "version": {
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-galimg3325",
+ "name": "test-gallery-image",
+ "type": "Microsoft.AzureStackHCI/galleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "containerId": "Default_Container",
+ "osType": "Linux",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V2",
+ "version": {
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutMarketplaceGalleryImage.json
new file mode 100644
index 000000000000..3a26ce4b734f
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutMarketplaceGalleryImage.json
@@ -0,0 +1,120 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "marketplaceGalleryImageName": "test-marketplace-gallery-image",
+ "api-version": "2023-07-01-preview",
+ "name": "test-marketplace-gallery-image",
+ "marketplaceGalleryImages": {
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "Azure",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image",
+ "name": "test-marketplace-gallery-image",
+ "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "Azure",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "InProgress"
+ },
+ "progressPercentage": 0,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image",
+ "name": "test-marketplace-gallery-image",
+ "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "Azure",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ },
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutNetworkInterface.json
new file mode 100644
index 000000000000..b317ce6aca84
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutNetworkInterface.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "networkInterfaceName": "test-nic",
+ "api-version": "2023-07-01-preview",
+ "networkInterfaces": {
+ "location": "West US2",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "test-vnet"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic",
+ "name": "test-nic",
+ "type": "Microsoft.AzureStackHCI/networkInterfaces",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "test-vnet"
+ }
+ }
+ }
+ ],
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic",
+ "name": "test-nic",
+ "type": "Microsoft.AzureStackHCI/networkInterfaces",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "test-vnet"
+ }
+ }
+ }
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutStorageContainer.json
new file mode 100644
index 000000000000..c4c7c0d53efd
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutStorageContainer.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "storageContainerName": "Default_Container",
+ "api-version": "2023-07-01-preview",
+ "storageContainers": {
+ "location": "West US2",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "path": "C:\\container_storage"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-galimg3325",
+ "name": "Default_Container",
+ "type": "Microsoft.AzureStackHCI/storageContainers",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "path": "C:\\container_storage"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-galimg3325",
+ "name": "Default_Container",
+ "type": "Microsoft.AzureStackHCI/storageContainers",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "path": "C:\\container_storage"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualHardDisk.json
new file mode 100644
index 000000000000..fcd4165e58d1
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualHardDisk.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualHardDiskName": "test-vhd",
+ "api-version": "2023-07-01-preview",
+ "virtualHardDisks": {
+ "location": "West US2",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "diskSizeGB": 32
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd",
+ "name": "test-vhd",
+ "type": "Microsoft.AzureStackHCI/virtualHardDisks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "diskSizeGB": 32,
+ "blockSizeBytes": 0,
+ "logicalSectorBytes": 512,
+ "physicalSectorBytes": 512,
+ "provisioningState": "Accepted",
+ "diskFileFormat": "vhdx",
+ "hyperVGeneration": "V2",
+ "dynamic": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd",
+ "name": "test-vhd",
+ "type": "Microsoft.AzureStackHCI/virtualHardDisks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "diskSizeGB": 32,
+ "blockSizeBytes": 0,
+ "logicalSectorBytes": 512,
+ "physicalSectorBytes": 512,
+ "provisioningState": "Succeeded",
+ "diskFileFormat": "vhdx",
+ "hyperVGeneration": "V2",
+ "dynamic": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithGalleryImage.json
new file mode 100644
index 000000000000..125aa23cd7a8
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithGalleryImage.json
@@ -0,0 +1,113 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM",
+ "virtualMachineInstance": {
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin",
+ "adminPassword": "password"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json
new file mode 100644
index 000000000000..6436b64d921c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json
@@ -0,0 +1,113 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM",
+ "virtualMachineInstance": {
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin",
+ "adminPassword": "password"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithOsDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithOsDisk.json
new file mode 100644
index 000000000000..868b20b4d754
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithOsDisk.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM",
+ "virtualMachineInstance": {
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithVMConfigAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithVMConfigAgent.json
new file mode 100644
index 000000000000..98d6f23edd8e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualMachineInstanceWithVMConfigAgent.json
@@ -0,0 +1,144 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM",
+ "virtualMachineInstance": {
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin",
+ "adminPassword": "password",
+ "windowsConfiguration": {
+ "provisionVMConfigAgent": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted",
+ "instanceView": {
+ "vmAgent": {
+ "vmVMConfigAgentVersion": "1.0.0",
+ "statuses": [
+ {
+ "code": "Ok",
+ "level": "Info",
+ "displayStatus": "Ok",
+ "message": "The agent is healthy",
+ "time": "2009-06-15T13:45:30"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "vmAgent": {
+ "vmVMConfigAgentVersion": "1.0.0",
+ "statuses": [
+ {
+ "code": "Ok",
+ "level": "Info",
+ "displayStatus": "Ok",
+ "message": "The agent is healthy",
+ "time": "2009-06-15T13:45:30"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualNetwork.json
new file mode 100644
index 000000000000..fe50a9717e4d
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/PutVirtualNetwork.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualNetworkName": "test-vnet",
+ "api-version": "2023-07-01-preview",
+ "virtualNetworks": {
+ "location": "West US2",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "networkType": "Transparent"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualNetworks/test-vnet",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/virtualNetworks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "networkType": "Transparent",
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualNetworks/test-vnet",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/virtualNetworks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "networkType": "Transparent",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/RestartVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/RestartVirtualMachineInstance.json
new file mode 100644
index 000000000000..0048ac006e26
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/RestartVirtualMachineInstance.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/DemoArcVM"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ },
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/DemoArcVM",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/StartVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/StartVirtualMachineInstance.json
new file mode 100644
index 000000000000..0048ac006e26
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/StartVirtualMachineInstance.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/DemoArcVM"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ },
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/DemoArcVM",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/StopVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/StopVirtualMachineInstance.json
new file mode 100644
index 000000000000..0048ac006e26
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/StopVirtualMachineInstance.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/DemoArcVM"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ },
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/DemoArcVM",
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location"
+ },
+ "properties": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ },
+ "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container"
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ },
+ "securityProfile": {
+ "enableTPM": true,
+ "uefiSettings": {
+ "secureBootEnabled": true
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateGalleryImage.json
new file mode 100644
index 000000000000..af3fec44b3e7
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateGalleryImage.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "galleryImageName": "test-gallery-image",
+ "api-version": "2023-07-01-preview",
+ "galleryImages": {
+ "tags": {
+ "additionalProperties": "sample"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-galimg3325",
+ "name": "test-gallery-image",
+ "type": "Microsoft.AzureStackHCI/galleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "tags": {
+ "additionalProperties": "sample"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "containerId": "Default_Container",
+ "osType": "Linux",
+ "cloudInitDataSource": "NoCloud",
+ "hyperVGeneration": "V2",
+ "version": {
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "Succeeded"
+ },
+ "progressPercentage": 100,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ }
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateMarketplaceGalleryImage.json
new file mode 100644
index 000000000000..740b858aa5dc
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateMarketplaceGalleryImage.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "marketplaceGalleryImageName": "test-marketplce-gallery-image",
+ "api-version": "2023-07-01-preview",
+ "marketplaceGalleryImages": {
+ "tags": {
+ "additionalProperties": "sample"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image",
+ "name": "test-marketplace-gallery-image",
+ "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "tags": {
+ "additionalProperties": "sample"
+ },
+ "properties": {
+ "containerId": "Default_Container",
+ "osType": "Windows",
+ "cloudInitDataSource": "Azure",
+ "hyperVGeneration": "V1",
+ "identifier": {
+ "publisher": "myPublisherName",
+ "offer": "myOfferName",
+ "sku": "mySkuName"
+ },
+ "version": {
+ "name": "1.0.0",
+ "properties": {
+ "storageProfile": {
+ "osDiskImage": {
+ "sizeInMB": 30270
+ }
+ }
+ }
+ },
+ "status": {
+ "provisioningStatus": {
+ "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0",
+ "status": "InProgress"
+ },
+ "progressPercentage": 0,
+ "downloadStatus": {
+ "downloadSizeInMB": 9383
+ }
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateNetworkInterface.json
new file mode 100644
index 000000000000..e83f32d668b5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateNetworkInterface.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "networkInterfaceName": "test-nic",
+ "api-version": "2023-07-01-preview",
+ "networkInterfaces": {
+ "tags": {
+ "additionalProperties": "sample"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic",
+ "name": "test-nic",
+ "type": "Microsoft.AzureStackHCI/networkInterfaces",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "ipConfigurations": [
+ {
+ "name": "ipconfig-sample",
+ "properties": {
+ "subnet": {
+ "id": "test-vnet"
+ }
+ }
+ }
+ ],
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateStorageContainer.json
new file mode 100644
index 000000000000..30b1efa4e161
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateStorageContainer.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "storageContainerName": "Default_Container",
+ "api-version": "2023-07-01-preview",
+ "storageContainers": {
+ "tags": {
+ "additionalProperties": "sample"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-galimg3325",
+ "name": "Default_Container",
+ "type": "Microsoft.AzureStackHCI/storageContainers",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "tags": {
+ "additionalProperties": "sample"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "path": "C:\\container_storage"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualHardDisk.json
new file mode 100644
index 000000000000..b64e65c67894
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualHardDisk.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualHardDiskName": "test-vhd",
+ "api-version": "2023-07-01-preview",
+ "virtualHardDisks": {
+ "tags": {
+ "additionalProperties": "sample"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd",
+ "name": "test-vhd",
+ "type": "Microsoft.AzureStackHCI/virtualHardDisks",
+ "location": "West US2",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "tags": {
+ "additionalProperties": "sample"
+ },
+ "properties": {
+ "diskSizeGB": 32,
+ "blockSizeBytes": 0,
+ "logicalSectorBytes": 512,
+ "physicalSectorBytes": 512,
+ "provisioningState": "Accepted",
+ "diskFileFormat": "vhdx",
+ "hyperVGeneration": "V2",
+ "dynamic": true
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualMachineInstance.json
new file mode 100644
index 000000000000..f692a99da0fc
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualMachineInstance.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM",
+ "api-version": "2023-07-01-preview",
+ "virtualMachineInstance": {
+ "properties": {
+ "osProfile": {}
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/virtualMachineInstances",
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image"
+ }
+ },
+ "hardwareProfile": {
+ "vmSize": "Default"
+ },
+ "osProfile": {
+ "computerName": "luamaster",
+ "adminUsername": "localadmin"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "test-nic"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualNetwork.json
new file mode 100644
index 000000000000..3818b20ecb0f
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/examples/UpdateVirtualNetwork.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "virtualNetworkName": "test-vnet",
+ "api-version": "2023-07-01-preview",
+ "virtualNetworks": {
+ "tags": {
+ "additionalProperties": "sample"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualNetworks/test-vnet",
+ "name": "test-vnet",
+ "type": "Microsoft.AzureStackHCI/virtualNetworks",
+ "location": "West US2",
+ "tags": {
+ "additionalProperties": "sample"
+ },
+ "extendedLocation": {
+ "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location",
+ "type": "CustomLocation"
+ },
+ "properties": {
+ "networkType": "Transparent",
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/galleryImages.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/galleryImages.json
new file mode 100644
index 000000000000..3fa7271d3f88
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/galleryImages.json
@@ -0,0 +1,634 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "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.AzureStackHCI/galleryImages/{galleryImageName}": {
+ "get": {
+ "operationId": "GalleryImages_Get",
+ "description": "Gets a gallery image",
+ "x-ms-examples": {
+ "GetGalleryImage": {
+ "$ref": "./examples/GetGalleryImage.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/GalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GalleryImages"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "GalleryImages_CreateOrUpdate",
+ "description": "The operation to create or update a gallery image. Please note some properties can be set only during gallery image creation.",
+ "x-ms-examples": {
+ "PutGalleryImage": {
+ "$ref": "./examples/PutGalleryImage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/GalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "galleryImages",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/GalleryImages"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/GalleryImages"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/GalleryImages"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "GalleryImages_Delete",
+ "description": "The operation to delete a gallery image.",
+ "x-ms-examples": {
+ "DeleteGalleryImage": {
+ "$ref": "./examples/DeleteGalleryImage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/GalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "GalleryImages_Update",
+ "description": "The operation to update a gallery image.",
+ "x-ms-examples": {
+ "UpdateGalleryImage": {
+ "$ref": "./examples/UpdateGalleryImage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/GalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "galleryImages",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/GalleryImagesUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GalleryImages"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/galleryImages": {
+ "get": {
+ "operationId": "GalleryImages_List",
+ "description": "Lists all of the gallery images in the specified resource group. Use the nextLink property in the response to get the next page of gallery images.",
+ "x-ms-examples": {
+ "ListGalleryImageByResourceGroup": {
+ "$ref": "./examples/ListGalleryImageByResourceGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GalleryImagesListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/galleryImages": {
+ "get": {
+ "operationId": "GalleryImages_ListAll",
+ "description": "Lists all of the gallery images in the specified subscription. Use the nextLink property in the response to get the next page of gallery images.",
+ "x-ms-examples": {
+ "ListGalleryImageBySubscription": {
+ "$ref": "./examples/ListGalleryImageBySubscription.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GalleryImagesListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.AzureStackHCI/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "List all the supported operations.",
+ "operationId": "Operations_List",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The supported operations list.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ListOperations": {
+ "$ref": "./examples/ListOperations.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "GalleryImageProperties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "containerId": {
+ "type": "string",
+ "description": "Storage ContainerID of the storage container to be used for gallery image"
+ },
+ "imagePath": {
+ "type": "string",
+ "x-ms-secret": true,
+ "description": "location of the image the gallery image should be created from"
+ },
+ "osType": {
+ "type": "string",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ },
+ "description": "Operating system type that the gallery image uses [Windows, Linux]"
+ },
+ "cloudInitDataSource": {
+ "type": "string",
+ "description": "Datasource for the gallery image when provisioning with cloud-init [NoCloud, Azure]",
+ "enum": [
+ "NoCloud",
+ "Azure"
+ ],
+ "x-ms-enum": {
+ "name": "CloudInitDataSource",
+ "modelAsString": true
+ }
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine [V1, V2]",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ },
+ "identifier": {
+ "$ref": "#/definitions/GalleryImageIdentifier"
+ },
+ "version": {
+ "$ref": "#/definitions/GalleryImageVersion"
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the gallery image.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/GalleryImageStatus"
+ }
+ },
+ "required": [
+ "osType"
+ ],
+ "description": "Properties under the gallery image resource"
+ },
+ "GalleryImageStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "GalleryImage provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the gallery image"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the gallery image [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "downloadStatus": {
+ "type": "object",
+ "properties": {
+ "downloadSizeInMB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The downloaded sized of the image in MB"
+ }
+ },
+ "description": "The download status of the gallery image"
+ },
+ "progressPercentage": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The progress of the operation in percentage"
+ }
+ },
+ "description": "The observed state of gallery images"
+ },
+ "GalleryImageIdentifier": {
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "type": "string",
+ "description": "The name of the gallery image definition publisher."
+ },
+ "offer": {
+ "type": "string",
+ "description": "The name of the gallery image definition offer."
+ },
+ "sku": {
+ "type": "string",
+ "description": "The name of the gallery image definition SKU."
+ }
+ },
+ "required": [
+ "publisher",
+ "offer",
+ "sku"
+ ],
+ "description": "This is the gallery image definition identifier."
+ },
+ "GalleryImageVersion": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "This is the version of the gallery image."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/GalleryImageVersionProperties"
+ }
+ },
+ "description": "Specifies information about the gallery image version that you want to create or update."
+ },
+ "GalleryImageVersionProperties": {
+ "type": "object",
+ "properties": {
+ "storageProfile": {
+ "$ref": "#/definitions/GalleryImageVersionStorageProfile"
+ }
+ },
+ "required": [
+ "storageProfile"
+ ],
+ "description": "Describes the properties of a gallery image version."
+ },
+ "GalleryImageVersionStorageProfile": {
+ "type": "object",
+ "properties": {
+ "osDiskImage": {
+ "$ref": "#/definitions/GalleryOSDiskImage"
+ }
+ },
+ "description": "This is the storage profile of a Gallery Image Version."
+ },
+ "GalleryOSDiskImage": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/GalleryDiskImage"
+ }
+ ],
+ "description": "This is the OS disk image."
+ },
+ "GalleryDiskImage": {
+ "type": "object",
+ "properties": {
+ "sizeInMB": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "This property indicates the size of the VHD to be created."
+ }
+ },
+ "description": "This is the disk image base class."
+ },
+ "GalleryImages": {
+ "type": "object",
+ "description": "The gallery images resource definition.",
+ "x-ms-azure-resource": true,
+ "x-ms-client-flatten": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/GalleryImageProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "GalleryImagesUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "The gallery images resource patch definition."
+ },
+ "GalleryImagesListResult": {
+ "type": "object",
+ "description": "List of gallery images.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GalleryImages"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "Link to the next set of results.",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "GalleryImageNameParameter": {
+ "name": "galleryImageName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[a-zA-Z0-9]$",
+ "x-ms-parameter-location": "method",
+ "maxLength": 80,
+ "minLength": 1,
+ "description": "Name of the gallery image"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/marketplaceGalleryImages.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/marketplaceGalleryImages.json
new file mode 100644
index 000000000000..34070e80af8e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/marketplaceGalleryImages.json
@@ -0,0 +1,587 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "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.AzureStackHCI/marketplaceGalleryImages/{marketplaceGalleryImageName}": {
+ "get": {
+ "operationId": "MarketplaceGalleryImages_Get",
+ "description": "Gets a marketplace gallery image",
+ "x-ms-examples": {
+ "GetMarketplaceGalleryImage": {
+ "$ref": "./examples/GetMarketplaceGalleryImage.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MarketplaceGalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImages"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "MarketplaceGalleryImages_CreateOrUpdate",
+ "description": "The operation to create or update a marketplace gallery image. Please note some properties can be set only during marketplace gallery image creation.",
+ "x-ms-examples": {
+ "PutMarketplaceGalleryImage": {
+ "$ref": "./examples/PutMarketplaceGalleryImage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MarketplaceGalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "marketplaceGalleryImages",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImages"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updates the marketplace gallery image resource.",
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImages"
+ }
+ },
+ "201": {
+ "description": "Creates the marketplace gallery image resource.",
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImages"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "MarketplaceGalleryImages_Delete",
+ "description": "The operation to delete a marketplace gallery image.",
+ "x-ms-examples": {
+ "DeleteMarketplaceGalleryImage": {
+ "$ref": "./examples/DeleteMarketplaceGalleryImage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MarketplaceGalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Deleted the marketplace gallery image resource."
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "MarketplaceGalleryImages_Update",
+ "description": "The operation to update a marketplace gallery image.",
+ "x-ms-examples": {
+ "UpdateMarketplaceGalleryImage": {
+ "$ref": "./examples/UpdateMarketplaceGalleryImage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MarketplaceGalleryImageNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "marketplaceGalleryImages",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImagesUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updates the marketplace gallery image resource.",
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImages"
+ }
+ },
+ "202": {
+ "description": "Updates the marketplace gallery image resource.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages": {
+ "get": {
+ "operationId": "MarketplaceGalleryImages_List",
+ "description": "Lists all of the marketplace gallery images in the specified resource group. Use the nextLink property in the response to get the next page of marketplace gallery images.",
+ "x-ms-examples": {
+ "ListMarketplaceGalleryImageByResourceGroup": {
+ "$ref": "./examples/ListMarketplaceGalleryImageByResourceGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Lists all marketplace gallery images under the resource group.",
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImagesListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages": {
+ "get": {
+ "operationId": "MarketplaceGalleryImages_ListAll",
+ "description": "Lists all of the marketplace gallery images in the specified subscription. Use the nextLink property in the response to get the next page of marketplace gallery images.",
+ "x-ms-examples": {
+ "ListMarketplaceGalleryImageBySubscription": {
+ "$ref": "./examples/ListMarketplaceGalleryImageBySubscription.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Lists all marketplace gallery images under the subscription.",
+ "schema": {
+ "$ref": "#/definitions/MarketplaceGalleryImagesListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "MarketplaceGalleryImageProperties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "containerId": {
+ "type": "string",
+ "description": "Storage ContainerID of the storage container to be used for marketplace gallery image"
+ },
+ "osType": {
+ "type": "string",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ },
+ "description": "Operating system type that the gallery image uses [Windows, Linux]"
+ },
+ "cloudInitDataSource": {
+ "type": "string",
+ "description": "Datasource for the gallery image when provisioning with cloud-init [NoCloud, Azure]",
+ "enum": [
+ "NoCloud",
+ "Azure"
+ ],
+ "x-ms-enum": {
+ "name": "CloudInitDataSource",
+ "modelAsString": true
+ }
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine [V1, V2]",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ },
+ "identifier": {
+ "$ref": "#/definitions/GalleryImageIdentifier"
+ },
+ "version": {
+ "$ref": "#/definitions/GalleryImageVersion"
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the marketplace gallery image.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/MarketplaceGalleryImageStatus"
+ }
+ },
+ "required": [
+ "osType"
+ ],
+ "description": "Properties under the marketplace gallery image resource"
+ },
+ "MarketplaceGalleryImageStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "MarketplaceGalleryImage provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the gallery image"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the gallery image [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "downloadStatus": {
+ "type": "object",
+ "properties": {
+ "downloadSizeInMB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The downloaded sized of the image in MB"
+ }
+ },
+ "description": "The download status of the gallery image"
+ },
+ "progressPercentage": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The progress of the operation in percentage"
+ }
+ },
+ "description": "The observed state of marketplace gallery images"
+ },
+ "GalleryImageIdentifier": {
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "type": "string",
+ "description": "The name of the gallery image definition publisher."
+ },
+ "offer": {
+ "type": "string",
+ "description": "The name of the gallery image definition offer."
+ },
+ "sku": {
+ "type": "string",
+ "description": "The name of the gallery image definition SKU."
+ }
+ },
+ "required": [
+ "publisher",
+ "offer",
+ "sku"
+ ],
+ "description": "This is the gallery image definition identifier."
+ },
+ "GalleryImageVersion": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "This is the version of the gallery image."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/GalleryImageVersionProperties"
+ }
+ },
+ "description": "Specifies information about the gallery image version that you want to create or update."
+ },
+ "GalleryImageVersionProperties": {
+ "type": "object",
+ "properties": {
+ "storageProfile": {
+ "$ref": "#/definitions/GalleryImageVersionStorageProfile"
+ }
+ },
+ "required": [
+ "storageProfile"
+ ],
+ "description": "Describes the properties of a gallery image version."
+ },
+ "GalleryImageVersionStorageProfile": {
+ "type": "object",
+ "properties": {
+ "osDiskImage": {
+ "$ref": "#/definitions/GalleryOSDiskImage"
+ }
+ },
+ "description": "This is the storage profile of a Gallery Image Version."
+ },
+ "GalleryOSDiskImage": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/GalleryDiskImage"
+ }
+ ],
+ "description": "This is the OS disk image."
+ },
+ "GalleryDiskImage": {
+ "type": "object",
+ "properties": {
+ "sizeInMB": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "This property indicates the size of the VHD to be created."
+ }
+ },
+ "description": "This is the disk image base class."
+ },
+ "MarketplaceGalleryImages": {
+ "type": "object",
+ "description": "The marketplace gallery image resource definition.",
+ "x-ms-azure-resource": true,
+ "x-ms-client-flatten": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/MarketplaceGalleryImageProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "MarketplaceGalleryImagesUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "The marketplace gallery image resource patch definition."
+ },
+ "MarketplaceGalleryImagesListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MarketplaceGalleryImages"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "MarketplaceGalleryImageNameParameter": {
+ "name": "marketplaceGalleryImageName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[a-zA-Z0-9]$",
+ "x-ms-parameter-location": "method",
+ "maxLength": 80,
+ "minLength": 1,
+ "description": "Name of the marketplace gallery image"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/networkInterfaces.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/networkInterfaces.json
new file mode 100644
index 000000000000..68bdef3fe432
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/networkInterfaces.json
@@ -0,0 +1,517 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "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.AzureStackHCI/networkInterfaces/{networkInterfaceName}": {
+ "get": {
+ "operationId": "NetworkInterfaces_Get",
+ "description": "Gets a network interface",
+ "x-ms-examples": {
+ "GetNetworkInterface": {
+ "$ref": "./examples/GetNetworkInterface.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/NetworkInterfaceNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfaces"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "NetworkInterfaces_CreateOrUpdate",
+ "description": "The operation to create or update a network interface. Please note some properties can be set only during network interface creation.",
+ "x-ms-examples": {
+ "PutNetworkInterface": {
+ "$ref": "./examples/PutNetworkInterface.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/NetworkInterfaceNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "networkInterfaces",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfaces"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfaces"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfaces"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "NetworkInterfaces_Delete",
+ "description": "The operation to delete a network interface.",
+ "x-ms-examples": {
+ "DeleteNetworkInterface": {
+ "$ref": "./examples/DeleteNetworkInterface.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/NetworkInterfaceNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "NetworkInterfaces_Update",
+ "description": "The operation to update a network interface.",
+ "x-ms-examples": {
+ "UpdateNetworkInterface": {
+ "$ref": "./examples/UpdateNetworkInterface.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/NetworkInterfaceNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "networkInterfaces",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfacesUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfaces"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/networkInterfaces": {
+ "get": {
+ "operationId": "NetworkInterfaces_List",
+ "description": "Lists all of the network interfaces in the specified resource group. Use the nextLink property in the response to get the next page of network interfaces.",
+ "x-ms-examples": {
+ "ListNetworkInterfaceByResourceGroup": {
+ "$ref": "./examples/ListNetworkInterfaceByResourceGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfacesListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/networkInterfaces": {
+ "get": {
+ "operationId": "NetworkInterfaces_ListAll",
+ "description": "Lists all of the network interfaces in the specified subscription. Use the nextLink property in the response to get the next page of network interfaces.",
+ "x-ms-examples": {
+ "ListNetworkInterfaceBySubscription": {
+ "$ref": "./examples/ListNetworkInterfaceBySubscription.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/NetworkInterfacesListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "InterfaceDNSSettings": {
+ "type": "object",
+ "properties": {
+ "dnsServers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of DNS server IP Addresses for the interface"
+ }
+ }
+ },
+ "NetworkInterfaceProperties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "ipConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IPConfiguration"
+ },
+ "description": "IPConfigurations - A list of IPConfigurations of the network interface.",
+ "x-ms-identifiers": []
+ },
+ "macAddress": {
+ "type": "string",
+ "description": "MacAddress - The MAC address of the network interface."
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/InterfaceDNSSettings",
+ "description": "DNS Settings for the interface"
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the network interface.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/NetworkInterfaceStatus"
+ }
+ },
+ "description": "Properties under the network interface resource"
+ },
+ "NetworkInterfaceStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "NetworkInterface provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the network interface"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the network interface [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "description": "The observed state of network interfaces"
+ },
+ "IPConfiguration": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "name": {
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ],
+ "description": "Name - The name of the resource that is unique within a resource group. This name can be used to access the resource."
+ },
+ "properties": {
+ "type": "object",
+ "properties": {
+ "gateway": {
+ "x-ms-client-flatten": true,
+ "type": "string",
+ "description": "Gateway for network interface"
+ },
+ "prefixLength": {
+ "type": "string",
+ "description": "prefixLength for network interface"
+ },
+ "privateIPAddress": {
+ "type": "string",
+ "description": "PrivateIPAddress - Private IP address of the IP configuration."
+ },
+ "subnet": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "ID - The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..."
+ }
+ },
+ "description": "Subnet - Name of Subnet bound to the IP configuration."
+ }
+ },
+ "description": "InterfaceIPConfigurationPropertiesFormat properties of IP configuration."
+ }
+ },
+ "description": "InterfaceIPConfiguration iPConfiguration in a network interface."
+ },
+ "NetworkInterfaces": {
+ "type": "object",
+ "description": "The network interface resource definition.",
+ "x-ms-azure-resource": true,
+ "x-ms-client-flatten": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/NetworkInterfaceProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "NetworkInterfacesUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "The network interface resource patch definition."
+ },
+ "NetworkInterfacesListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInterfaces"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "NetworkInterfaceNameParameter": {
+ "name": "networkInterfaceName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$",
+ "x-ms-parameter-location": "method",
+ "maxLength": 80,
+ "minLength": 1,
+ "description": "Name of the network interface"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/storageContainers.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/storageContainers.json
new file mode 100644
index 000000000000..7ace3c26fc06
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/storageContainers.json
@@ -0,0 +1,458 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "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.AzureStackHCI/storageContainers/{storageContainerName}": {
+ "get": {
+ "operationId": "StorageContainers_Get",
+ "description": "Gets a storage container",
+ "x-ms-examples": {
+ "GetStorageContainer": {
+ "$ref": "./examples/GetStorageContainer.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/StorageContainerNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/StorageContainers"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "StorageContainers_CreateOrUpdate",
+ "description": "The operation to create or update a storage container. Please note some properties can be set only during storage container creation.",
+ "x-ms-examples": {
+ "PutStorageContainer": {
+ "$ref": "./examples/PutStorageContainer.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/StorageContainerNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "storageContainers",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StorageContainers"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/StorageContainers"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/StorageContainers"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "StorageContainers_Delete",
+ "description": "The operation to delete a storage container.",
+ "x-ms-examples": {
+ "DeleteStorageContainer": {
+ "$ref": "./examples/DeleteStorageContainer.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/StorageContainerNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "StorageContainers_Update",
+ "description": "The operation to update a storage container.",
+ "x-ms-examples": {
+ "UpdateStorageContainer": {
+ "$ref": "./examples/UpdateStorageContainer.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/StorageContainerNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "storageContainers",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StorageContainersUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/StorageContainers"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/storageContainers": {
+ "get": {
+ "operationId": "StorageContainers_List",
+ "description": "Lists all of the storage containers in the specified resource group. Use the nextLink property in the response to get the next page of storage containers.",
+ "x-ms-examples": {
+ "ListStorageContainerByResourceGroup": {
+ "$ref": "./examples/ListStorageContainerByResourceGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/StorageContainersListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/storageContainers": {
+ "get": {
+ "operationId": "StorageContainers_ListAll",
+ "description": "Lists all of the storage containers in the specified subscription. Use the nextLink property in the response to get the next page of storage containers.",
+ "x-ms-examples": {
+ "ListStorageContainerBySubscription": {
+ "$ref": "./examples/ListStorageContainerBySubscription.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/StorageContainersListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "StorageContainerProperties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "path": {
+ "type": "string",
+ "description": "Path of the storage container on the disk"
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the storage container.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/StorageContainerStatus"
+ }
+ },
+ "description": "Properties under the storage container resource"
+ },
+ "StorageContainerStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "StorageContainer provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "availableSizeMB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Amount of space available on the disk in MB"
+ },
+ "containerSizeMB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Total size of the disk in MB"
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the storage container"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the storage container [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "description": "The observed state of storage containers"
+ },
+ "StorageContainers": {
+ "type": "object",
+ "description": "The storage container resource definition.",
+ "x-ms-azure-resource": true,
+ "x-ms-client-flatten": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/StorageContainerProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "StorageContainersUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "The storage container resource patch definition."
+ },
+ "StorageContainersListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageContainers"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "StorageContainerNameParameter": {
+ "name": "storageContainerName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$",
+ "x-ms-parameter-location": "method",
+ "maxLength": 80,
+ "minLength": 1,
+ "description": "Name of the storage container"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualHardDisks.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualHardDisks.json
new file mode 100644
index 000000000000..cf206eb8a227
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualHardDisks.json
@@ -0,0 +1,492 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "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.AzureStackHCI/virtualHardDisks/{virtualHardDiskName}": {
+ "get": {
+ "operationId": "VirtualHardDisks_Get",
+ "description": "Gets a virtual hard disk",
+ "x-ms-examples": {
+ "GetVirtualHardDisk": {
+ "$ref": "./examples/GetVirtualHardDisk.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualHardDiskNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisks"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "VirtualHardDisks_CreateOrUpdate",
+ "description": "The operation to create or update a virtual hard disk. Please note some properties can be set only during virtual hard disk creation.",
+ "x-ms-examples": {
+ "PutVirtualHardDisk": {
+ "$ref": "./examples/PutVirtualHardDisk.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualHardDiskNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "virtualHardDisks",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisks"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisks"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisks"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "VirtualHardDisks_Delete",
+ "description": "The operation to delete a virtual hard disk.",
+ "x-ms-examples": {
+ "DeleteVirtualHardDisk": {
+ "$ref": "./examples/DeleteVirtualHardDisk.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualHardDiskNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "VirtualHardDisks_Update",
+ "description": "The operation to update a virtual hard disk.",
+ "x-ms-examples": {
+ "UpdateVirtualHardDisk": {
+ "$ref": "./examples/UpdateVirtualHardDisk.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualHardDiskNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "virtualHardDisks",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisksUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisks"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/virtualHardDisks": {
+ "get": {
+ "operationId": "VirtualHardDisks_List",
+ "description": "Lists all of the virtual hard disks in the specified resource group. Use the nextLink property in the response to get the next page of virtual hard disks.",
+ "x-ms-examples": {
+ "ListVirtualHardDiskByResourceGroup": {
+ "$ref": "./examples/ListVirtualHardDiskByResourceGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisksListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/virtualHardDisks": {
+ "get": {
+ "operationId": "VirtualHardDisks_ListAll",
+ "description": "Lists all of the virtual hard disks in the specified subscription. Use the nextLink property in the response to get the next page of virtual hard disks.",
+ "x-ms-examples": {
+ "ListVirtualHardDiskBySubscription": {
+ "$ref": "./examples/ListVirtualHardDiskBySubscription.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualHardDisksListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "VirtualHardDiskProperties": {
+ "type": "object",
+ "properties": {
+ "blockSizeBytes": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Size of the disk in GB"
+ },
+ "dynamic": {
+ "type": "boolean",
+ "description": "Boolean for enabling dynamic sizing on the virtual hard disk"
+ },
+ "logicalSectorBytes": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "physicalSectorBytes": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine [V1, V2]",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ },
+ "diskFileFormat": {
+ "type": "string",
+ "description": "The format of the actual VHD file [vhd, vhdx]",
+ "enum": [
+ "vhdx",
+ "vhd"
+ ],
+ "x-ms-enum": {
+ "name": "DiskFileFormat",
+ "modelAsString": true
+ }
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the virtual hard disk.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "containerId": {
+ "type": "string",
+ "description": "Storage ContainerID of the storage container to be used for VHD"
+ },
+ "status": {
+ "$ref": "#/definitions/VirtualHardDiskStatus"
+ }
+ },
+ "description": "Properties under the virtual hard disk resource"
+ },
+ "VirtualHardDiskStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "VirtualHardDisk provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the virtual hard disk"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the virtual hard disk [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "description": "The observed state of virtual hard disks"
+ },
+ "VirtualHardDisks": {
+ "type": "object",
+ "description": "The virtual hard disk resource definition.",
+ "x-ms-azure-resource": true,
+ "x-ms-client-flatten": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualHardDiskProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "VirtualHardDisksUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "The virtual hard disk resource patch definition."
+ },
+ "VirtualHardDisksListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualHardDisks"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "VirtualHardDiskNameParameter": {
+ "name": "virtualHardDiskName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[a-zA-Z0-9]$",
+ "x-ms-parameter-location": "method",
+ "maxLength": 80,
+ "minLength": 1,
+ "description": "Name of the virtual hard disk"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualMachineInstances.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualMachineInstances.json
new file mode 100644
index 000000000000..5522d09809a6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualMachineInstances.json
@@ -0,0 +1,1539 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default": {
+ "get": {
+ "operationId": "VirtualMachineInstances_Get",
+ "description": "Gets a virtual machine instance",
+ "x-ms-examples": {
+ "GetVirtualMachineInstance": {
+ "$ref": "./examples/GetVirtualMachineInstance.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "VirtualMachineInstances_CreateOrUpdate",
+ "description": "The operation to create or update a virtual machine instance. Please note some properties can be set only during virtual machine instance creation.",
+ "x-ms-examples": {
+ "PutVirtualMachineInstanceWithGalleryImage": {
+ "$ref": "./examples/PutVirtualMachineInstanceWithGalleryImage.json"
+ },
+ "PutVirtualMachineInstanceWithMarketplaceGalleryImage": {
+ "$ref": "./examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json"
+ },
+ "PutVirtualMachineInstanceWithOsDisk": {
+ "$ref": "./examples/PutVirtualMachineInstanceWithOsDisk.json"
+ },
+ "PutVirtualMachineInstanceWithVMConfigAgent": {
+ "$ref": "./examples/PutVirtualMachineInstanceWithVMConfigAgent.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "virtualMachineInstance",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "VirtualMachineInstances_Delete",
+ "description": "The operation to delete a virtual machine instance.",
+ "x-ms-examples": {
+ "DeleteVirtualMachine": {
+ "$ref": "./examples/DeleteVirtualMachineInstance.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "VirtualMachineInstances_Update",
+ "description": "The operation to update a virtual machine instance.",
+ "x-ms-examples": {
+ "UpdateVirtualMachine": {
+ "$ref": "./examples/UpdateVirtualMachineInstance.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "virtualMachineInstance",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstanceUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/start": {
+ "post": {
+ "operationId": "VirtualMachineInstances_Start",
+ "description": "The operation to start a virtual machine instance.",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "StartVirtualMachine": {
+ "$ref": "./examples/StartVirtualMachineInstance.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/stop": {
+ "post": {
+ "operationId": "VirtualMachineInstances_Stop",
+ "description": "The operation to stop a virtual machine instance.",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "StopVirtualMachine": {
+ "$ref": "./examples/StopVirtualMachineInstance.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/restart": {
+ "post": {
+ "operationId": "VirtualMachineInstances_Restart",
+ "description": "The operation to restart a virtual machine instance.",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "RestartVirtualMachine": {
+ "$ref": "./examples/RestartVirtualMachineInstance.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances": {
+ "get": {
+ "operationId": "VirtualMachineInstances_List",
+ "description": "Lists all of the virtual machine instances within the specified parent resource.",
+ "x-ms-examples": {
+ "ListVirtualMachineInstances": {
+ "$ref": "./examples/ListVirtualMachineInstances.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstanceListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata/default": {
+ "get": {
+ "tags": [
+ "HybridIdentityMetadata"
+ ],
+ "operationId": "HybridIdentityMetadata_Get",
+ "summary": "Gets HybridIdentityMetadata.",
+ "description": "Implements HybridIdentityMetadata GET method.",
+ "x-ms-examples": {
+ "GetHybridIdentityMetadata": {
+ "$ref": "./examples/GetHybridIdentityMetadata.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HybridIdentityMetadata"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata": {
+ "get": {
+ "tags": [
+ "HybridIdentityMetadata"
+ ],
+ "operationId": "HybridIdentityMetadata_List",
+ "summary": "Implements GET HybridIdentityMetadata in a vm.",
+ "description": "Returns the list of HybridIdentityMetadata of the given vm.",
+ "x-ms-examples": {
+ "HybridIdentityMetadataListByVirtualMachineInstances": {
+ "$ref": "./examples/HybridIdentityMetadata_List.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HybridIdentityMetadataList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default": {
+ "put": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgent_Create",
+ "description": "Create Or Update GuestAgent.",
+ "summary": "Implements GuestAgent PUT method.",
+ "x-ms-examples": {
+ "CreateGuestAgent": {
+ "$ref": "./examples/CreateGuestAgent.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgent_Get",
+ "summary": "Gets GuestAgent.",
+ "description": "Implements GuestAgent GET method.",
+ "x-ms-examples": {
+ "GetGuestAgent": {
+ "$ref": "./examples/GetGuestAgent.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgent_Delete",
+ "summary": "Deleted an GuestAgent.",
+ "description": "Implements GuestAgent DELETE method.",
+ "x-ms-examples": {
+ "DeleteGuestAgent": {
+ "$ref": "./examples/DeleteGuestAgent.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents": {
+ "get": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgents_List",
+ "summary": "Implements GET GuestAgent in a vm.",
+ "description": "Returns the list of GuestAgent of the given vm.",
+ "x-ms-examples": {
+ "GuestAgentListByVirtualMachineInstances": {
+ "$ref": "./examples/GuestAgent_List.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ResourceUriParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GuestAgentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "VirtualMachineInstanceProperties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "hardwareProfile": {
+ "type": "object",
+ "properties": {
+ "vmSize": {
+ "type": "string",
+ "enum": [
+ "Default",
+ "Standard_A2_v2",
+ "Standard_A4_v2",
+ "Standard_D2s_v3",
+ "Standard_D4s_v3",
+ "Standard_D8s_v3",
+ "Standard_D16s_v3",
+ "Standard_D32s_v3",
+ "Standard_DS2_v2",
+ "Standard_DS3_v2",
+ "Standard_DS4_v2",
+ "Standard_DS5_v2",
+ "Standard_DS13_v2",
+ "Standard_K8S_v1",
+ "Standard_K8S2_v1",
+ "Standard_K8S3_v1",
+ "Standard_K8S4_v1",
+ "Standard_NK6",
+ "Standard_NK12",
+ "Standard_NV6",
+ "Standard_NV12",
+ "Standard_K8S5_v1",
+ "Custom"
+ ],
+ "default": "Default",
+ "x-ms-enum": {
+ "name": "VmSizeEnum",
+ "modelAsString": true
+ }
+ },
+ "processors": {
+ "type": "integer",
+ "format": "int32",
+ "description": "number of processors for the virtual machine instance"
+ },
+ "memoryMB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "RAM in MB for the virtual machine instance"
+ },
+ "dynamicMemoryConfig": {
+ "type": "object",
+ "properties": {
+ "maximumMemoryMB": {
+ "type": "integer",
+ "format": "int64"
+ },
+ "minimumMemoryMB": {
+ "type": "integer",
+ "format": "int64"
+ },
+ "targetMemoryBuffer": {
+ "type": "integer",
+ "description": "Defines the amount of extra memory that should be reserved for a virtual machine instance at runtime, as a percentage of the total memory that the virtual machine instance is thought to need. This only applies to virtual systems with dynamic memory enabled. This property can be in the range of 5 to 2000.",
+ "format": "int32"
+ }
+ }
+ }
+ },
+ "description": "HardwareProfile - Specifies the hardware settings for the virtual machine instance."
+ },
+ "networkProfile": {
+ "type": "object",
+ "properties": {
+ "networkInterfaces": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "ID - Resource Id of the network interface"
+ }
+ }
+ },
+ "description": "NetworkInterfaces - list of network interfaces to be attached to the virtual machine instance"
+ }
+ },
+ "description": "NetworkProfile - describes the network configuration the virtual machine instance"
+ },
+ "osProfile": {
+ "type": "object",
+ "properties": {
+ "adminPassword": {
+ "type": "string",
+ "x-ms-secret": true,
+ "description": "AdminPassword - admin password",
+ "x-ms-mutability": [
+ "create"
+ ]
+ },
+ "adminUsername": {
+ "type": "string",
+ "description": "AdminUsername - admin username"
+ },
+ "computerName": {
+ "type": "string",
+ "description": "ComputerName - name of the compute"
+ },
+ "linuxConfiguration": {
+ "type": "object",
+ "properties": {
+ "disablePasswordAuthentication": {
+ "type": "boolean",
+ "description": "DisablePasswordAuthentication - whether password authentication should be disabled"
+ },
+ "ssh": {
+ "$ref": "#/definitions/SshConfiguration",
+ "description": "Specifies the ssh key configuration for a Linux OS."
+ },
+ "provisionVMAgent": {
+ "type": "boolean",
+ "default": true,
+ "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process."
+ },
+ "provisionVMConfigAgent": {
+ "type": "boolean",
+ "default": true,
+ "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process."
+ }
+ },
+ "description": "LinuxConfiguration - linux specific configuration values for the virtual machine instance"
+ },
+ "windowsConfiguration": {
+ "type": "object",
+ "properties": {
+ "enableAutomaticUpdates": {
+ "type": "boolean",
+ "description": "Whether to EnableAutomaticUpdates on the machine"
+ },
+ "ssh": {
+ "$ref": "#/definitions/SshConfiguration",
+ "description": "Specifies the ssh key configuration for Windows OS."
+ },
+ "timeZone": {
+ "type": "string",
+ "description": "TimeZone for the virtual machine instance"
+ },
+ "provisionVMAgent": {
+ "type": "boolean",
+ "default": true,
+ "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process."
+ },
+ "provisionVMConfigAgent": {
+ "type": "boolean",
+ "default": true,
+ "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process."
+ }
+ },
+ "description": "Windows Configuration for the virtual machine instance "
+ }
+ },
+ "description": "OsProfile - describes the configuration of the operating system and sets login data"
+ },
+ "securityProfile": {
+ "type": "object",
+ "properties": {
+ "enableTPM": {
+ "type": "boolean",
+ "default": false
+ },
+ "uefiSettings": {
+ "type": "object",
+ "properties": {
+ "secureBootEnabled": {
+ "type": "boolean",
+ "default": false,
+ "description": "Specifies whether secure boot should be enabled on the virtual machine instance."
+ }
+ }
+ },
+ "securityType": {
+ "type": "string",
+ "description": "Specifies the SecurityType of the virtual machine. EnableTPM and SecureBootEnabled must be set to true for SecurityType to function.",
+ "enum": [
+ "TrustedLaunch",
+ "ConfidentialVM"
+ ],
+ "x-ms-enum": {
+ "name": "SecurityTypes",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "SecurityProfile - Specifies the security settings for the virtual machine instance."
+ },
+ "storageProfile": {
+ "type": "object",
+ "properties": {
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of the data disk"
+ }
+ }
+ },
+ "description": "adds data disks to the virtual machine instance"
+ },
+ "imageReference": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ],
+ "description": "Resource ID of the image"
+ }
+ },
+ "description": "Which Image to use for the virtual machine instance"
+ },
+ "osDisk": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of the OS disk"
+ },
+ "osType": {
+ "type": "string",
+ "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD. Possible values are: **Windows,** **Linux.**",
+ "enum": [
+ "Linux",
+ "Windows"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ }
+ },
+ "description": "VHD to attach as OS disk"
+ },
+ "vmConfigStoragePathId": {
+ "type": "string",
+ "description": "Id of the storage container that hosts the VM configuration file"
+ }
+ },
+ "description": "StorageProfile - contains information about the disks and storage information for the virtual machine instance"
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the virtual machine instance.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "instanceView": {
+ "$ref": "#/definitions/VirtualMachineInstanceView",
+ "readOnly": true,
+ "description": "The virtual machine instance view."
+ },
+ "status": {
+ "$ref": "#/definitions/VirtualMachineInstanceStatus"
+ },
+ "guestAgentInstallStatus": {
+ "description": "Guest agent install status.",
+ "$ref": "#/definitions/GuestAgentInstallStatus"
+ },
+ "vmId": {
+ "description": "Unique identifier for the vm resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceUid": {
+ "description": "Unique identifier defined by ARC to identify the guest of the VM.",
+ "type": "string"
+ }
+ },
+ "description": "Properties under the virtual machine instance resource"
+ },
+ "SshPublicKey": {
+ "type": "object",
+ "properties": {
+ "path": {
+ "type": "string",
+ "description": "Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys"
+ },
+ "keyData": {
+ "type": "string",
+ "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format.
For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
+ }
+ },
+ "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed."
+ },
+ "SshConfiguration": {
+ "type": "object",
+ "properties": {
+ "publicKeys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKey"
+ },
+ "x-ms-identifiers": [
+ "path"
+ ],
+ "description": "The list of SSH public keys used to authenticate with linux based VMs."
+ }
+ },
+ "description": "SSH configuration for Linux based VMs running on Azure"
+ },
+ "VirtualMachineInstanceStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "VirtualMachine provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "powerState": {
+ "type": "string",
+ "description": "The power state of the virtual machine instance",
+ "enum": [
+ "Deallocated",
+ "Deallocating",
+ "Running",
+ "Starting",
+ "Stopped",
+ "Stopping",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "name": "PowerStateEnum",
+ "modelAsString": true
+ }
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the virtual machine instance"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the virtual machine instance [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "description": "The observed state of virtual machine instances"
+ },
+ "VirtualMachineInstance": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineInstanceProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "description": "The virtual machine instance resource definition."
+ },
+ "VirtualMachineInstanceView": {
+ "type": "object",
+ "properties": {
+ "vmAgent": {
+ "$ref": "#/definitions/VirtualMachineVMConfigAgentInstanceView",
+ "description": "The VM Config Agent running on the virtual machine."
+ }
+ },
+ "description": "The instance view of a virtual machine."
+ },
+ "VirtualMachineVMConfigAgentInstanceView": {
+ "type": "object",
+ "properties": {
+ "vmVMConfigAgentVersion": {
+ "type": "string",
+ "description": "The VM Config Agent full version."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of the VM Config Agent running on the virtual machine."
+ },
+ "InstanceViewStatus": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "The status code."
+ },
+ "level": {
+ "type": "string",
+ "description": "The level code.",
+ "enum": [
+ "Info",
+ "Warning",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "name": "StatusLevelTypes",
+ "modelAsString": true
+ }
+ },
+ "displayStatus": {
+ "type": "string",
+ "description": "The short localizable label for the status."
+ },
+ "message": {
+ "type": "string",
+ "description": "The detailed status message, including for alerts and error messages."
+ },
+ "time": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The time of the status."
+ }
+ },
+ "description": "Instance view status."
+ },
+ "HardwareProfileUpdate": {
+ "type": "object",
+ "properties": {
+ "vmSize": {
+ "type": "string",
+ "enum": [
+ "Default",
+ "Standard_A2_v2",
+ "Standard_A4_v2",
+ "Standard_D2s_v3",
+ "Standard_D4s_v3",
+ "Standard_D8s_v3",
+ "Standard_D16s_v3",
+ "Standard_D32s_v3",
+ "Standard_DS2_v2",
+ "Standard_DS3_v2",
+ "Standard_DS4_v2",
+ "Standard_DS5_v2",
+ "Standard_DS13_v2",
+ "Standard_K8S_v1",
+ "Standard_K8S2_v1",
+ "Standard_K8S3_v1",
+ "Standard_K8S4_v1",
+ "Standard_NK6",
+ "Standard_NK12",
+ "Standard_NV6",
+ "Standard_NV12",
+ "Standard_K8S5_v1",
+ "Custom"
+ ],
+ "default": "Default",
+ "x-ms-enum": {
+ "name": "VmSizeEnum",
+ "modelAsString": true
+ }
+ },
+ "processors": {
+ "type": "integer",
+ "format": "int32",
+ "description": "number of processors for the virtual machine instance"
+ },
+ "memoryMB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "RAM in MB for the virtual machine instance"
+ }
+ },
+ "description": "HardwareProfile - Specifies the hardware settings for the virtual machine instance."
+ },
+ "NetworkProfileUpdate": {
+ "type": "object",
+ "properties": {
+ "networkInterfaces": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "ID - Resource ID of the network interface"
+ }
+ }
+ },
+ "description": "NetworkInterfaces - list of network interfaces to be attached to the virtual machine instance"
+ }
+ },
+ "description": "NetworkProfile - describes the network update configuration the virtual machine instance"
+ },
+ "StorageProfileUpdate": {
+ "type": "object",
+ "properties": {
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ }
+ }
+ },
+ "description": "adds data disks to the virtual machine instance for the update call"
+ }
+ }
+ },
+ "OsProfileUpdate": {
+ "type": "object",
+ "properties": {
+ "computerName": {
+ "type": "string",
+ "description": "ComputerName - name of the computer"
+ },
+ "linuxConfiguration": {
+ "type": "object",
+ "properties": {
+ "provisionVMAgent": {
+ "type": "boolean",
+ "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process."
+ },
+ "provisionVMConfigAgent": {
+ "type": "boolean",
+ "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process."
+ }
+ }
+ },
+ "windowsConfiguration": {
+ "type": "object",
+ "properties": {
+ "provisionVMAgent": {
+ "type": "boolean",
+ "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process."
+ },
+ "provisionVMConfigAgent": {
+ "type": "boolean",
+ "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process."
+ }
+ }
+ }
+ },
+ "description": "OsProfile - describes the update configuration of the operating system"
+ },
+ "VirtualMachineInstanceUpdateProperties": {
+ "description": "Defines the resource properties for the update.",
+ "type": "object",
+ "properties": {
+ "hardwareProfile": {
+ "$ref": "#/definitions/HardwareProfileUpdate"
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/StorageProfileUpdate"
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/NetworkProfileUpdate"
+ },
+ "osProfile": {
+ "$ref": "#/definitions/OsProfileUpdate"
+ }
+ }
+ },
+ "VirtualMachineInstanceUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/VirtualMachineInstanceUpdateProperties"
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity"
+ }
+ },
+ "description": "The virtual machine instance resource patch definition."
+ },
+ "VirtualMachineInstanceListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ },
+ "GuestAgentInstallStatus": {
+ "description": "Defines the status of a guest agent installation.",
+ "type": "object",
+ "properties": {
+ "vmUuid": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies the VM's unique SMBIOS ID."
+ },
+ "status": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The installation status of the hybrid machine agent installation.",
+ "enum": [
+ "Succeeded",
+ "InProgress",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "StatusTypes",
+ "modelAsString": true
+ }
+ },
+ "lastStatusChange": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The time of the last status change."
+ },
+ "agentVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The hybrid machine agent full version."
+ },
+ "errorDetails": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail"
+ },
+ "x-ms-identifiers": [],
+ "description": "Details about the error state."
+ }
+ }
+ },
+ "HybridIdentityMetadataList": {
+ "description": "List of HybridIdentityMetadata.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of HybridIdentityMetadata.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of HybridIdentityMetadata",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HybridIdentityMetadata"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "HybridIdentityMetadata": {
+ "description": "Defines the HybridIdentityMetadata.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/HybridIdentityMetadataProperties"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData",
+ "description": "The system data."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "HybridIdentityMetadataProperties": {
+ "description": "Defines the resource properties.",
+ "type": "object",
+ "properties": {
+ "resourceUid": {
+ "description": "The unique identifier for the resource.",
+ "type": "string"
+ },
+ "publicKey": {
+ "description": "The Public Key.",
+ "type": "string"
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "GuestAgentList": {
+ "type": "object",
+ "description": "List of GuestAgent.",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of GuestAgent.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of GuestAgent",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "GuestAgent": {
+ "description": "Defines the GuestAgent.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/GuestAgentProperties"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData",
+ "description": "The system data."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "ProvisioningAction": {
+ "description": "Defines the different types of operations for guest agent.",
+ "enum": [
+ "install",
+ "uninstall",
+ "repair"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ProvisioningAction"
+ }
+ },
+ "GuestCredential": {
+ "description": "Username / Password Credentials to connect to guest.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username to connect with the guest.",
+ "type": "string"
+ },
+ "password": {
+ "description": "The password to connect with the guest.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "GuestAgentProperties": {
+ "description": "Defines the resource properties.",
+ "type": "object",
+ "properties": {
+ "credentials": {
+ "description": "Username / Password Credentials to provision guest agent.",
+ "$ref": "#/definitions/GuestCredential"
+ },
+ "httpProxyConfig": {
+ "description": "HTTP Proxy configuration for the VM.",
+ "$ref": "#/definitions/HttpProxyConfiguration"
+ },
+ "provisioningAction": {
+ "description": "The guest agent provisioning action.",
+ "$ref": "#/definitions/ProvisioningAction",
+ "type": "string"
+ },
+ "status": {
+ "description": "The guest agent status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "HttpProxyConfiguration": {
+ "description": "HTTP Proxy configuration for the VM.",
+ "type": "object",
+ "properties": {
+ "httpsProxy": {
+ "description": "The httpsProxy url.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ResourceUriParameter": {
+ "in": "path",
+ "name": "resourceUri",
+ "description": "The fully qualified Azure Resource manager identifier of the Hybrid Compute machine resource to be extended.",
+ "required": true,
+ "type": "string",
+ "x-ms-skip-url-encoding": true,
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualNetworks.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualNetworks.json
new file mode 100644
index 000000000000..48e668fde633
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualNetworks.json
@@ -0,0 +1,601 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "description": "The Microsoft.AzureStackHCI Rest API spec.",
+ "version": "2023-07-01-preview",
+ "x-ms-code-generation-settings": {
+ "name": "AzureStackHCIClient"
+ }
+ },
+ "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.AzureStackHCI/virtualNetworks/{virtualNetworkName}": {
+ "get": {
+ "operationId": "VirtualNetworks_Get",
+ "x-ms-examples": {
+ "GetVirtualNetwork": {
+ "$ref": "./examples/GetVirtualNetwork.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualNetworkNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworks"
+ }
+ }
+ }
+ },
+ "put": {
+ "operationId": "VirtualNetworks_CreateOrUpdate",
+ "description": "The operation to create or update a virtual network. Please note some properties can be set only during virtual network creation.",
+ "x-ms-examples": {
+ "PutVirtualNetwork": {
+ "$ref": "./examples/PutVirtualNetwork.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualNetworkNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "virtualNetworks",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworks"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworks"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworks"
+ }
+ }
+ }
+ },
+ "delete": {
+ "operationId": "VirtualNetworks_Delete",
+ "description": "The operation to delete a virtual network.",
+ "x-ms-examples": {
+ "DeleteVirtualNetwork": {
+ "$ref": "./examples/DeleteVirtualNetwork.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualNetworkNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No content"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "VirtualNetworks_Update",
+ "description": "The operation to update a virtual network.",
+ "x-ms-examples": {
+ "UpdateVirtualNetwork": {
+ "$ref": "./examples/UpdateVirtualNetwork.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VirtualNetworkNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "virtualNetworks",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworksUpdateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworks"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/virtualNetworks": {
+ "get": {
+ "operationId": "VirtualNetworks_List",
+ "description": "Lists all of the virtual networks in the specified resource group. Use the nextLink property in the response to get the next page of virtual networks.",
+ "x-ms-examples": {
+ "ListVirtualNetworkByResourceGroup": {
+ "$ref": "./examples/ListVirtualNetworkByResourceGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworksListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/virtualNetworks": {
+ "get": {
+ "operationId": "VirtualNetworks_ListAll",
+ "description": "Lists all of the virtual networks in the specified subscription. Use the nextLink property in the response to get the next page of virtual networks.",
+ "x-ms-examples": {
+ "ListVirtualNetworkBySubscription": {
+ "$ref": "./examples/ListVirtualNetworkBySubscription.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworksListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "VirtualNetworkProperties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "dhcpOptions": {
+ "type": "object",
+ "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options.",
+ "properties": {
+ "dnsServers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of DNS servers IP addresses."
+ }
+ }
+ },
+ "networkType": {
+ "type": "string",
+ "description": "Type of the network",
+ "enum": [
+ "NAT",
+ "Transparent",
+ "L2Bridge",
+ "L2Tunnel",
+ "ICS",
+ "Private",
+ "Overlay",
+ "Internal",
+ "Mirrored"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkTypeEnum",
+ "modelAsString": true
+ }
+ },
+ "subnets": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$",
+ "description": "Name - The name of the resource that is unique within a resource group. This name can be used to access the resource."
+ },
+ "properties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "addressPrefix": {
+ "type": "string",
+ "description": "Cidr for this subnet - IPv4, IPv6"
+ },
+ "addressPrefixes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "AddressPrefixes - List of address prefixes for the subnet."
+ },
+ "ipAllocationMethod": {
+ "type": "string",
+ "description": "IPAllocationMethod - The IP address allocation method. Possible values include: 'Static', 'Dynamic'",
+ "enum": [
+ "Dynamic",
+ "Static"
+ ],
+ "x-ms-enum": {
+ "name": "IpAllocationMethodEnum",
+ "modelAsString": true
+ }
+ },
+ "ipConfigurationReferences": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "IPConfigurationID"
+ }
+ },
+ "description": "IPConfigurationReference - Describes a IPConfiguration under the virtual network"
+ },
+ "x-ms-identifiers": [],
+ "description": "IPConfigurationReferences - list of IPConfigurationReferences"
+ },
+ "routeTable": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Etag - Gets a unique read-only string that changes whenever the resource is updated."
+ },
+ "name": {
+ "type": "string",
+ "description": "Name - READ-ONLY; Resource name."
+ },
+ "properties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "routes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$",
+ "description": "Name - name of the subnet"
+ },
+ "properties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "addressPrefix": {
+ "type": "string",
+ "description": "AddressPrefix - The destination CIDR to which the route applies."
+ },
+ "nextHopIpAddress": {
+ "type": "string",
+ "description": "NextHopIPAddress - The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance."
+ }
+ },
+ "description": "RoutePropertiesFormat - Properties of the route."
+ }
+ },
+ "description": "Route is associated with a subnet."
+ },
+ "description": "Routes - Collection of routes contained within a route table.",
+ "x-ms-identifiers": []
+ }
+ },
+ "description": "RouteTablePropertiesFormat route Table resource."
+ },
+ "type": {
+ "type": "string",
+ "description": "Type - READ-ONLY; Resource type."
+ }
+ },
+ "description": "RouteTable for the subnet"
+ },
+ "vlan": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Vlan to use for the subnet"
+ }
+ },
+ "description": "SubnetProperties - Properties of the subnet."
+ }
+ },
+ "description": "Subnet subnet in a virtual network resource."
+ },
+ "description": "Subnet - list of subnets under the virtual network",
+ "x-ms-identifiers": []
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the virtual network.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Accepted",
+ "Deleting",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningStateEnum",
+ "modelAsString": true
+ }
+ },
+ "vmSwitchName": {
+ "type": "string",
+ "description": "name of the network switch to be used for VMs"
+ },
+ "status": {
+ "$ref": "#/definitions/VirtualNetworkStatus"
+ }
+ },
+ "description": "Properties under the virtual network resource"
+ },
+ "VirtualNetworkStatus": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "VirtualNetwork provisioning error code"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Descriptive error message"
+ },
+ "provisioningStatus": {
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "The ID of the operation performed on the virtual network"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the operation performed on the virtual network [Succeeded, Failed, InProgress]",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "description": "The observed state of virtual networks"
+ },
+ "VirtualNetworks": {
+ "type": "object",
+ "description": "The virtual network resource definition.",
+ "x-ms-azure-resource": true,
+ "x-ms-client-flatten": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualNetworkProperties"
+ },
+ "extendedLocation": {
+ "$ref": "./common.json#/definitions/ExtendedLocation",
+ "description": "The extendedLocation of the resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "VirtualNetworksUpdateRequest": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "The virtual network resource patch definition."
+ },
+ "VirtualNetworksListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualNetworks"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "VirtualNetworkNameParameter": {
+ "name": "virtualNetworkName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[_a-zA-Z0-9]$",
+ "x-ms-parameter-location": "method",
+ "maxLength": 64,
+ "minLength": 2,
+ "description": "Name of the virtual network"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/readme.java.md b/specification/azurestackhci/resource-manager/readme.java.md
index 15b845a9677e..abce88c82cb6 100644
--- a/specification/azurestackhci/resource-manager/readme.java.md
+++ b/specification/azurestackhci/resource-manager/readme.java.md
@@ -4,46 +4,5 @@ These settings apply only when `--java` is specified on the command line.
Please also specify `--azure-libraries-for-java-folder=`.
``` yaml $(java)
-azure-arm: true
-fluent: true
-namespace: com.microsoft.azure.management.azurestackhci
-license-header: MICROSOFT_MIT_NO_CODEGEN
-payload-flattening-threshold: 1
-output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-azurestackhci
-directive:
- - from: arcSettings.json
- where: $.definitions.ArcSetting.properties.systemData
- transform: $['x-ms-client-flatten'] = false
- reason: systemData should not be flattened
- - from: clusters.json
- where: $.definitions.Cluster.properties.systemData
- transform: $['x-ms-client-flatten'] = false
- reason: systemData should not be flattened
- - from: extensions.json
- where: $.definitions.Extension.properties.systemData
- transform: $['x-ms-client-flatten'] = false
- reason: systemData should not be flattened
-```
-
-# Validation
-
-
-### Java multi-api
-
-``` yaml $(java) && $(multiapi)
-batch:
- - tag: package-2020-10
-```
-
-### Tag: package-2020-10 and java
-
-These settings apply only when `--tag=package-2020-10 --java` is specified on the command line.
-Please also specify `--azure-libraries-for-java=`.
-
-``` yaml $(tag) == 'package-2020-10' && $(java) && $(multiapi)
-java:
- namespace: com.microsoft.azure.management.azurestackhci.v2020_10_01
- output-folder: $(azure-libraries-for-java-folder)/sdk/azurestackhci/mgmt-v2020_10_01
-regenerate-manager: true
-generate-interface: true
+rename-model: "Update:HciUpdate"
```
diff --git a/specification/azurestackhci/resource-manager/readme.md b/specification/azurestackhci/resource-manager/readme.md
index 183c4fa5c42e..66c6a742141b 100644
--- a/specification/azurestackhci/resource-manager/readme.md
+++ b/specification/azurestackhci/resource-manager/readme.md
@@ -24,17 +24,17 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor
These are the global settings for the azurestackhci.
-``` yaml
+```yaml
title: AzureStackHCIClient
description: Azure Stack HCI management service
openapi-type: arm
openapi-subtype: rpaas
-tag: package-2023-03
+tag: package-preview-2023-07
```
## Suppression
-``` yaml
+```yaml
directive:
- suppress: R3020
from:
@@ -48,6 +48,7 @@ directive:
- storageContainers.json
- virtualHardDisks.json
- virtualMachines.json
+ - virtualMachineInstances.json
- virtualNetworks.json
- offers.json
- publishers.json
@@ -56,8 +57,30 @@ directive:
- updateRuns.json
- updateSummaries.json
reason: Microsoft.AzureStackHCI is the correct name for our RP.
+suppressions:
+ - code: PathResourceProviderNamePascalCase
+ reason: We had already gone to production with "HCI" in our namespace, so changing it to "Hci" now would be disruptive.
+ - code: GetCollectionOnlyHasValueAndNextLink
+ reason: The linter is mistakenly thinking that paths for a singular resource that is always named default, like "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default," is for a collection of resources.
+ from: virtualMachineInstances.json
+ - code: TopLevelResourcesListBySubscription
+ reason: There is a 1:1 relationship between HybridCompute Machines and AzureStackHCI VirtualMachineInstances
```
+### Tag: package-preview-2023-07
+
+These settings apply only when `--tag=package-preview-2023-07` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2023-07'
+input-file:
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/galleryImages.json
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/marketplaceGalleryImages.json
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/networkInterfaces.json
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/storageContainers.json
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualHardDisks.json
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualMachineInstances.json
+ - Microsoft.AzureStackHCI/preview/2023-07-01-preview/virtualNetworks.json
+```
### Tag: package-2023-03
@@ -76,11 +99,12 @@ input-file:
- Microsoft.AzureStackHCI/stable/2023-03-01/updateSummaries.json
- Microsoft.AzureStackHCI/stable/2023-03-01/updates.json
```
+
### Tag: package-2023-02
These settings apply only when `--tag=package-2023-02` is specified on the command line.
-``` yaml $(tag) == 'package-2023-02'
+```yaml $(tag) == 'package-2023-02'
input-file:
- Microsoft.AzureStackHCI/stable/2023-02-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2023-02-01/clusters.json
@@ -98,7 +122,7 @@ input-file:
These settings apply only when `--tag=package-preview-2022-12-15` is specified on the command line.
-``` yaml $(tag) == 'package-preview-2022-12-15'
+```yaml $(tag) == 'package-preview-2022-12-15'
input-file:
- Microsoft.AzureStackHCI/preview/2022-12-15-preview/arcSettings.json
- Microsoft.AzureStackHCI/preview/2022-12-15-preview/clusters.json
@@ -124,7 +148,7 @@ input-file:
These settings apply only when `--tag=package-2022-12` is specified on the command line.
-``` yaml $(tag) == 'package-2022-12'
+```yaml $(tag) == 'package-2022-12'
input-file:
- Microsoft.AzureStackHCI/stable/2022-12-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2022-12-01/clusters.json
@@ -142,7 +166,7 @@ input-file:
These settings apply only when `--tag=package-2022-10` is specified on the command line.
-``` yaml $(tag) == 'package-2022-10'
+```yaml $(tag) == 'package-2022-10'
input-file:
- Microsoft.AzureStackHCI/stable/2022-10-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2022-10-01/clusters.json
@@ -160,7 +184,7 @@ input-file:
These settings apply only when `--tag=package-2022-09` is specified on the command line.
-``` yaml $(tag) == 'package-2022-09'
+```yaml $(tag) == 'package-2022-09'
input-file:
- Microsoft.AzureStackHCI/stable/2022-09-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2022-09-01/clusters.json
@@ -172,7 +196,7 @@ input-file:
These settings apply only when `--tag=package-2022-05` is specified on the command line.
-``` yaml $(tag) == 'package-2022-05'
+```yaml $(tag) == 'package-2022-05'
input-file:
- Microsoft.AzureStackHCI/stable/2022-05-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2022-05-01/clusters.json
@@ -184,7 +208,7 @@ input-file:
These settings apply only when `--tag=package-2022-03` is specified on the command line.
-``` yaml $(tag) == 'package-2022-03'
+```yaml $(tag) == 'package-2022-03'
input-file:
- Microsoft.AzureStackHCI/stable/2022-03-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2022-03-01/clusters.json
@@ -196,7 +220,7 @@ input-file:
These settings apply only when `--tag=package-2022-01` is specified on the command line.
-``` yaml $(tag) == 'package-2022-01'
+```yaml $(tag) == 'package-2022-01'
input-file:
- Microsoft.AzureStackHCI/stable/2022-01-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2022-01-01/clusters.json
@@ -208,7 +232,7 @@ input-file:
These settings apply only when `--tag=package-preview-2021-09` is specified on the command line.
-``` yaml $(tag) == 'package-preview-2021-09'
+```yaml $(tag) == 'package-preview-2021-09'
input-file:
- Microsoft.AzureStackHCI/preview/2021-09-01-preview/arcSettings.json
- Microsoft.AzureStackHCI/preview/2021-09-01-preview/clusters.json
@@ -227,7 +251,7 @@ input-file:
These settings apply only when `--tag=package-2021-09` is specified on the command line.
-``` yaml $(tag) == 'package-2021-09'
+```yaml $(tag) == 'package-2021-09'
input-file:
- Microsoft.AzureStackHCI/stable/2021-09-01/arcSettings.json
- Microsoft.AzureStackHCI/stable/2021-09-01/clusters.json
@@ -239,7 +263,7 @@ input-file:
These settings apply only when `--tag=package-preview-2021-07` is specified on the command line.
-``` yaml $(tag) == 'package-preview-2021-07'
+```yaml $(tag) == 'package-preview-2021-07'
input-file:
- Microsoft.AzureStackHCI/preview/2021-07-01-preview/galleryImages.json
- Microsoft.AzureStackHCI/preview/2021-07-01-preview/networkInterfaces.json
@@ -253,7 +277,7 @@ input-file:
These settings apply only when `--tag=package-preview-2021-01` is specified on the command line.
-``` yaml $(tag) == 'package-preview-2021-01'
+```yaml $(tag) == 'package-preview-2021-01'
input-file:
- Microsoft.AzureStackHCI/preview/2021-01-01-preview/arcSettings.json
- Microsoft.AzureStackHCI/preview/2021-01-01-preview/clusters.json
@@ -265,7 +289,7 @@ input-file:
These settings apply only when `--tag=package-2020-10-01` is specified on the command line.
-``` yaml $(tag) == 'package-2020-10-01'
+```yaml $(tag) == 'package-2020-10-01'
input-file:
- Microsoft.AzureStackHCI/stable/2020-10-01/azurestackhci.json
```
@@ -274,7 +298,7 @@ input-file:
These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line.
-``` yaml $(tag) == 'package-2020-03-01-preview'
+```yaml $(tag) == 'package-2020-03-01-preview'
input-file:
- Microsoft.AzureStackHCI/preview/2020-03-01-preview/azurestackhci.json
```
@@ -288,7 +312,7 @@ input-file:
This section describes what SDK should be generated by the automatic system.
This is not used by Autorest itself.
-``` yaml $(swagger-to-sdk)
+```yaml $(swagger-to-sdk)
swagger-to-sdk:
- repo: azure-sdk-for-python-track2
- repo: azure-sdk-for-java
diff --git a/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_GetCodeSigningStatus.json b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_GetCodeSigningStatus.json
new file mode 100644
index 000000000000..575d9f8e835d
--- /dev/null
+++ b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_GetCodeSigningStatus.json
@@ -0,0 +1,24 @@
+{
+ "operationId": "CertificateProfileOperations_GetCodeSigningStatus",
+ "title": "Gets the status of a codesign operation.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview",
+ "operationId": "9797c668-5b3c-4586-8e0c-2768c8160bad"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signStatus": {
+ "operationId": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signature": "OWY4NmQwODE4ODRjN2Q2NTlhMmZlYWEwYzU1YWQwMTVhM2JmNGYxYjJiMGI4MjJjZDE1ZDZjMTViMGYwMGEwOA==",
+ "signingCertificate": "N2IzZDk3OWNhODMzMGE5NGZhN2U5ZTFiNDY2ZDhiOTllMGJjZGVhMWVjOTA1OTZjMGRjYzhkN2VmNmI0MzAwYw=="
+ }
+ }
+ }
+ }
+}
diff --git a/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_GetSignRootCertificate.json b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_GetSignRootCertificate.json
new file mode 100644
index 000000000000..a30586b44a55
--- /dev/null
+++ b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_GetSignRootCertificate.json
@@ -0,0 +1,14 @@
+{
+ "operationId": "CertificateProfileOperations_GetSignRootCertificate",
+ "title": "Gets the codesigning root certificate on the certificate chain for that account and profile name.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview"
+ },
+ "responses": {
+ "200": {
+ "body": "MjUzNjlhMDQ3Yzc0YTQ3NjdiNjYzZTIzMWFlMTAxMDVkODMxM2Y5ZjNkNmU0YTVlOTQ1ZGZiMWQ5NDgzOWU0NQ=="
+ }
+ }
+}
diff --git a/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_ListSignEkus.json b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_ListSignEkus.json
new file mode 100644
index 000000000000..f02e52c98d6e
--- /dev/null
+++ b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_ListSignEkus.json
@@ -0,0 +1,19 @@
+{
+ "operationId": "CertificateProfileOperations_ListSignEkus",
+ "title": "Gets a list of extended key usage object identifiers that are allowed.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "ekus": [
+ "1.3.6.1.5.5.7.3.8",
+ "1.3.6.1.5.5.7.3.10"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_Sign.json b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_Sign.json
new file mode 100644
index 000000000000..1d8643356d05
--- /dev/null
+++ b/specification/codesigning/CodeSigning/examples/2023-06-15-preview/CertificateProfileOperations_Sign.json
@@ -0,0 +1,39 @@
+{
+ "operationId": "CertificateProfileOperations_Sign",
+ "title": "Submit a codesign operation.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview",
+ "x-correlation-id": "9797c668-5b3c-4586-8e0c-2768c8160bad",
+ "body": {
+ "signatureAlgorithm": "RS256",
+ "digest": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ=",
+ "fileHashList": [
+ "Y29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0",
+ "c2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQ="
+ ],
+ "authenticodeHashList": [
+ "dXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWE=",
+ "IFV0IGVuaW0gYWQgbWluaW0gdmVuaWFt"
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-async-operation": "http://localhost:8080/operations/76f60a30-d088-42e0-b16d-b76b88d3cbe1"
+ },
+ "body": {
+ "id": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signStatus": {
+ "operationId": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signature": "cXVpcyBub3N0cnVkIGV4ZXJjaXRhdGlvbiB1bGxhbWNvIGxhYm9yaXM=",
+ "signingCertificate": "bmlzaSB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/codesigning/CodeSigning/main.tsp b/specification/codesigning/CodeSigning/main.tsp
new file mode 100644
index 000000000000..5de3acc20400
--- /dev/null
+++ b/specification/codesigning/CodeSigning/main.tsp
@@ -0,0 +1,197 @@
+import "@typespec/rest";
+import "@typespec/versioning";
+import "@azure-tools/typespec-azure-core";
+
+using TypeSpec.Http;
+using TypeSpec.Rest;
+using TypeSpec.Versioning;
+using Azure.Core;
+
+@useAuth(
+ OAuth2Auth<[
+ {
+ type: OAuth2FlowType.implicit,
+ authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
+ scopes: ["https://codesigning.azure.net/.default"],
+ }
+ ]>
+)
+@service({
+ title: "Azure CodeSigning",
+ summary: "Azure CodeSigning is a service that provides managed code signing for all.",
+})
+@versioned(Azure.CodeSigning.Versions)
+@server(
+ "https://{region}.codesigning.azure.net/",
+ "CodeSign and retrieve relevant information pertaining signing process.",
+ {
+ @doc("The Azure region wherein requests for signing will be sent.")
+ region: string,
+ }
+)
+@doc("Azure CodeSigning is a service that provides managed code signing for all.")
+namespace Azure.CodeSigning;
+
+@doc("Versions info.")
+enum Versions {
+ @doc("The 2023-06-15-preview version.")
+ @useDependency(Azure.Core.Versions.v1_0_Preview_2)
+ v2023_06_15_preview: "2023-06-15-preview",
+}
+
+interface CertificateProfileOperations {
+ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "This is a custom operation status endpoint."
+ @summary("Gets the status of a codesigning operation.")
+ @doc("This status operation requires that a Sign request has been submitted and the operationId is known.")
+ @route("/codesigningaccounts/{codeSigningAccountName}/certificateprofiles/{certificateProfileName}/sign/{operationId}")
+ getCodeSigningStatus is Foundations.GetOperationStatus<
+ CodeSigningOptions,
+ CodeSignResult
+ >;
+
+ #suppress "@azure-tools/typespec-azure-core/rpc-operation-request-body" "no body included, bytesbody is the response object."
+ #suppress "@azure-tools/typespec-azure-core/no-rpc-path-params" "Service needs rpc paths to follow pattern of other services."
+ @summary("Gets the codesigning root certificate on the certificate chain for that account and profile name.")
+ @doc("The root certificate is generated as part of the initial account creation and it is used to sign the bits for the profile provided.")
+ @route("/codesigningaccounts/{codeSigningAccountName}/certificateprofiles/{certificateProfileName}/sign/rootcert")
+ getSignRootCertificate is RpcOperation<
+ CodeSigningOptions,
+ BytesBody<"application/x-x509-ca-cert">
+ >;
+
+ @summary("Gets a list of extended key usage object identifiers that are allowed for this account and profile combination.")
+ @doc("The list of extended key usages are used to determine the purpose of the certificate usage as part of the codesigning operation.")
+ listSignEkus is StandardResourceOperations.ResourceList;
+
+ @summary("Submit a codesign operation.")
+ @doc("Submit a codesign operation under the created codesign account and profile name provided.")
+ @pollingOperation(CertificateProfileOperations.getCodeSigningStatus)
+ sign is StandardResourceOperations.LongRunningResourceAction<
+ CertificateProfile,
+ CodeSigningSubmissionOptions,
+ CodeSignOperationStatus
+ >;
+}
+
+@doc("Algorithms supported for signing.")
+enum SignatureAlgorithm {
+ @doc("RSASSA-PKCS1-v1_5 using SHA-256 hash algorithm.")
+ RS256,
+
+ @doc("RSASSA-PKCS1-v1_5 using SHA-384 hash algorithm.")
+ RS384,
+
+ @doc("RSASSA-PKCS1-v1_5 using SHA-512 hash algorithm.")
+ RS512,
+
+ @doc("RSASSA-PSS using SHA-256 hash algorithm.")
+ PS256,
+
+ @doc("RSASSA-PSS using SHA-384 hash algorithm.")
+ PS384,
+
+ @doc("RSASSA-PSS using SHA-512 hash algorithm.")
+ PS512,
+
+ @doc("ECDSA using P-256 and SHA-256 hash algorithm.")
+ ES256,
+
+ @doc("ECDSA using P-384 and SHA-384 hash algorithm.")
+ ES384,
+
+ @doc("ECDSA using P-521 and SHA-512 hash algorithm.")
+ ES512,
+
+ @doc("ECDSA using secp256k1 and SHA-256 hash algorithm.")
+ ES256K,
+}
+
+@doc("Azure CodeSigning customer account created upon registration on the service.")
+@resource("codesigningaccounts")
+model CodeSigningAccount {
+ @key("codeSigningAccountName")
+ @visibility("read", "update")
+ @doc("Azure CodeSigning account name.")
+ codeSigningAccountName: string;
+}
+
+@doc("Azure CodeSigning certificate profile configured on a codesign account.")
+@resource("certificateprofiles")
+@parentResource(CodeSigningAccount)
+model CertificateProfile {
+ @key("certificateProfileName")
+ @visibility("read", "update")
+ @doc("Azure Codesigning certificate profile name under a codesign account.")
+ certificateProfileName: string;
+}
+
+@doc("The codesign request information to be signed by the service.")
+model CodeSigningSubmissionOptions {
+ @doc("The supported signature algorithm identifiers.")
+ signatureAlgorithm: SignatureAlgorithm;
+
+ @doc("Content digest to codesign.")
+ digest: bytes;
+
+ @doc("List of full file digital signatures.")
+ fileHashList?: bytes[];
+
+ @doc("List of authenticode digital signatures.")
+ authenticodeHashList?: bytes[];
+}
+
+@doc("The codesign operation status response.")
+model CodeSignOperationStatus {
+ @doc("Unique Id of the operation.")
+ id: string;
+
+ @doc("The result of the codesign operation including the signature and signing certificate.")
+ signResult?: CodeSignResult;
+}
+
+@doc("The sign status model.")
+model CodeSignResult {
+ @doc("Response Id of the codesign operation.")
+ operationId: string;
+
+ @doc("Digital signature of the requested content digest.")
+ signature?: bytes;
+
+ @doc("""
+Signing certificate corresponding to the private key used to codesign the requested
+digest.
+""")
+ signingCertificate?: bytes;
+}
+
+@doc("Codesigning option parameters corresponding to the account and certificate profile name.")
+model CodeSigningOptions {
+ @doc("CodeSigning account name.")
+ @path
+ codeSigningAccountName: string;
+
+ @doc("Certificate profile name.")
+ @path
+ certificateProfileName: string;
+}
+
+@doc("Extended key usage object identifier that are allowed.")
+@resource("sign/eku")
+@parentResource(CertificateProfile)
+model ExtendedKeyUsage {
+ @key("ekus")
+ @visibility("read", "update")
+ @doc("An element of ekus.")
+ ekus: string[];
+}
+
+@doc("Public root certificate from the certificate chain.")
+model BytesBody {
+ @doc("The root certificate of the certificate chain of this profile.")
+ @body
+ body: bytes;
+
+ @doc("The content type of the x509 cert.")
+ @header
+ contentType: ContentType;
+}
diff --git a/specification/codesigning/CodeSigning/tspconfig.yaml b/specification/codesigning/CodeSigning/tspconfig.yaml
new file mode 100644
index 000000000000..d7f494408eec
--- /dev/null
+++ b/specification/codesigning/CodeSigning/tspconfig.yaml
@@ -0,0 +1,30 @@
+parameters:
+ "service-dir":
+ default: "sdk/codesigning"
+emit:
+ - "@azure-tools/typespec-autorest"
+options:
+ "@azure-tools/typespec-autorest":
+ azure-resource-provider-folder: "data-plane"
+ emitter-output-dir: "{project-root}/.."
+ examples-directory: "examples"
+ output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/azure.codesigning.json"
+ "@azure-tools/typespec-python":
+ package-dir: "azure-codesigning"
+ package-mode: "dataplane"
+ package-name: "{package-dir}"
+ "@azure-tools/typespec-csharp":
+ clear-output-folder: true
+ package-dir: "Azure.CodeSigning"
+ model-namespace: false
+ namespace: "{package-dir}"
+ "@azure-tools/typespec-ts":
+ package-dir: "azurecodesigning-rest"
+ generateMetadata: true
+ generateTest: true
+ packageDetails:
+ name: "@azure-rest/azure-codesigning-rest"
+ description: "Azure Codesigning Service"
+ "@azure-tools/typespec-java":
+ package-dir: "azure-codesigning"
+ namespace: com.azure.codesigning
diff --git a/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/azure.codesigning.json b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/azure.codesigning.json
new file mode 100644
index 000000000000..37f5606f538c
--- /dev/null
+++ b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/azure.codesigning.json
@@ -0,0 +1,687 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure CodeSigning",
+ "version": "2023-06-15-preview",
+ "description": "Azure CodeSigning is a service that provides managed code signing for all.",
+ "x-typespec-generated": [
+ {
+ "emitter": "@azure-tools/typespec-autorest"
+ }
+ ]
+ },
+ "schemes": [
+ "https"
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "https://{region}.codesigning.azure.net/",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "name": "region",
+ "in": "path",
+ "required": true,
+ "description": "The Azure region wherein requests for signing will be sent.",
+ "type": "string"
+ }
+ ]
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "OAuth2Auth": [
+ "https://codesigning.azure.net/.default"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "OAuth2Auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
+ "scopes": {
+ "https://codesigning.azure.net/.default": ""
+ }
+ }
+ },
+ "tags": [],
+ "paths": {
+ "/codesigningaccounts/{codeSigningAccountName}/certificateprofiles/{certificateProfileName}:sign": {
+ "post": {
+ "operationId": "CertificateProfileOperations_Sign",
+ "summary": "Submit a codesign operation.",
+ "description": "Submit a codesign operation under the created codesign account and profile name provided.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "codeSigningAccountName",
+ "in": "path",
+ "description": "Azure CodeSigning account name.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateProfileName",
+ "in": "path",
+ "description": "Azure Codesigning certificate profile name under a codesign account.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CodeSigningSubmissionOptions"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The request has been accepted for processing, but processing has not yet completed.",
+ "schema": {
+ "type": "object",
+ "description": "Provides status details for long running operations.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The unique ID of the operation."
+ },
+ "status": {
+ "$ref": "#/definitions/Azure.Core.Foundations.OperationState",
+ "description": "The status of the operation"
+ },
+ "error": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error",
+ "description": "Error object that describes the error when status is \"Failed\"."
+ },
+ "result": {
+ "$ref": "#/definitions/CodeSignOperationStatus",
+ "description": "The result of the operation."
+ }
+ },
+ "required": [
+ "id",
+ "status"
+ ]
+ },
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Submit a codesign operation.": {
+ "$ref": "./examples/CertificateProfileOperations_Sign.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/codesigningaccounts/{codeSigningAccountName}/certificateprofiles/{certificateProfileName}/sign/{operationId}": {
+ "get": {
+ "operationId": "CertificateProfileOperations_GetCodeSigningStatus",
+ "summary": "Gets the status of a codesigning operation.",
+ "description": "This status operation requires that a Sign request has been submitted and the operationId is known.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "operationId",
+ "in": "path",
+ "description": "The unique ID of the operation.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/CodeSigningOptions.codeSigningAccountName"
+ },
+ {
+ "$ref": "#/parameters/CodeSigningOptions.certificateProfileName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "type": "object",
+ "description": "Provides status details for long running operations.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The unique ID of the operation."
+ },
+ "status": {
+ "$ref": "#/definitions/Azure.Core.Foundations.OperationState",
+ "description": "The status of the operation"
+ },
+ "error": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error",
+ "description": "Error object that describes the error when status is \"Failed\"."
+ },
+ "result": {
+ "$ref": "#/definitions/CodeSignResult",
+ "description": "The result of the operation."
+ }
+ },
+ "required": [
+ "id",
+ "status"
+ ]
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Gets the status of a codesign operation.": {
+ "$ref": "./examples/CertificateProfileOperations_GetCodeSigningStatus.json"
+ }
+ }
+ }
+ },
+ "/codesigningaccounts/{codeSigningAccountName}/certificateprofiles/{certificateProfileName}/sign/eku": {
+ "get": {
+ "operationId": "CertificateProfileOperations_ListSignEkus",
+ "summary": "Gets a list of extended key usage object identifiers that are allowed for this account and profile combination.",
+ "description": "The list of extended key usages are used to determine the purpose of the certificate usage as part of the codesigning operation.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "codeSigningAccountName",
+ "in": "path",
+ "description": "Azure CodeSigning account name.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateProfileName",
+ "in": "path",
+ "description": "Azure Codesigning certificate profile name under a codesign account.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PagedExtendedKeyUsage"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Gets a list of extended key usage object identifiers that are allowed.": {
+ "$ref": "./examples/CertificateProfileOperations_ListSignEkus.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/codesigningaccounts/{codeSigningAccountName}/certificateprofiles/{certificateProfileName}/sign/rootcert": {
+ "get": {
+ "operationId": "CertificateProfileOperations_GetSignRootCertificate",
+ "summary": "Gets the codesigning root certificate on the certificate chain for that account and profile name.",
+ "description": "The root certificate is generated as part of the initial account creation and it is used to sign the bits for the profile provided.",
+ "produces": [
+ "application/x-x509-ca-cert",
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/CodeSigningOptions.codeSigningAccountName"
+ },
+ {
+ "$ref": "#/parameters/CodeSigningOptions.certificateProfileName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Gets the codesigning root certificate on the certificate chain for that account and profile name.": {
+ "$ref": "./examples/CertificateProfileOperations_GetSignRootCertificate.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Azure.Core.Foundations.Error": {
+ "type": "object",
+ "description": "The error object.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of a server-defined set of error codes."
+ },
+ "message": {
+ "type": "string",
+ "description": "A human-readable representation of the error."
+ },
+ "target": {
+ "type": "string",
+ "description": "The target of the error."
+ },
+ "details": {
+ "type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
+ "items": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error"
+ },
+ "x-ms-identifiers": []
+ },
+ "innererror": {
+ "$ref": "#/definitions/Azure.Core.Foundations.InnerError",
+ "description": "An object containing more specific information than the current object about the error."
+ }
+ },
+ "required": [
+ "code",
+ "message"
+ ]
+ },
+ "Azure.Core.Foundations.ErrorResponse": {
+ "type": "object",
+ "description": "A response containing error details.",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error",
+ "description": "The error object."
+ }
+ },
+ "required": [
+ "error"
+ ]
+ },
+ "Azure.Core.Foundations.InnerError": {
+ "type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of a server-defined set of error codes."
+ },
+ "innererror": {
+ "$ref": "#/definitions/Azure.Core.Foundations.InnerError",
+ "description": "Inner error."
+ }
+ }
+ },
+ "Azure.Core.Foundations.OperationState": {
+ "type": "string",
+ "description": "Enum describing allowed operation states.",
+ "enum": [
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "OperationState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "InProgress",
+ "value": "InProgress",
+ "description": "The operation is in progress."
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "The operation has completed successfully."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "The operation has failed."
+ },
+ {
+ "name": "Canceled",
+ "value": "Canceled",
+ "description": "The operation has been canceled by the user."
+ }
+ ]
+ }
+ },
+ "CertificateProfile": {
+ "type": "object",
+ "description": "Azure CodeSigning certificate profile configured on a codesign account.",
+ "properties": {
+ "certificateProfileName": {
+ "type": "string",
+ "description": "Azure Codesigning certificate profile name under a codesign account.",
+ "x-ms-mutability": [
+ "read",
+ "update"
+ ]
+ }
+ },
+ "required": [
+ "certificateProfileName"
+ ]
+ },
+ "CodeSignOperationStatus": {
+ "type": "object",
+ "description": "The codesign operation status response.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Unique Id of the operation."
+ },
+ "signResult": {
+ "$ref": "#/definitions/CodeSignResult",
+ "description": "The result of the codesign operation including the signature and signing certificate."
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "CodeSignResult": {
+ "type": "object",
+ "description": "The sign status model.",
+ "properties": {
+ "operationId": {
+ "type": "string",
+ "description": "Response Id of the codesign operation."
+ },
+ "signature": {
+ "type": "string",
+ "format": "byte",
+ "description": "Digital signature of the requested content digest."
+ },
+ "signingCertificate": {
+ "type": "string",
+ "format": "byte",
+ "description": "Signing certificate corresponding to the private key used to codesign the requested\ndigest."
+ }
+ },
+ "required": [
+ "operationId"
+ ]
+ },
+ "CodeSigningAccount": {
+ "type": "object",
+ "description": "Azure CodeSigning customer account created upon registration on the service.",
+ "properties": {
+ "codeSigningAccountName": {
+ "type": "string",
+ "description": "Azure CodeSigning account name.",
+ "x-ms-mutability": [
+ "read",
+ "update"
+ ]
+ }
+ },
+ "required": [
+ "codeSigningAccountName"
+ ]
+ },
+ "CodeSigningSubmissionOptions": {
+ "type": "object",
+ "description": "The codesign request information to be signed by the service.",
+ "properties": {
+ "signatureAlgorithm": {
+ "$ref": "#/definitions/SignatureAlgorithm",
+ "description": "The supported signature algorithm identifiers."
+ },
+ "digest": {
+ "type": "string",
+ "format": "byte",
+ "description": "Content digest to codesign."
+ },
+ "fileHashList": {
+ "type": "array",
+ "description": "List of full file digital signatures.",
+ "items": {
+ "type": "string",
+ "format": "byte"
+ }
+ },
+ "authenticodeHashList": {
+ "type": "array",
+ "description": "List of authenticode digital signatures.",
+ "items": {
+ "type": "string",
+ "format": "byte"
+ }
+ }
+ },
+ "required": [
+ "signatureAlgorithm",
+ "digest"
+ ]
+ },
+ "ExtendedKeyUsage": {
+ "type": "object",
+ "description": "Extended key usage object identifier that are allowed.",
+ "properties": {
+ "ekus": {
+ "type": "array",
+ "description": "An element of ekus.",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "update"
+ ]
+ }
+ },
+ "required": [
+ "ekus"
+ ]
+ },
+ "PagedExtendedKeyUsage": {
+ "type": "object",
+ "description": "Paged collection of ExtendedKeyUsage items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The ExtendedKeyUsage items on this page",
+ "items": {
+ "$ref": "#/definitions/ExtendedKeyUsage"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "SignatureAlgorithm": {
+ "type": "string",
+ "description": "Algorithms supported for signing.",
+ "enum": [
+ "RS256",
+ "RS384",
+ "RS512",
+ "PS256",
+ "PS384",
+ "PS512",
+ "ES256",
+ "ES384",
+ "ES512",
+ "ES256K"
+ ],
+ "x-ms-enum": {
+ "name": "SignatureAlgorithm",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "RS256",
+ "value": "RS256",
+ "description": "RSASSA-PKCS1-v1_5 using SHA-256 hash algorithm."
+ },
+ {
+ "name": "RS384",
+ "value": "RS384",
+ "description": "RSASSA-PKCS1-v1_5 using SHA-384 hash algorithm."
+ },
+ {
+ "name": "RS512",
+ "value": "RS512",
+ "description": "RSASSA-PKCS1-v1_5 using SHA-512 hash algorithm."
+ },
+ {
+ "name": "PS256",
+ "value": "PS256",
+ "description": "RSASSA-PSS using SHA-256 hash algorithm."
+ },
+ {
+ "name": "PS384",
+ "value": "PS384",
+ "description": "RSASSA-PSS using SHA-384 hash algorithm."
+ },
+ {
+ "name": "PS512",
+ "value": "PS512",
+ "description": "RSASSA-PSS using SHA-512 hash algorithm."
+ },
+ {
+ "name": "ES256",
+ "value": "ES256",
+ "description": "ECDSA using P-256 and SHA-256 hash algorithm."
+ },
+ {
+ "name": "ES384",
+ "value": "ES384",
+ "description": "ECDSA using P-384 and SHA-384 hash algorithm."
+ },
+ {
+ "name": "ES512",
+ "value": "ES512",
+ "description": "ECDSA using P-521 and SHA-512 hash algorithm."
+ },
+ {
+ "name": "ES256K",
+ "value": "ES256K",
+ "description": "ECDSA using secp256k1 and SHA-256 hash algorithm."
+ }
+ ]
+ }
+ },
+ "Versions": {
+ "type": "string",
+ "description": "Versions info.",
+ "enum": [
+ "2023-06-15-preview"
+ ],
+ "x-ms-enum": {
+ "name": "Versions",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "v2023_06_15_preview",
+ "value": "2023-06-15-preview",
+ "description": "The 2023-06-15-preview version."
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "Azure.Core.Foundations.ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "description": "The API version to use for this operation.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
+ },
+ "CodeSigningOptions.certificateProfileName": {
+ "name": "certificateProfileName",
+ "in": "path",
+ "description": "Certificate profile name.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "CodeSigningOptions.codeSigningAccountName": {
+ "name": "codeSigningAccountName",
+ "in": "path",
+ "description": "CodeSigning account name.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_GetCodeSigningStatus.json b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_GetCodeSigningStatus.json
new file mode 100644
index 000000000000..575d9f8e835d
--- /dev/null
+++ b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_GetCodeSigningStatus.json
@@ -0,0 +1,24 @@
+{
+ "operationId": "CertificateProfileOperations_GetCodeSigningStatus",
+ "title": "Gets the status of a codesign operation.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview",
+ "operationId": "9797c668-5b3c-4586-8e0c-2768c8160bad"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signStatus": {
+ "operationId": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signature": "OWY4NmQwODE4ODRjN2Q2NTlhMmZlYWEwYzU1YWQwMTVhM2JmNGYxYjJiMGI4MjJjZDE1ZDZjMTViMGYwMGEwOA==",
+ "signingCertificate": "N2IzZDk3OWNhODMzMGE5NGZhN2U5ZTFiNDY2ZDhiOTllMGJjZGVhMWVjOTA1OTZjMGRjYzhkN2VmNmI0MzAwYw=="
+ }
+ }
+ }
+ }
+}
diff --git a/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_GetSignRootCertificate.json b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_GetSignRootCertificate.json
new file mode 100644
index 000000000000..a30586b44a55
--- /dev/null
+++ b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_GetSignRootCertificate.json
@@ -0,0 +1,14 @@
+{
+ "operationId": "CertificateProfileOperations_GetSignRootCertificate",
+ "title": "Gets the codesigning root certificate on the certificate chain for that account and profile name.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview"
+ },
+ "responses": {
+ "200": {
+ "body": "MjUzNjlhMDQ3Yzc0YTQ3NjdiNjYzZTIzMWFlMTAxMDVkODMxM2Y5ZjNkNmU0YTVlOTQ1ZGZiMWQ5NDgzOWU0NQ=="
+ }
+ }
+}
diff --git a/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_ListSignEkus.json b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_ListSignEkus.json
new file mode 100644
index 000000000000..f02e52c98d6e
--- /dev/null
+++ b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_ListSignEkus.json
@@ -0,0 +1,19 @@
+{
+ "operationId": "CertificateProfileOperations_ListSignEkus",
+ "title": "Gets a list of extended key usage object identifiers that are allowed.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "ekus": [
+ "1.3.6.1.5.5.7.3.8",
+ "1.3.6.1.5.5.7.3.10"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_Sign.json b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_Sign.json
new file mode 100644
index 000000000000..1d8643356d05
--- /dev/null
+++ b/specification/codesigning/data-plane/Azure.CodeSigning/preview/2023-06-15-preview/examples/CertificateProfileOperations_Sign.json
@@ -0,0 +1,39 @@
+{
+ "operationId": "CertificateProfileOperations_Sign",
+ "title": "Submit a codesign operation.",
+ "parameters": {
+ "codeSigningAccountName": "YourAccountName",
+ "certificateProfileName": "YourCertificateProfileName",
+ "api-version": "2023-06-15-preview",
+ "x-correlation-id": "9797c668-5b3c-4586-8e0c-2768c8160bad",
+ "body": {
+ "signatureAlgorithm": "RS256",
+ "digest": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ=",
+ "fileHashList": [
+ "Y29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0",
+ "c2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQ="
+ ],
+ "authenticodeHashList": [
+ "dXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWE=",
+ "IFV0IGVuaW0gYWQgbWluaW0gdmVuaWFt"
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-async-operation": "http://localhost:8080/operations/76f60a30-d088-42e0-b16d-b76b88d3cbe1"
+ },
+ "body": {
+ "id": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signStatus": {
+ "operationId": "76f60a30-d088-42e0-b16d-b76b88d3cbe1",
+ "status": "InProgress",
+ "signature": "cXVpcyBub3N0cnVkIGV4ZXJjaXRhdGlvbiB1bGxhbWNvIGxhYm9yaXM=",
+ "signingCertificate": "bmlzaSB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/codesigning/data-plane/readme.md b/specification/codesigning/data-plane/readme.md
new file mode 100644
index 000000000000..1a43e8691a4b
--- /dev/null
+++ b/specification/codesigning/data-plane/readme.md
@@ -0,0 +1,41 @@
+# Azure.CodeSigning
+
+> see https://aka.ms/autorest
+
+This is the AutoRest configuration file for Azure.CodeSigning.
+
+## 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 Azure.CodeSigning.
+
+```yaml
+openapi-type: data-plane
+tag: 2023-06-15-preview
+```
+
+### Tag: 2023-06-15-preview
+
+These settings apply only when `--tag=2023-06-15-preview` is specified on the command line.
+
+```yaml $(tag) == '2023-06-15-preview'
+input-file:
+ - Azure.CodeSigning/preview/2023-06-15-preview/azure.codesigning.json
+```
+
+---
diff --git a/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp b/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp
index bc44d4a8848d..cf46311a6b6c 100644
--- a/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp
+++ b/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp
@@ -404,5 +404,6 @@ model ResponseError {
@header("x-ms-error-code")
@doc("Error code.")
msErrorCode?: string;
+
...ErrorResponse;
}
diff --git a/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp b/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp
index d74eff349b26..ec75d7e48398 100644
--- a/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp
+++ b/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp
@@ -14,7 +14,7 @@ namespace AnomalyDetector.Multivariate;
@post
@doc("Operation template for multivariate anomaly detection service action.")
op MultivariateServiceAction(
- ...TParams
+ ...TParams,
): TResponse | ResponseError;
// Operations
@@ -35,7 +35,7 @@ op getMultivariateBatchDetectionResult(
@format("uuid")
@doc("ID of a batch detection result.")
@path
- resultId: string
+ resultId: string,
): MultivariateDetectionResult | ResponseError;
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Azure core RpcOperation does not support custom error response"
@@ -68,6 +68,7 @@ op trainMultivariateModel is MultivariateServiceAction<
@doc("Location and ID of the model.")
@header
location: string;
+
@body result: AnomalyDetectionModel;
}
>;
@@ -84,7 +85,7 @@ op trainMultivariateModel is MultivariateServiceAction<
@doc("List models of a resource.")
op listMultivariateModels(
...SkipQueryParameter,
- ...TopQueryParameter
+ ...TopQueryParameter,
): ModelList | ResponseError;
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Does not fit any standard operation pattern"
@@ -98,7 +99,7 @@ op listMultivariateModels(
op deleteMultivariateModel(
@doc("Model identifier.")
@path
- modelId: string
+ modelId: string,
): {
@doc("Delete model successfully.")
@statusCode
@@ -119,7 +120,7 @@ and variables used in the model.
op getMultivariateModel(
@doc("Model identifier.")
@path
- modelId: string
+ modelId: string,
): AnomalyDetectionModel | ResponseError;
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Does not fit any standard operation pattern"
@@ -144,7 +145,7 @@ op detectMultivariateBatchAnomaly(
@doc("Request of multivariate anomaly detection.")
@body
- options: MultivariateBatchDetectionOptions
+ options: MultivariateBatchDetectionOptions,
): {
@statusCode statusCode: 202;
@@ -155,6 +156,7 @@ op detectMultivariateBatchAnomaly(
@doc("Location of the detection result.")
@header("Operation-Location")
operationLocation: string;
+
@body result: MultivariateDetectionResult;
} | ResponseError;
@@ -177,5 +179,5 @@ op detectMultivariateLastAnomaly(
@doc("Request of the last detection.")
@body
- options: MultivariateLastDetectionOptions
+ options: MultivariateLastDetectionOptions,
): MultivariateLastDetectionResult | ResponseError;
diff --git a/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp b/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp
index a0b3c79da65f..fad570c9f1c4 100644
--- a/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp
+++ b/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp
@@ -12,7 +12,7 @@ namespace AnomalyDetector.Univariate;
@post
@doc("Operation template for univariate anomaly detection service action.")
op UnivariateServiceAction(
- ...TParams
+ ...TParams,
): TResponse | AnomalyDetectorError;
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Azure core RpcOperation does not support custom error response"
diff --git a/specification/cognitiveservices/HealthInsights/healthinsights.common/model.common.response.tsp b/specification/cognitiveservices/HealthInsights/healthinsights.common/model.common.response.tsp
index 6d6839e661f7..bb3d0dcde428 100644
--- a/specification/cognitiveservices/HealthInsights/healthinsights.common/model.common.response.tsp
+++ b/specification/cognitiveservices/HealthInsights/healthinsights.common/model.common.response.tsp
@@ -85,6 +85,7 @@ system.
model TrialMatcherInferenceEvidence {
@doc("A piece of evidence from the eligibility criteria text of a clinical trial.")
eligibilityCriteriaEvidence?: string;
+
...InferenceEvidence;
}
diff --git a/specification/cognitiveservices/HealthInsights/healthinsights.oncophenotype/model.oncophenotype.tsp b/specification/cognitiveservices/HealthInsights/healthinsights.oncophenotype/model.oncophenotype.tsp
index adf92080ef4c..35607ffdc641 100644
--- a/specification/cognitiveservices/HealthInsights/healthinsights.oncophenotype/model.oncophenotype.tsp
+++ b/specification/cognitiveservices/HealthInsights/healthinsights.oncophenotype/model.oncophenotype.tsp
@@ -46,6 +46,7 @@ model OncoPhenotypePatientResult {
model OncoPhenotypeInference {
@doc("The type of the Onco Phenotype inference")
type: OncoPhenotypeInferenceType;
+
...Inference;
@doc("The evidence corresponding to the inference value.")
diff --git a/specification/cognitiveservices/HealthInsights/healthinsights.trialmatcher/model.trialmatcher.tsp b/specification/cognitiveservices/HealthInsights/healthinsights.trialmatcher/model.trialmatcher.tsp
index 00827dd71ff5..c42a7fbfa3bf 100644
--- a/specification/cognitiveservices/HealthInsights/healthinsights.trialmatcher/model.trialmatcher.tsp
+++ b/specification/cognitiveservices/HealthInsights/healthinsights.trialmatcher/model.trialmatcher.tsp
@@ -87,6 +87,7 @@ The bio-medical category related to the coded concept, e.g. Diagnosis, Symptom,
model TrialMatcherInference {
@doc("The type of the Trial Matcher inference.")
type: TrialMatcherInferenceType;
+
...Inference;
@doc("The evidence corresponding to the inference value.")
@@ -328,6 +329,7 @@ model ContactDetails {
model ClinicalTrialResearchFacility {
@doc("The facility's name.")
name: string;
+
...GeographicLocation;
}
diff --git a/specification/cognitiveservices/OpenAI.Inference/.gitignore b/specification/cognitiveservices/OpenAI.Inference/.gitignore
new file mode 100644
index 000000000000..44d6cda3266c
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/.gitignore
@@ -0,0 +1,2 @@
+**/package.json
+**/package-lock.json
diff --git a/specification/cognitiveservices/OpenAI.Inference/client.tsp b/specification/cognitiveservices/OpenAI.Inference/client.tsp
index 80c27985adf3..16e411ae37c7 100644
--- a/specification/cognitiveservices/OpenAI.Inference/client.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/client.tsp
@@ -3,8 +3,12 @@ import "./main.tsp";
using Azure.ClientGenerator.Core;
-// Azure-specific long-running operations should be treated as implementation details
-@@internal(Azure.OpenAI.startGenerateImage);
+// Azure-specific long-running operations should be treated as implementation details that are wrapped into
+// appropriately merged public surface.
+@@internal(Azure.OpenAI.beginAzureBatchImageGeneration);
+@@internal(Azure.OpenAI.getAzureBatchImageGenerationOperationStatus);
-// Some models from client-internal LROs are still desired for custom public surface
+// Some models from client-internal LROs are still desired for custom public surface.
@@include(Azure.OpenAI.ImageGenerationOptions);
+@@include(Azure.OpenAI.ImageLocation);
+@@include(Azure.OpenAI.ImageGenerations);
diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/get_image_operation_status.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/get_image_operation_status.json
index c9923b9ae46f..b7b1e32b8bb6 100644
--- a/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/get_image_operation_status.json
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/get_image_operation_status.json
@@ -1,5 +1,5 @@
{
- "operationId": "GetImageOperationStatus",
+ "operationId": "GetAzureBatchImageGenerationOperationStatus",
"title": "Returns the status of the images operation",
"parameters": {
"endpoint": "{endpoint}",
diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/start_generate_image.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/start_generate_image.json
index f8bac40e573f..40903f1667f0 100644
--- a/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/start_generate_image.json
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-06-01-preview/start_generate_image.json
@@ -1,5 +1,5 @@
{
- "operationId": "StartGenerateImage",
+ "operationId": "BeginAzureBatchImageGeneration",
"title": "Starts the generation of a batch of images from a text caption",
"parameters": {
"endpoint": "{endpoint}",
diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/chat_completions.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/chat_completions.json
new file mode 100644
index 000000000000..bbd6dacd3d27
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/chat_completions.json
@@ -0,0 +1,44 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided prompt, parameters and chosen model.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "deploymentId": "",
+ "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/OpenAI.Inference/examples/2023-07-01-preview/completions.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/completions.json
new file mode 100644
index 000000000000..05bac70abc80
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/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": "2023-07-01-preview",
+ "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/OpenAI.Inference/examples/2023-07-01-preview/embeddings.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/embeddings.json
new file mode 100644
index 000000000000..e978b97b8a16
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/embeddings.json
@@ -0,0 +1,1567 @@
+{
+ "operationId": "GetEmbeddings",
+ "title": "Return the embeddings for a given prompt.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "deploymentId": "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/OpenAI.Inference/examples/2023-07-01-preview/get_image_operation_status.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/get_image_operation_status.json
new file mode 100644
index 000000000000..26da67fe18ff
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/get_image_operation_status.json
@@ -0,0 +1,27 @@
+{
+ "operationId": "GetAzureBatchImageGenerationOperationStatus",
+ "title": "Returns the status of the images operation",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "operationId": ""
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "created": 1686676595,
+ "expires": 1686762999,
+ "id": "",
+ "result": {
+ "created": 1686676595,
+ "data": [
+ {
+ "url": "https://image/path"
+ }
+ ]
+ },
+ "status": "succeeded"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/start_generate_image.json b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/start_generate_image.json
new file mode 100644
index 000000000000..89d6f5d3184a
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/examples/2023-07-01-preview/start_generate_image.json
@@ -0,0 +1,25 @@
+{
+ "operationId": "BeginAzureBatchImageGeneration",
+ "title": "Starts the generation of a batch of images from a text caption",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "body": {
+ "prompt": "a monkey eating a banana",
+ "size": "256x256",
+ "n": 1
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "operation-location": "{endpoint}/openai/operations/images/?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "",
+ "status": "notRunning",
+ "created": 0
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/OpenAI.Inference/main.tsp b/specification/cognitiveservices/OpenAI.Inference/main.tsp
index 56259a5b428f..170ef8da71c6 100644
--- a/specification/cognitiveservices/OpenAI.Inference/main.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/main.tsp
@@ -46,13 +46,17 @@ enum ServiceApiVersions {
@useDependency(Azure.Core.Versions.v1_0_Preview_1)
v2023_06_01_Preview: "2023-06-01-preview",
+
+ @useDependency(Azure.Core.Versions.v1_0_Preview_1)
+ v2023_07_01_Preview: "2023-07-01-preview",
}
@doc("A specific deployment")
@TypeSpec.Rest.resource("deployments")
model Deployment {
@visibility("read")
- @doc("deployment id of the deployed model")
+ @doc("Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.")
+ @projectedName("java", "deploymentOrModelName")
@key
deploymentId: string;
}
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/chat.completions.tsp b/specification/cognitiveservices/OpenAI.Inference/models/chat.completions.tsp
index 0333f1635dae..808bbbc8bb28 100644
--- a/specification/cognitiveservices/OpenAI.Inference/models/chat.completions.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/models/chat.completions.tsp
@@ -1,9 +1,12 @@
import "@typespec/rest";
import "@typespec/http";
+import "@typespec/versioning";
import "./completions.common.tsp";
+import "./functions.tsp";
using TypeSpec.Rest;
using TypeSpec.Http;
+using TypeSpec.Versioning;
namespace Azure.OpenAI;
@@ -17,6 +20,10 @@ enum ChatRole {
@doc("The role that provides input for chat completions.")
user: "user",
+
+ @doc("The role that provides function results for char completions.")
+ @added(ServiceApiVersions.v2023_07_01_Preview)
+ function: "function",
}
@doc("A single, role-attributed message within a chat completion interaction.")
@@ -25,9 +32,23 @@ model ChatMessage {
@projectedName("json", "role")
role: ChatRole;
+ #suppress "@azure-tools/typespec-azure-core/no-nullable" "we explicitly want a nullable string"
@doc("The text associated with this message payload.")
@projectedName("json", "content")
- content?: string;
+ content: string | null;
+
+ @doc("""
+ The name of the author of this message. `name` is required if role is `function`, and it should be the name of the
+ function whose response is in the `content`. May contain a-z, A-Z, 0-9, and underscores, with a maximum length of
+ 64 characters.
+ """)
+ @added(ServiceApiVersions.v2023_07_01_Preview)
+ name?: string;
+
+ @doc("The name and arguments of a function that should be called, as generated by the model.")
+ @added(ServiceApiVersions.v2023_07_01_Preview)
+ @projectedName("json", "function_call")
+ functionCall?: FunctionCall;
}
@doc("""
@@ -45,6 +66,20 @@ model ChatCompletionsOptions {
@projectedName("json", "messages")
messages: ChatMessage[];
+ @doc("A list of functions the model may generate JSON inputs for.")
+ @added(ServiceApiVersions.v2023_07_01_Preview)
+ functions?: FunctionDefinition[];
+
+ @doc("""
+ 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.
+ """)
+ @projectedName("json", "function_call")
+ @added(ServiceApiVersions.v2023_07_01_Preview)
+ functionCall?: FunctionCallConfig;
+
@doc("The maximum number of tokens to generate.")
@projectedName("json", "max_tokens")
maxTokens?: int32;
@@ -156,7 +191,7 @@ model ChatChoice {
index: int32;
#suppress "@azure-tools/typespec-azure-core/no-nullable" "The operation already returns nulls"
- #suppress "@azure-tools/typespec-autorest/union-unsupported" "https://github.com/Azure/typespec-azure/issues/3180"
+ #suppress "@azure-tools/typespec-autorest/union-unsupported" "OpenAPI v2 support deferred"
@doc("The reason that this chat completions choice completed its generated.")
@projectedName("json", "finish_reason")
finishReason: CompletionsFinishReason | null;
@@ -165,6 +200,15 @@ model ChatChoice {
@projectedName("json", "delta")
@projectedName("csharp", "InternalStreamingDeltaMessage")
delta?: ChatMessage;
+
+ @doc("""
+ 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.
+ """)
+ @added(ServiceApiVersions.v2023_06_01_Preview)
+ @projectedName("json", "content_filter_results")
+ contentFilterResults?: ContentFilterResults;
}
@doc("""
@@ -182,8 +226,9 @@ model ChatCompletions {
represented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970.
""")
@projectedName("json", "created")
- @projectedName("csharp", "InternalCreatedSecondsAfterUnixEpoch")
- created: int32;
+ @projectedName("java", "createdAt")
+ @encode(DateTimeKnownEncoding.unixTimestamp, int32)
+ created: utcDateTime;
@doc("""
The collection of completions choices associated with this completions response.
@@ -193,6 +238,14 @@ model ChatCompletions {
@projectedName("json", "choices")
choices: ChatChoice[];
+ @doc("""
+ 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.
+ """)
+ @added(ServiceApiVersions.v2023_06_01_Preview)
+ @projectedName("json", "prompt_annotations")
+ promptFilterResults?: PromptFilterResult[];
+
@doc("""
Usage information for tokens processed and generated as part of this completions operation.
""")
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions.common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions.common.tsp
index da919b0052bd..10608fa6e4f1 100644
--- a/specification/cognitiveservices/OpenAI.Inference/models/completions.common.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/models/completions.common.tsp
@@ -1,3 +1,7 @@
+import "@typespec/versioning";
+
+using TypeSpec.Versioning;
+
namespace Azure.OpenAI;
@doc("""
@@ -34,4 +38,101 @@ enum CompletionsFinishReason {
moderation policies.
""")
contentFiltered: "content_filter",
+
+ @doc("Completion ended normally, with the model requesting a function to be called.")
+ @added(ServiceApiVersions.v2023_07_01_Preview)
+ functionCall: "function_call",
+}
+
+@added(ServiceApiVersions.v2023_06_01_Preview)
+@doc("Ratings for the intensity and risk level of harmful content.")
+enum ContentFilterSeverity {
+ @doc("""
+ Content may be related to violence, self-harm, sexual, or hate categories but the terms
+ are used in general, journalistic, scientific, medical, and similar professional contexts,
+ which are appropriate for most audiences.
+ """)
+ safe: "safe",
+
+ @doc("""
+ Content that expresses prejudiced, judgmental, or opinionated views, includes offensive
+ use of language, stereotyping, use cases exploring a fictional world (for example, gaming,
+ literature) and depictions at low intensity.
+ """)
+ low: "low",
+
+ @doc("""
+ Content that uses offensive, insulting, mocking, intimidating, or demeaning language
+ towards specific identity groups, includes depictions of seeking and executing harmful
+ instructions, fantasies, glorification, promotion of harm at medium intensity.
+ """)
+ medium: "medium",
+
+ @doc("""
+ Content that displays explicit and severe harmful instructions, actions,
+ damage, or abuse; includes endorsement, glorification, or promotion of severe
+ harmful acts, extreme or illegal forms of harm, radicalization, or non-consensual
+ power exchange or abuse.
+ """)
+ high: "high",
+}
+
+@added(ServiceApiVersions.v2023_06_01_Preview)
+@doc("Information about filtered content severity level and if it has been filtered or not.")
+model ContentFilterResult {
+ @doc("Ratings for the intensity and risk level of filtered content.")
+ @projectedName("json", "severity")
+ severity: ContentFilterSeverity;
+
+ @doc("A value indicating whether or not the content has been filtered.")
+ @projectedName("json", "filtered")
+ filtered: boolean;
+}
+
+@added(ServiceApiVersions.v2023_06_01_Preview)
+@doc("Information about the content filtering category, if it has been detected.")
+model ContentFilterResults {
+ @doc("""
+ Describes language related to anatomical organs and genitals, romantic relationships,
+ acts portrayed in erotic or affectionate terms, physical sexual acts, including
+ those portrayed as an assault or a forced sexual violent act against one’s will,
+ prostitution, pornography, and abuse.
+ """)
+ sexual?: ContentFilterResult;
+
+ @doc("""
+ Describes language related to physical actions intended to hurt, injure, damage, or
+ kill someone or something; describes weapons, etc.
+ """)
+ violence?: ContentFilterResult;
+
+ @doc("""
+ Describes language attacks or uses that include pejorative or discriminatory language
+ with reference to a person or identity group on the basis of certain differentiating
+ attributes of these groups including but not limited to race, ethnicity, nationality,
+ gender identity and expression, sexual orientation, religion, immigration status, ability
+ status, personal appearance, and body size.
+ """)
+ hate?: ContentFilterResult;
+
+ @doc("""
+ Describes language related to physical actions intended to purposely hurt, injure,
+ or damage one’s body, or kill oneself.
+ """)
+ @projectedName("json", "self_harm")
+ selfHarm?: ContentFilterResult;
+}
+
+@added(ServiceApiVersions.v2023_06_01_Preview)
+@doc("""
+Content filtering results for a single prompt in the request.
+""")
+model PromptFilterResult {
+ @doc("The index of this prompt in the set of prompt results")
+ @projectedName("json", "prompt_index")
+ promptIndex: int32;
+
+ @doc("Content filtering results for this prompt")
+ @projectedName("json", "content_filter_results")
+ contentFilterResults?: ContentFilterResults;
}
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions.create.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions.create.tsp
index c3f695e16ecf..e65c4c7f1967 100644
--- a/specification/cognitiveservices/OpenAI.Inference/models/completions.create.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/models/completions.create.tsp
@@ -1,9 +1,11 @@
import "@typespec/rest";
import "@typespec/http";
+import "@typespec/versioning";
import "./completions.common.tsp";
using TypeSpec.Rest;
using TypeSpec.Http;
+using TypeSpec.Versioning;
namespace Azure.OpenAI;
@@ -156,8 +158,17 @@ model Completions {
represented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970.
""")
@projectedName("json", "created")
- @projectedName("csharp", "InternalCreatedSecondsAfterUnixEpoch")
- created: int32;
+ @projectedName("java", "createdAt")
+ @encode(DateTimeKnownEncoding.unixTimestamp, int32)
+ created: utcDateTime;
+
+ @doc("""
+ 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.
+ """)
+ @added(ServiceApiVersions.v2023_06_01_Preview)
+ @projectedName("json", "prompt_annotations")
+ promptFilterResults?: PromptFilterResult[];
@doc("""
The collection of completions choices associated with this completions response.
@@ -188,6 +199,15 @@ model Choice {
@projectedName("json", "index")
index: int32;
+ @doc("""
+ 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.
+ """)
+ @added(ServiceApiVersions.v2023_06_01_Preview)
+ @projectedName("json", "content_filter_results")
+ contentFilterResults?: ContentFilterResults;
+
#suppress "@azure-tools/typespec-azure-core/no-nullable" "The operation already returns nulls"
@doc("The log probabilities model for tokens associated with this completions choice.")
@projectedName("json", "logprobs")
@@ -195,7 +215,7 @@ model Choice {
logprobs: CompletionsLogProbabilityModel | null;
#suppress "@azure-tools/typespec-azure-core/no-nullable" "The operation already returns nulls"
- #suppress "@azure-tools/typespec-autorest/union-unsupported" "https://github.com/Azure/typespec-azure/issues/3180"
+ #suppress "@azure-tools/typespec-autorest/union-unsupported" "OpenAPI v2 support deferred"
@doc("Reason for finishing")
@projectedName("json", "finish_reason")
finishReason: CompletionsFinishReason | null;
@@ -214,15 +234,18 @@ model CompletionsLogProbabilityModel {
@doc("A collection of log probability values for the tokens in this completions data.")
@projectedName("json", "token_logprobs")
@projectedName("csharp", "TokenLogProbabilities")
+ @projectedName("java", "tokenLogProbabilities")
tokenLogprobs: NullableFloat[];
@doc("A mapping of tokens to maximum log probability values in this completions data.")
@projectedName("json", "top_logprobs")
@projectedName("csharp", "TopLogProbabilities")
+ @projectedName("java", "topLogProbabilities")
topLogprobs: Record[];
@doc("The text offsets associated with tokens in this completions data.")
@projectedName("json", "text_offset")
@projectedName("csharp", "TextOffsets")
+ @projectedName("java", "textOffsets")
textOffset: int32[];
}
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/embeddings.create.tsp b/specification/cognitiveservices/OpenAI.Inference/models/embeddings.create.tsp
index 506615ae7491..94806ec160c1 100644
--- a/specification/cognitiveservices/OpenAI.Inference/models/embeddings.create.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/models/embeddings.create.tsp
@@ -60,6 +60,7 @@ model EmbeddingItem {
embedding: float32[];
@doc("Index of the prompt to which the EmbeddingItem corresponds.")
+ @projectedName("java", "promptIndex")
index: int32;
}
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/functions.tsp b/specification/cognitiveservices/OpenAI.Inference/models/functions.tsp
new file mode 100644
index 000000000000..00724300da8f
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/models/functions.tsp
@@ -0,0 +1,71 @@
+import "@typespec/versioning";
+
+namespace Azure.OpenAI;
+
+using TypeSpec.Versioning;
+
+@doc("""
+A structure that specifies the exact name of a specific, request-provided function to use when processing a chat
+completions operation.
+""")
+@added(ServiceApiVersions.v2023_07_01_Preview)
+model FunctionName {
+ @doc("The name of the function to call.")
+ name: string;
+}
+
+@doc("""
+The collection of predefined behaviors for handling request-provided function information in a chat completions
+operation.
+""")
+@added(ServiceApiVersions.v2023_07_01_Preview)
+enum FunctionCallPreset {
+ @doc("""
+ Specifies that the model may either use any of the functions provided in this chat completions request or
+ instead return a standard chat completions response as if no functions were provided.
+ """)
+ auto: "auto",
+
+ @doc("""
+ Specifies that the model should not respond with a function call and should instead provide a standard chat
+ completions response. Response content may still be influenced by the provided function information.
+ """)
+ none: "none",
+}
+
+#suppress "@azure-tools/typespec-autorest/union-unsupported" "External API shape is defined in OpenAPI 3.0 as oneOf."
+alias FunctionCallConfig = FunctionCallPreset | FunctionName;
+
+@doc("""
+The definition of a caller-specified function that chat completions may invoke in response to matching user input.
+""")
+@added(ServiceApiVersions.v2023_07_01_Preview)
+model FunctionDefinition {
+ @doc("The name of the function to be called.")
+ name: string;
+
+ @doc("""
+ A description of what the function does. The model will use this description when selecting the function and
+ interpreting its parameters.
+ """)
+ description?: string;
+
+ #suppress "@azure-tools/typespec-azure-core/no-unknown" "External API shape takes an arbitrary json"
+ @doc("The parameters the functions accepts, described as a JSON Schema object.")
+ parameters?: unknown;
+}
+
+@doc("The name and arguments of a function that should be called, as generated by the model.")
+@added(ServiceApiVersions.v2023_07_01_Preview)
+model FunctionCall {
+ @doc("The name of the function to call.")
+ name: string;
+
+ @doc("""
+ 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.
+ """)
+ arguments: string;
+}
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/images.tsp b/specification/cognitiveservices/OpenAI.Inference/models/images.tsp
index 916ed05b1581..6dc36991511e 100644
--- a/specification/cognitiveservices/OpenAI.Inference/models/images.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/models/images.tsp
@@ -1,6 +1,7 @@
import "@azure-tools/typespec-azure-core";
import "@typespec/http";
import "@typespec/versioning";
+import "./operations.common.tsp";
using Azure.Core;
using TypeSpec.Http;
@@ -21,6 +22,16 @@ enum ImageSize {
Size1024x1024: "1024x1024",
}
+@doc("The format in which the generated images are returned.")
+@added(ServiceApiVersions.v2023_06_01_Preview)
+enum ImageGenerationResponseFormat {
+ @doc("Image generation response items should provide a URL from which the image may be retrieved.")
+ Url: "url",
+
+ @doc("Image generation response items should provide image data as a base64-encoded string.")
+ Base64: "b64_json",
+}
+
@doc("Represents the request data used to generate images.")
@added(ServiceApiVersions.v2023_06_01_Preview)
model ImageGenerationOptions {
@@ -28,116 +39,78 @@ model ImageGenerationOptions {
prompt: string;
@doc("The number of images to generate (defaults to 1).")
+ @projectedName("csharp", "ImageCount")
n?: int32 = 1;
@doc("The desired size of the generated images. Must be one of 256x256, 512x512, or 1024x1024 (defaults to 1024x1024).")
size?: ImageSize = ImageSize.Size1024x1024;
+ @doc("""
+ The format in which image generation response items should be presented.
+ Azure OpenAI only supports URL response items.
+ """)
+ @projectedName("json", "response_format")
+ responseFormat?: ImageGenerationResponseFormat;
+
@doc("A unique identifier representing your end-user, which can help to monitor and detect abuse.")
user?: string;
}
-@doc("The image url if successful, and an error otherwise.")
+@doc("An image response item that provides a URL from which an image may be accessed.")
@added(ServiceApiVersions.v2023_06_01_Preview)
+@projectedName("csharp", "InternalImageLocation")
model ImageLocation {
@doc("The URL that provides temporary access to download the generated image.")
- url?: url;
+ url: url;
+}
- @doc("The error if the operation failed.")
- error?: Foundations.Error;
+@doc("An image response item that directly represents the image data as a base64-encoded string.")
+@added(ServiceApiVersions.v2023_06_01_Preview)
+model ImagePayload {
+ @doc("The complete data for an image represented as a base64-encoded string.")
+ @projectedName("json", "b64_json")
+ base64Data: string;
}
@doc("The result of the operation if the operation succeeded.")
@added(ServiceApiVersions.v2023_06_01_Preview)
-model ImageResponse {
+model ImageGenerations {
@doc("A timestamp when this job or item was created (in unix epochs).")
- created: int64;
+ @projectedName("json", "created")
+ @projectedName("java", "createdAt")
+ @encode(DateTimeKnownEncoding.unixTimestamp, int32)
+ created: utcDateTime;
+ #suppress "@azure-tools/typespec-autorest/union-unsupported" "openapi v2 not required"
@doc("The images generated by the operator.")
- data: ImageLocation[];
+ data: ImageLocation[] | ImagePayload[];
}
-@doc("The result of the operation if the operation succeeded.")
+// Note: pending resolution of cross-language code emission behavior for long-running operations, image generation
+// reuses its final operation response model as its status polling model.
+
+// @lroStatus
+@doc("A polling status update or final response payload for an image operation.")
@added(ServiceApiVersions.v2023_06_01_Preview)
-model ImageOperationResponse {
+model BatchImageGenerationOperationResponse {
@doc("The ID of the operation.")
id: string;
@doc("A timestamp when this job or item was created (in unix epochs).")
- created: int64;
+ @projectedName("json", "created")
+ @projectedName("java", "createdAt")
+ @encode(DateTimeKnownEncoding.unixTimestamp, int32)
+ created: utcDateTime;
@doc("A timestamp when this operation and its associated images expire and will be deleted (in unix epochs).")
expires?: int64;
@doc("The result of the operation if the operation succeeded.")
- result?: ImageResponse;
+ result?: ImageGenerations;
@doc("The status of the operation")
- status: State;
+ status: AzureOpenAIOperationState;
@doc("The error if the operation failed.")
error?: Foundations.Error;
}
-
-@lroStatus
-@doc("The state of a job or item.")
-@added(ServiceApiVersions.v2023_06_01_Preview)
-enum State {
- @doc("The operation was created and is queued to be processed in the future.")
- notRunning,
-
- @doc("The operation has started to be processed.")
- running,
-
- @lroSucceeded
- @doc("The operation has successfully be processed and is ready for consumption.")
- succeeded,
-
- @lroCanceled
- @doc("The operation has been canceled and is incomplete.")
- canceled,
-
- @lroFailed
- @doc("The operation has completed processing with a failure and cannot be further consumed.")
- failed,
-}
-
-@doc("Provides status details for long running operations.")
-@added(ServiceApiVersions.v2023_06_01_Preview)
-model ImageOperationStatus {
- @key("operationId")
- @visibility("read", "query")
- @doc("The unique ID of the operation.")
- id: string;
-
- @doc("The status of the operation")
- status: State;
-}
-
-#suppress "@azure-tools/typespec-azure-core/long-running-polling-operation-required" "template"
-@Foundations.Private.needsRoute
-@post
-@doc("Long running operation template to match Azure OpenAI .")
-op OaiLongRunningRpcOperation<
- TParams extends TypeSpec.Reflection.Model,
- TResponse extends TypeSpec.Reflection.Model,
- TStatusResult extends TypeSpec.Reflection.Model,
- TStatusError = Foundations.Error,
- Traits extends TypeSpec.Reflection.Model = {},
- TErrorResponse = Azure.Core.Foundations.ErrorResponse
-> is Foundations.Operation<
- TParams &
- Azure.Core.Traits.Private.TraitProperties<
- Traits,
- Azure.Core.Traits.TraitLocation.Parameters
- >,
- Azure.Core.Foundations.AcceptedResponse &
- TResponse &
- Foundations.LongRunningStatusLocation &
- Azure.Core.Traits.Private.TraitProperties<
- Traits,
- Azure.Core.Traits.TraitLocation.Response
- >,
- Traits,
- TErrorResponse
->;
diff --git a/specification/cognitiveservices/OpenAI.Inference/models/operations.common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/operations.common.tsp
new file mode 100644
index 000000000000..f5adeaaa1916
--- /dev/null
+++ b/specification/cognitiveservices/OpenAI.Inference/models/operations.common.tsp
@@ -0,0 +1,57 @@
+import "@azure-tools/typespec-azure-core";
+import "@typespec/http";
+
+using Azure.Core;
+using TypeSpec.Http;
+
+namespace Azure.OpenAI;
+
+@lroStatus
+@doc("The state of a job or item.")
+enum AzureOpenAIOperationState {
+ @doc("The operation was created and is queued to be processed in the future.")
+ notRunning,
+
+ @doc("The operation has started to be processed.")
+ running,
+
+ @lroSucceeded
+ @doc("The operation has successfully be processed and is ready for consumption.")
+ succeeded,
+
+ @lroCanceled
+ @doc("The operation has been canceled and is incomplete.")
+ canceled,
+
+ @lroFailed
+ @doc("The operation has completed processing with a failure and cannot be further consumed.")
+ failed,
+}
+
+#suppress "@azure-tools/typespec-azure-core/long-running-polling-operation-required" "template"
+@Foundations.Private.needsRoute
+@post
+@doc("Long running operation template to match Azure OpenAI .")
+op OaiLongRunningRpcOperation<
+ TParams extends TypeSpec.Reflection.Model,
+ TResponse extends TypeSpec.Reflection.Model,
+ TStatusResult extends TypeSpec.Reflection.Model,
+ TStatusError = Foundations.Error,
+ Traits extends TypeSpec.Reflection.Model = {},
+ TErrorResponse = Azure.Core.Foundations.ErrorResponse
+> is Foundations.Operation<
+ TParams &
+ Azure.Core.Traits.Private.TraitProperties<
+ Traits,
+ Azure.Core.Traits.TraitLocation.Parameters
+ >,
+ Azure.Core.Foundations.AcceptedResponse &
+ TResponse &
+ Foundations.LongRunningStatusLocation &
+ Azure.Core.Traits.Private.TraitProperties<
+ Traits,
+ Azure.Core.Traits.TraitLocation.Response
+ >,
+ Traits,
+ TErrorResponse
+>;
diff --git a/specification/cognitiveservices/OpenAI.Inference/routes.tsp b/specification/cognitiveservices/OpenAI.Inference/routes.tsp
index 5a63fa8b0f2e..6e9479864283 100644
--- a/specification/cognitiveservices/OpenAI.Inference/routes.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/routes.tsp
@@ -52,15 +52,18 @@ op getChatCompletions is ResourceAction<
ChatCompletions
>;
+// Note: pending resolution of cross-language code emission behavior for long-running operations, image generation
+// reuses its final operation response model as its status polling model.
+#suppress "@azure-tools/typespec-azure-core/rpc-operation-request-body" "MUST fix in next update"
#suppress "@azure-tools/typespec-azure-core/no-rpc-path-params" "Allowed because this is a non-standard status polling operation."
@doc("Returns the status of the images operation")
@added(ServiceApiVersions.v2023_06_01_Preview)
@route("/operations/images/{operationId}")
-op getImageOperationStatus is RpcOperation<
+op getAzureBatchImageGenerationOperationStatus is RpcOperation<
{
@doc(".") @path operationId: string;
},
- ImageOperationResponse
+ BatchImageGenerationOperationResponse
>;
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" ""
@@ -68,13 +71,13 @@ op getImageOperationStatus is RpcOperation<
@added(ServiceApiVersions.v2023_06_01_Preview)
@route("/images/generations:submit")
@pollingOperation(
- getImageOperationStatus,
+ getAzureBatchImageGenerationOperationStatus,
{
operationId: ResponseProperty<"id">,
}
)
-op startGenerateImage is OaiLongRunningRpcOperation<
+op beginAzureBatchImageGeneration is OaiLongRunningRpcOperation<
ImageGenerationOptions,
- ImageOperationResponse,
- ImageOperationStatus
+ BatchImageGenerationOperationResponse,
+ BatchImageGenerationOperationResponse
>;
diff --git a/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml b/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml
index 592ce93c5165..289377428715 100644
--- a/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml
+++ b/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml
@@ -11,28 +11,20 @@ options:
output-file: "{azure-resource-provider-folder}/AzureOpenAI/inference/{version-status}/{version}/generated.json"
azure-resource-provider-folder: "data-plane"
examples-directory: examples
- # Uncomment this line and add "@azure-tools/cadl-python" to your package.json to generate Python code
- # "@azure-tools/cadl-python":
- # "basic-setup-py": true
- # "package-version":
- # "package-name":
- # "output-path":
- # Uncomment this line and add "@azure-tools/cadl-java" to your package.json to generate Java code
- # "@azure-tools/cadl-java": true
- # Uncomment this line and add "@azure-tools/cadl-csharp" to your package.json to generate C# code
+ omit-unreachable-types: true
"@azure-tools/typespec-csharp":
package-dir: "Azure.AI.OpenAI"
namespace: "Azure.AI.OpenAI"
clear-output-folder: true
model-namespace: false
- # https://github.com/Azure/azure-rest-api-specs/issues/24497
"@azure-tools/typespec-java":
package-dir: "azure-ai-openai"
namespace: "com.azure.ai.openai"
partial-update: true
enable-sync-stack: true
generate-tests: false
- # https://github.com/Azure/azure-rest-api-specs/issues/24498
+ custom-types-subpackage: "implementation.models"
+ custom-types: "FunctionCallModelBase,FunctionCallPreset,FunctionCallPresetFunctionCallModel,FunctionNameFunctionCallModel"
# "@azure-tools/typespec-ts":
# package-dir: "azure-ai-openai"
# emitter-output-dir: "{project-root}/generated"
diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/stable/v1.1/openapi.json b/specification/cognitiveservices/data-plane/AnomalyDetector/stable/v1.1/openapi.json
index d7cfee0c8582..74a0e78f73c0 100644
--- a/specification/cognitiveservices/data-plane/AnomalyDetector/stable/v1.1/openapi.json
+++ b/specification/cognitiveservices/data-plane/AnomalyDetector/stable/v1.1/openapi.json
@@ -61,8 +61,8 @@
"AnomalyDetectorApiKeyAuth": {
"type": "apiKey",
"description": "The secret key for your Azure Cognitive Services subscription.",
- "in": "header",
- "name": "Ocp-Apim-Subscription-Key"
+ "name": "Ocp-Apim-Subscription-Key",
+ "in": "header"
}
},
"tags": [],
@@ -76,8 +76,8 @@
{
"name": "resultId",
"in": "path",
- "required": true,
"description": "ID of a batch detection result.",
+ "required": true,
"type": "string",
"format": "uuid"
}
@@ -91,14 +91,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
@@ -110,168 +110,168 @@
}
},
"/multivariate/models": {
- "post": {
- "operationId": "Multivariate_TrainMultivariateModel",
- "summary": "Train a Multivariate Anomaly Detection Model",
- "description": "Create and train a multivariate anomaly detection model. The request must\ninclude a source parameter to indicate an Azure Blob\nStorage URI that's accessible to the service. There are two types of data input. The Blob Storage URI can point to an Azure Blob\nStorage folder that contains multiple CSV files, where each CSV file has\ntwo columns, time stamp and variable. Or the Blob Storage URI can point to a single blob that contains a CSV file that has all the variables and a\ntime stamp column.\nThe model object will be created and returned in the response, but the\ntraining process happens asynchronously. To check the training status, call\nGetMultivariateModel with the modelId value and check the status field in the\nmodelInfo object.",
+ "get": {
+ "operationId": "Multivariate_ListMultivariateModels",
+ "summary": "List Multivariate Models",
+ "description": "List models of a resource.",
"parameters": [
{
- "name": "modelInfo",
- "in": "body",
- "required": true,
- "description": "Model information.",
- "schema": {
- "$ref": "#/definitions/Multivariate.ModelInfo"
- }
+ "$ref": "#/parameters/Azure.Core.SkipQueryParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.TopQueryParameter"
}
],
"responses": {
- "201": {
- "description": "The request has succeeded and a new resource has been created as a result.",
- "headers": {
- "location": {
- "description": "Location and ID of the model.",
- "type": "string"
- }
- },
+ "200": {
+ "description": "The request has succeeded.",
"schema": {
- "$ref": "#/definitions/Multivariate.AnomalyDetectionModel"
+ "$ref": "#/definitions/Multivariate.ModelList"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
"x-ms-examples": {
- "Create and train multivariate model": {
- "$ref": "./examples/TrainModel.json"
+ "List multivariate models": {
+ "$ref": "./examples/ListModel.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
},
- "get": {
- "operationId": "Multivariate_ListMultivariateModels",
- "summary": "List Multivariate Models",
- "description": "List models of a resource.",
+ "post": {
+ "operationId": "Multivariate_TrainMultivariateModel",
+ "summary": "Train a Multivariate Anomaly Detection Model",
+ "description": "Create and train a multivariate anomaly detection model. The request must\ninclude a source parameter to indicate an Azure Blob\nStorage URI that's accessible to the service. There are two types of data input. The Blob Storage URI can point to an Azure Blob\nStorage folder that contains multiple CSV files, where each CSV file has\ntwo columns, time stamp and variable. Or the Blob Storage URI can point to a single blob that contains a CSV file that has all the variables and a\ntime stamp column.\nThe model object will be created and returned in the response, but the\ntraining process happens asynchronously. To check the training status, call\nGetMultivariateModel with the modelId value and check the status field in the\nmodelInfo object.",
"parameters": [
{
- "$ref": "#/parameters/Azure.Core.SkipQueryParameter"
- },
- {
- "$ref": "#/parameters/Azure.Core.TopQueryParameter"
+ "name": "modelInfo",
+ "in": "body",
+ "description": "Model information.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ModelInfo"
+ }
}
],
"responses": {
- "200": {
- "description": "The request has succeeded.",
+ "201": {
+ "description": "The request has succeeded and a new resource has been created as a result.",
"schema": {
- "$ref": "#/definitions/Multivariate.ModelList"
+ "$ref": "#/definitions/Multivariate.AnomalyDetectionModel"
+ },
+ "headers": {
+ "location": {
+ "type": "string",
+ "description": "Location and ID of the model."
+ }
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
- "List multivariate models": {
- "$ref": "./examples/ListModel.json"
+ "Create and train multivariate model": {
+ "$ref": "./examples/TrainModel.json"
}
}
}
},
"/multivariate/models/{modelId}": {
- "delete": {
- "operationId": "Multivariate_DeleteMultivariateModel",
- "summary": "Delete Multivariate Model",
- "description": "Delete an existing multivariate model according to the modelId value.",
+ "get": {
+ "operationId": "Multivariate_GetMultivariateModel",
+ "summary": "Get Multivariate Model",
+ "description": "Get detailed information about the multivariate model, including the training status\nand variables used in the model.",
"parameters": [
{
"name": "modelId",
"in": "path",
- "required": true,
"description": "Model identifier.",
+ "required": true,
"type": "string"
}
],
"responses": {
- "204": {
- "description": "There is no content to send for this request, but the headers may be useful. "
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.AnomalyDetectionModel"
+ }
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
"x-ms-examples": {
- "Delete multivariate model": {
- "$ref": "./examples/DeleteModel.json"
+ "Get a multivariate model": {
+ "$ref": "./examples/GetModel.json"
}
}
},
- "get": {
- "operationId": "Multivariate_GetMultivariateModel",
- "summary": "Get Multivariate Model",
- "description": "Get detailed information about the multivariate model, including the training status\nand variables used in the model.",
+ "delete": {
+ "operationId": "Multivariate_DeleteMultivariateModel",
+ "summary": "Delete Multivariate Model",
+ "description": "Delete an existing multivariate model according to the modelId value.",
"parameters": [
{
"name": "modelId",
"in": "path",
- "required": true,
"description": "Model identifier.",
+ "required": true,
"type": "string"
}
],
"responses": {
- "200": {
- "description": "The request has succeeded.",
- "schema": {
- "$ref": "#/definitions/Multivariate.AnomalyDetectionModel"
- }
+ "204": {
+ "description": "There is no content to send for this request, but the headers may be useful. "
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
"x-ms-examples": {
- "Get a multivariate model": {
- "$ref": "./examples/GetModel.json"
+ "Delete multivariate model": {
+ "$ref": "./examples/DeleteModel.json"
}
}
}
@@ -285,15 +285,15 @@
{
"name": "modelId",
"in": "path",
- "required": true,
"description": "Model identifier.",
+ "required": true,
"type": "string"
},
{
"name": "options",
"in": "body",
- "required": true,
"description": "Request of multivariate anomaly detection.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Multivariate.MultivariateBatchDetectionOptions"
}
@@ -302,30 +302,30 @@
"responses": {
"202": {
"description": "The request has been accepted for processing, but processing has not yet completed.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.MultivariateDetectionResult"
+ },
"headers": {
"Operation-Id": {
- "description": "ID of the detection result.",
- "type": "string"
+ "type": "string",
+ "description": "ID of the detection result."
},
"Operation-Location": {
- "description": "Location of the detection result.",
- "type": "string"
+ "type": "string",
+ "description": "Location of the detection result."
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.MultivariateDetectionResult"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
@@ -345,15 +345,15 @@
{
"name": "modelId",
"in": "path",
- "required": true,
"description": "Model identifier.",
+ "required": true,
"type": "string"
},
{
"name": "options",
"in": "body",
- "required": true,
"description": "Request of the last detection.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Multivariate.MultivariateLastDetectionOptions"
}
@@ -368,14 +368,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Multivariate.ResponseError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Multivariate.ResponseError"
}
}
},
@@ -395,8 +395,8 @@
{
"name": "options",
"in": "body",
- "required": true,
"description": "Method of univariate anomaly detection.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Univariate.UnivariateChangePointDetectionOptions"
}
@@ -411,14 +411,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Univariate.AnomalyDetectorError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Univariate.AnomalyDetectorError"
}
}
},
@@ -438,8 +438,8 @@
{
"name": "options",
"in": "body",
- "required": true,
"description": "Method of univariate anomaly detection.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Univariate.UnivariateDetectionOptions"
}
@@ -454,14 +454,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Univariate.AnomalyDetectorError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Univariate.AnomalyDetectorError"
}
}
},
@@ -481,8 +481,8 @@
{
"name": "options",
"in": "body",
- "required": true,
"description": "Method of univariate anomaly detection.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Univariate.UnivariateDetectionOptions"
}
@@ -497,14 +497,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Univariate.AnomalyDetectorError"
+ },
"headers": {
"x-ms-error-code": {
"description": "Error code.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Univariate.AnomalyDetectorError"
}
}
},
@@ -530,6 +530,7 @@
},
"Multivariate.AlignPolicy": {
"type": "object",
+ "description": "Manner of aligning multiple variables.",
"properties": {
"alignMode": {
"$ref": "#/definitions/Multivariate.AlignMode",
@@ -544,16 +545,16 @@
"format": "float",
"description": "Field that's required when fillNAMethod is Fixed."
}
- },
- "description": "Manner of aligning multiple variables."
+ }
},
"Multivariate.AnomalyDetectionModel": {
"type": "object",
+ "description": "Response of getting a model.",
"properties": {
"modelId": {
"type": "string",
- "description": "Model identifier.",
- "format": "uuid"
+ "format": "uuid",
+ "description": "Model identifier."
},
"createdTime": {
"type": "string",
@@ -570,7 +571,6 @@
"description": "Training result of a model, including its status, errors, and diagnostics\ninformation."
}
},
- "description": "Response of getting a model.",
"required": [
"modelId",
"createdTime",
@@ -579,6 +579,7 @@
},
"Multivariate.AnomalyInterpretation": {
"type": "object",
+ "description": "Interpretation of the anomalous time stamp.",
"properties": {
"variable": {
"type": "string",
@@ -593,11 +594,11 @@
"$ref": "#/definitions/Multivariate.CorrelationChanges",
"description": "Correlation changes among the anomalous variables."
}
- },
- "description": "Interpretation of the anomalous time stamp."
+ }
},
"Multivariate.AnomalyState": {
"type": "object",
+ "description": "Anomaly status and information.",
"properties": {
"timestamp": {
"type": "string",
@@ -610,21 +611,20 @@
},
"errors": {
"type": "array",
+ "description": "Error message for the current time stamp.",
"items": {
"$ref": "#/definitions/Multivariate.ErrorResponse"
},
- "x-ms-identifiers": [],
- "description": "Error message for the current time stamp.",
- "x-typespec-name": "Multivariate.ErrorResponse[]"
+ "x-ms-identifiers": []
}
},
- "description": "Anomaly status and information.",
"required": [
"timestamp"
]
},
"Multivariate.AnomalyValue": {
"type": "object",
+ "description": "Detailed information of the anomalous time stamp.",
"properties": {
"isAnomaly": {
"type": "boolean",
@@ -646,15 +646,13 @@
},
"interpretation": {
"type": "array",
+ "description": "Interpretation of this anomalous time stamp.",
"items": {
"$ref": "#/definitions/Multivariate.AnomalyInterpretation"
},
- "x-ms-identifiers": [],
- "description": "Interpretation of this anomalous time stamp.",
- "x-typespec-name": "Multivariate.AnomalyInterpretation[]"
+ "x-ms-identifiers": []
}
},
- "description": "Detailed information of the anomalous time stamp.",
"required": [
"isAnomaly",
"severity",
@@ -663,17 +661,16 @@
},
"Multivariate.CorrelationChanges": {
"type": "object",
+ "description": "Correlation changes among the anomalous variables.",
"properties": {
"changedVariables": {
"type": "array",
+ "description": "Correlated variables that have correlation changes under an anomaly.",
"items": {
"type": "string"
- },
- "description": "Correlated variables that have correlation changes under an anomaly.",
- "x-typespec-name": "string[]"
+ }
}
- },
- "description": "Correlation changes among the anomalous variables."
+ }
},
"Multivariate.DataSchema": {
"type": "string",
@@ -701,6 +698,7 @@
},
"Multivariate.DiagnosticsInfo": {
"type": "object",
+ "description": "Diagnostics information to help inspect the states of a model or variable.",
"properties": {
"modelState": {
"$ref": "#/definitions/Multivariate.ModelState",
@@ -708,18 +706,17 @@
},
"variableStates": {
"type": "array",
+ "description": "Variable status.",
"items": {
"$ref": "#/definitions/Multivariate.VariableState"
},
- "x-ms-identifiers": [],
- "description": "Variable status.",
- "x-typespec-name": "Multivariate.VariableState[]"
+ "x-ms-identifiers": []
}
- },
- "description": "Diagnostics information to help inspect the states of a model or variable."
+ }
},
"Multivariate.ErrorResponse": {
"type": "object",
+ "description": "Error information that the API returned.",
"properties": {
"code": {
"type": "string",
@@ -730,7 +727,6 @@
"description": "Message that explains the error that the service reported."
}
},
- "description": "Error information that the API returned.",
"required": [
"code",
"message"
@@ -753,6 +749,7 @@
},
"Multivariate.ModelInfo": {
"type": "object",
+ "description": "Training result of a model, including its status, errors, and diagnostics\ninformation.",
"properties": {
"dataSource": {
"type": "string",
@@ -794,13 +791,12 @@
},
"errors": {
"type": "array",
+ "description": "Error messages after failure to create a model.",
"items": {
"$ref": "#/definitions/Multivariate.ErrorResponse"
},
- "x-ms-identifiers": [],
- "description": "Error messages after failure to create a model.",
- "x-typespec-name": "Multivariate.ErrorResponse[]",
- "readOnly": true
+ "readOnly": true,
+ "x-ms-identifiers": []
},
"diagnosticsInfo": {
"$ref": "#/definitions/Multivariate.DiagnosticsInfo",
@@ -808,7 +804,6 @@
"readOnly": true
}
},
- "description": "Training result of a model, including its status, errors, and diagnostics\ninformation.",
"required": [
"dataSource",
"startTime",
@@ -817,15 +812,15 @@
},
"Multivariate.ModelList": {
"type": "object",
+ "description": "Response of listing models.",
"properties": {
"models": {
"type": "array",
+ "description": "List of models.",
"items": {
"$ref": "#/definitions/Multivariate.AnomalyDetectionModel"
},
- "x-ms-identifiers": [],
- "description": "List of models.",
- "x-typespec-name": "Multivariate.AnomalyDetectionModel[]"
+ "x-ms-identifiers": []
},
"currentCount": {
"type": "integer",
@@ -842,7 +837,6 @@
"description": "Link to fetch more models."
}
},
- "description": "Response of listing models.",
"required": [
"models",
"currentCount",
@@ -851,45 +845,41 @@
},
"Multivariate.ModelState": {
"type": "object",
+ "description": "Model status.",
"properties": {
"epochIds": {
"type": "array",
+ "description": "Number of passes of the entire training dataset that the\nalgorithm has completed.",
"items": {
"type": "integer",
"format": "int32"
- },
- "description": "Number of passes of the entire training dataset that the\nalgorithm has completed.",
- "x-typespec-name": "int32[]"
+ }
},
"trainLosses": {
"type": "array",
+ "description": "List of metrics used to assess how the model fits the training data for each\nepoch.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "List of metrics used to assess how the model fits the training data for each\nepoch.",
- "x-typespec-name": "float32[]"
+ }
},
"validationLosses": {
"type": "array",
+ "description": "List of metrics used to assess how the model fits the validation set for each\nepoch.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "List of metrics used to assess how the model fits the validation set for each\nepoch.",
- "x-typespec-name": "float32[]"
+ }
},
"latenciesInSeconds": {
"type": "array",
+ "description": "Latency for each epoch.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Latency for each epoch.",
- "x-typespec-name": "float32[]"
+ }
}
- },
- "description": "Model status."
+ }
},
"Multivariate.ModelStatus": {
"type": "string",
@@ -928,6 +918,7 @@
},
"Multivariate.MultivariateBatchDetectionOptions": {
"type": "object",
+ "description": "Detection request for batch inference. This is an asynchronous inference that\nwill need another API to get detection results.",
"properties": {
"dataSource": {
"type": "string",
@@ -951,7 +942,6 @@
"description": "End date/time of data for detection, which should\nbe in ISO 8601 format."
}
},
- "description": "Detection request for batch inference. This is an asynchronous inference that\nwill need another API to get detection results.",
"required": [
"dataSource",
"startTime",
@@ -960,6 +950,7 @@
},
"Multivariate.MultivariateBatchDetectionResultSummary": {
"type": "object",
+ "description": "Multivariate anomaly detection status.",
"properties": {
"status": {
"$ref": "#/definitions/Multivariate.MultivariateBatchDetectionStatus",
@@ -967,28 +958,25 @@
},
"errors": {
"type": "array",
+ "description": "Error message when detection fails.",
"items": {
"$ref": "#/definitions/Multivariate.ErrorResponse"
},
- "x-ms-identifiers": [],
- "description": "Error message when detection fails.",
- "x-typespec-name": "Multivariate.ErrorResponse[]"
+ "x-ms-identifiers": []
},
"variableStates": {
"type": "array",
+ "description": "Variable status.",
"items": {
"$ref": "#/definitions/Multivariate.VariableState"
},
- "x-ms-identifiers": [],
- "description": "Variable status.",
- "x-typespec-name": "Multivariate.VariableState[]"
+ "x-ms-identifiers": []
},
"setupInfo": {
"$ref": "#/definitions/Multivariate.MultivariateBatchDetectionOptions",
"description": "Detection request for batch inference. This is an asynchronous inference that\nwill need another API to get detection results."
}
},
- "description": "Multivariate anomaly detection status.",
"required": [
"status",
"setupInfo"
@@ -1027,11 +1015,12 @@
},
"Multivariate.MultivariateDetectionResult": {
"type": "object",
+ "description": "Detection results for the resultId value.",
"properties": {
"resultId": {
"type": "string",
- "description": "Result identifier that's used to fetch the results of an inference call.",
- "format": "uuid"
+ "format": "uuid",
+ "description": "Result identifier that's used to fetch the results of an inference call."
},
"summary": {
"$ref": "#/definitions/Multivariate.MultivariateBatchDetectionResultSummary",
@@ -1039,15 +1028,13 @@
},
"results": {
"type": "array",
+ "description": "Detection result for each time stamp.",
"items": {
"$ref": "#/definitions/Multivariate.AnomalyState"
},
- "x-ms-identifiers": [],
- "description": "Detection result for each time stamp.",
- "x-typespec-name": "Multivariate.AnomalyState[]"
+ "x-ms-identifiers": []
}
},
- "description": "Detection results for the resultId value.",
"required": [
"resultId",
"summary",
@@ -1056,15 +1043,15 @@
},
"Multivariate.MultivariateLastDetectionOptions": {
"type": "object",
+ "description": "Request of the last detection.",
"properties": {
"variables": {
"type": "array",
+ "description": "Contains the inference data, including the name, time stamps (ISO 8601), and\nvalues of variables.",
"items": {
"$ref": "#/definitions/Multivariate.VariableValues"
},
- "x-ms-identifiers": [],
- "description": "Contains the inference data, including the name, time stamps (ISO 8601), and\nvalues of variables.",
- "x-typespec-name": "Multivariate.VariableValues[]"
+ "x-ms-identifiers": []
},
"topContributorCount": {
"type": "integer",
@@ -1073,37 +1060,35 @@
"default": 10
}
},
- "description": "Request of the last detection.",
"required": [
"variables"
]
},
"Multivariate.MultivariateLastDetectionResult": {
"type": "object",
+ "description": "Results of the last detection.",
"properties": {
"variableStates": {
"type": "array",
+ "description": "Variable status.",
"items": {
"$ref": "#/definitions/Multivariate.VariableState"
},
- "x-ms-identifiers": [],
- "description": "Variable status.",
- "x-typespec-name": "Multivariate.VariableState[]"
+ "x-ms-identifiers": []
},
"results": {
"type": "array",
+ "description": "Anomaly status and information.",
"items": {
"$ref": "#/definitions/Multivariate.AnomalyState"
},
- "x-ms-identifiers": [],
- "description": "Anomaly status and information.",
- "x-typespec-name": "Multivariate.AnomalyState[]"
+ "x-ms-identifiers": []
}
- },
- "description": "Results of the last detection."
+ }
},
"Multivariate.ResponseError": {
"type": "object",
+ "description": "Error response.",
"properties": {
"code": {
"type": "string",
@@ -1114,7 +1099,6 @@
"description": "Message that explains the error that the service reported."
}
},
- "description": "Error response.",
"required": [
"code",
"message"
@@ -1122,6 +1106,7 @@
},
"Multivariate.VariableState": {
"type": "object",
+ "description": "Variable status.",
"properties": {
"variable": {
"type": "string",
@@ -1149,11 +1134,11 @@
"format": "date-time",
"description": "Last valid time stamp with a value of input data."
}
- },
- "description": "Variable status."
+ }
},
"Multivariate.VariableValues": {
"type": "object",
+ "description": "Variable values.",
"properties": {
"variable": {
"type": "string",
@@ -1161,23 +1146,20 @@
},
"timestamps": {
"type": "array",
+ "description": "Time stamps of the last detection request.",
"items": {
"type": "string"
- },
- "description": "Time stamps of the last detection request.",
- "x-typespec-name": "string[]"
+ }
},
"values": {
"type": "array",
+ "description": "Values of variables.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Values of variables.",
- "x-typespec-name": "float32[]"
+ }
}
},
- "description": "Variable values.",
"required": [
"variable",
"timestamps",
@@ -1186,6 +1168,7 @@
},
"Univariate.AnomalyDetectorError": {
"type": "object",
+ "description": "Error information that the API returned.",
"properties": {
"code": {
"$ref": "#/definitions/Univariate.AnomalyDetectorErrorCodes",
@@ -1196,7 +1179,6 @@
"description": "Message that explains the error that the service reported."
}
},
- "description": "Error information that the API returned.",
"required": [
"code",
"message"
@@ -1321,6 +1303,7 @@
},
"Univariate.TimeSeriesPoint": {
"type": "object",
+ "description": "Definition of input time series points.",
"properties": {
"timestamp": {
"type": "string",
@@ -1333,22 +1316,21 @@
"description": "Measurement of that point."
}
},
- "description": "Definition of input time series points.",
"required": [
"value"
]
},
"Univariate.UnivariateChangePointDetectionOptions": {
"type": "object",
+ "description": "Request of change point detection.",
"properties": {
"series": {
"type": "array",
+ "description": "Time series data points. Points should be sorted by time stamp in ascending\norder to match the change point detection result.",
"items": {
"$ref": "#/definitions/Univariate.TimeSeriesPoint"
},
- "x-ms-identifiers": [],
- "description": "Time series data points. Points should be sorted by time stamp in ascending\norder to match the change point detection result.",
- "x-typespec-name": "Univariate.TimeSeriesPoint[]"
+ "x-ms-identifiers": []
},
"granularity": {
"$ref": "#/definitions/Univariate.TimeGranularity",
@@ -1375,7 +1357,6 @@
"description": "Argument that indicates an advanced model parameter between 0.0 and 1.0. The lower the\nvalue is, the larger the trend error is, which means less change point will\nbe accepted."
}
},
- "description": "Request of change point detection.",
"required": [
"series",
"granularity"
@@ -1383,6 +1364,7 @@
},
"Univariate.UnivariateChangePointDetectionResult": {
"type": "object",
+ "description": "Response of change point detection.",
"properties": {
"period": {
"type": "integer",
@@ -1392,35 +1374,32 @@
},
"isChangePoint": {
"type": "array",
+ "description": "Change point properties for each input point. True means\nan anomaly (either negative or positive) has been detected. The index of the\narray is consistent with the input series.",
"items": {
"type": "boolean"
- },
- "description": "Change point properties for each input point. True means\nan anomaly (either negative or positive) has been detected. The index of the\narray is consistent with the input series.",
- "x-typespec-name": "boolean[]"
+ }
},
"confidenceScores": {
"type": "array",
+ "description": "Change point confidence of each point.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Change point confidence of each point.",
- "x-typespec-name": "float32[]"
+ }
}
- },
- "description": "Response of change point detection."
+ }
},
"Univariate.UnivariateDetectionOptions": {
"type": "object",
+ "description": "Request of the entire or last anomaly detection.",
"properties": {
"series": {
"type": "array",
+ "description": "Time series data points. Points should be sorted by time stamp in ascending\norder to match the anomaly detection result. If the data is not sorted\ncorrectly or there's a duplicated time stamp, the API won't work. In such\na case, an error message is returned.",
"items": {
"$ref": "#/definitions/Univariate.TimeSeriesPoint"
},
- "x-ms-identifiers": [],
- "description": "Time series data points. Points should be sorted by time stamp in ascending\norder to match the anomaly detection result. If the data is not sorted\ncorrectly or there's a duplicated time stamp, the API won't work. In such\na case, an error message is returned.",
- "x-typespec-name": "Univariate.TimeSeriesPoint[]"
+ "x-ms-identifiers": []
},
"granularity": {
"$ref": "#/definitions/Univariate.TimeGranularity",
@@ -1456,13 +1435,13 @@
"description": "Specifies the value to fill. It's used when granularity is not \"none\"\nand imputeMode is \"fixed\"."
}
},
- "description": "Request of the entire or last anomaly detection.",
"required": [
"series"
]
},
"Univariate.UnivariateEntireDetectionResult": {
"type": "object",
+ "description": "Response of the entire anomaly detection.",
"properties": {
"period": {
"type": "integer",
@@ -1471,66 +1450,58 @@
},
"expectedValues": {
"type": "array",
+ "description": "Expected value for each input point. The index of the\narray is consistent with the input series.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Expected value for each input point. The index of the\narray is consistent with the input series.",
- "x-typespec-name": "float32[]"
+ }
},
"upperMargins": {
"type": "array",
+ "description": "Upper margin of each input point. UpperMargin is used to\ncalculate upperBoundary, which is equal to expectedValue + (100 -\nmarginScale)*upperMargin. Anomalies in the response can be filtered by\nupperBoundary and lowerBoundary. Adjusting the marginScale value can help filter less\nsignificant anomalies on the client side. The index of the array is\nconsistent with the input series.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Upper margin of each input point. UpperMargin is used to\ncalculate upperBoundary, which is equal to expectedValue + (100 -\nmarginScale)*upperMargin. Anomalies in the response can be filtered by\nupperBoundary and lowerBoundary. Adjusting the marginScale value can help filter less\nsignificant anomalies on the client side. The index of the array is\nconsistent with the input series.",
- "x-typespec-name": "float32[]"
+ }
},
"lowerMargins": {
"type": "array",
+ "description": "Lower margin of each input point. LowerMargin is used to\ncalculate lowerBoundary, which is equal to expectedValue - (100 -\nmarginScale)*lowerMargin. Points between the boundary can be marked as normal\nones on the client side. The index of the array is consistent with the input\nseries.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Lower margin of each input point. LowerMargin is used to\ncalculate lowerBoundary, which is equal to expectedValue - (100 -\nmarginScale)*lowerMargin. Points between the boundary can be marked as normal\nones on the client side. The index of the array is consistent with the input\nseries.",
- "x-typespec-name": "float32[]"
+ }
},
"isAnomaly": {
"type": "array",
+ "description": "Anomaly properties for each input point. True means an\nanomaly (either negative or positive) has been detected. The index of the array\nis consistent with the input series.",
"items": {
"type": "boolean"
- },
- "description": "Anomaly properties for each input point. True means an\nanomaly (either negative or positive) has been detected. The index of the array\nis consistent with the input series.",
- "x-typespec-name": "boolean[]"
+ }
},
"isNegativeAnomaly": {
"type": "array",
+ "description": "Anomaly status in a negative direction for each input\npoint. True means a negative anomaly has been detected. A negative anomaly\nmeans the point is detected as an anomaly and its real value is smaller than\nthe expected one. The index of the array is consistent with the input series.",
"items": {
"type": "boolean"
- },
- "description": "Anomaly status in a negative direction for each input\npoint. True means a negative anomaly has been detected. A negative anomaly\nmeans the point is detected as an anomaly and its real value is smaller than\nthe expected one. The index of the array is consistent with the input series.",
- "x-typespec-name": "boolean[]"
+ }
},
"isPositiveAnomaly": {
"type": "array",
+ "description": "Anomaly status in a positive direction for each input\npoint. True means a positive anomaly has been detected. A positive anomaly\nmeans the point is detected as an anomaly and its real value is larger than the\nexpected one. The index of the array is consistent with the input series.",
"items": {
"type": "boolean"
- },
- "description": "Anomaly status in a positive direction for each input\npoint. True means a positive anomaly has been detected. A positive anomaly\nmeans the point is detected as an anomaly and its real value is larger than the\nexpected one. The index of the array is consistent with the input series.",
- "x-typespec-name": "boolean[]"
+ }
},
"severity": {
"type": "array",
+ "description": "Severity score for each input point. The larger the value is, the more\nsevere the anomaly is. For normal points, the severity is always 0.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "Severity score for each input point. The larger the value is, the more\nsevere the anomaly is. For normal points, the severity is always 0.",
- "x-typespec-name": "float32[]"
+ }
}
},
- "description": "Response of the entire anomaly detection.",
"required": [
"period",
"expectedValues",
@@ -1543,6 +1514,7 @@
},
"Univariate.UnivariateLastDetectionResult": {
"type": "object",
+ "description": "Response of the last anomaly detection.",
"properties": {
"period": {
"type": "integer",
@@ -1587,7 +1559,6 @@
"description": "Severity score for the last input point. The larger the value is, the more\nsevere the anomaly is. For normal points, the severity is always 0."
}
},
- "description": "Response of the last anomaly detection.",
"required": [
"period",
"suggestedWindow",
@@ -1604,18 +1575,18 @@
"Azure.Core.SkipQueryParameter": {
"name": "skip",
"in": "query",
- "required": false,
"description": "The number of result items to skip.",
- "default": 0,
+ "required": false,
"type": "integer",
"format": "int32",
+ "default": 0,
"x-ms-parameter-location": "method"
},
"Azure.Core.TopQueryParameter": {
"name": "top",
"in": "query",
- "required": false,
"description": "The number of result items to return.",
+ "required": false,
"type": "integer",
"format": "int32",
"x-ms-parameter-location": "method"
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/azureopenai.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/azureopenai.json
new file mode 100644
index 000000000000..62bed5a0860b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/azureopenai.json
@@ -0,0 +1,1869 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure OpenAI API version 2023-07-01-preview",
+ "description": "APIs for fine-tuning, managing deployments of OpenAI models and to support OpenAI DALL-E.",
+ "version": "2023-07-01-preview"
+ },
+ "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": [
+ {
+ "$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-tunes": {
+ "get": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTuneList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting all fine tune jobs owned by this account.": {
+ "$ref": "./examples/get_finetunes.json"
+ }
+ }
+ },
+ "post": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "body",
+ "name": "fineTune",
+ "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 by optionally specified.\r\nThese include batch size, learning rate multiplier, number of epochs and others.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FineTuneCreation"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "The fine tune has been successfully created.",
+ "schema": {
+ "$ref": "#/definitions/FineTune"
+ },
+ "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 tune job.": {
+ "$ref": "./examples/post_finetune.json"
+ },
+ "Creating a fine tune job for classification.": {
+ "$ref": "./examples/post_classification_finetune.json"
+ }
+ }
+ }
+ },
+ "/fine-tunes/{fine-tune-id}": {
+ "get": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTune"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting a fine tune job.": {
+ "$ref": "./examples/get_finetune.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "summary": "Deletes the fine-tune job specified by the given fine-tune-id.",
+ "operationId": "FineTunes_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-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 tune job.": {
+ "$ref": "./examples/delete_finetune.json"
+ }
+ }
+ }
+ },
+ "/fine-tunes/{fine-tune-id}/events": {
+ "get": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_GetEvents",
+ "produces": [
+ "application/json",
+ "text/event-stream"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "stream",
+ "description": "A flag indicating whether to stream events for the fine-tune job. If set to true,\r\n events will be sent as data-only server-sent events as they become available. The stream will terminate with\r\n a data: [DONE] message when the job is finished (succeeded, cancelled, or failed).\r\n If set to false, only events generated so far will be returned..",
+ "type": "boolean"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/EventList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting events of a fine tune job.": {
+ "$ref": "./examples/get_finetune_events.json"
+ }
+ }
+ }
+ },
+ "/fine-tunes/{fine-tune-id}/cancel": {
+ "post": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "summary": "Cancels the processing of the fine-tune job specified by the given fine-tune-id.",
+ "operationId": "FineTunes_Cancel",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-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/FineTune"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Canceling a fine tune job.": {
+ "$ref": "./examples/cancel_finetune.json"
+ }
+ }
+ }
+ },
+ "/images/generations:submit": {
+ "post": {
+ "summary": "Generates a batch of images from a text caption",
+ "operationId": "Images_Generate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "header",
+ "name": "Operation-Id",
+ "description": "ID of the status monitor for the operation. If the Operation-Id header matches an existing operation and the request is not identical to the prior request, it will fail with a 400 Bad Request.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "The specification of the images that should be generated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/GenerateImagesCreation"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "operation-location": {
+ "type": "string",
+ "format": "url",
+ "description": "URL to poll for the operation result."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/GenerateImagesResponse"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "The error code indicating what went wrong."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Creating an image generation operation.": {
+ "$ref": "./examples/post_images_generate.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"
+ }
+ }
+ }
+ },
+ "/operations/images/{operation-id}": {
+ "get": {
+ "summary": "Returns the status of the images operation",
+ "operationId": "OperationsImages_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "operation-id",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "description": "The id of the operation"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "headers": {
+ "retry-after": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Indicates the number of seconds that the client should wait before executing another GET request if the operation did not terminate yet."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/OperationResponse"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "The error code indicating what went wrong."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting the result of a specific operation.": {
+ "$ref": "./examples/get_images_operation.json"
+ }
+ }
+ },
+ "delete": {
+ "summary": "Deletes an operation (if in terminal state) and all generated and user provided images associated with the operation.",
+ "operationId": "OperationsImages_Delete",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "operation-id",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "description": "The id of the operation"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent",
+ "headers": {
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "The error code indicating what went wrong."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Deleting a specific operation.": {
+ "$ref": "./examples/delete_images_operation.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"
+ ],
+ "readOnly": true,
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "Event": {
+ "title": "Event",
+ "required": [
+ "created_at",
+ "level",
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "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"
+ }
+ }
+ },
+ "EventList": {
+ "title": "EventList",
+ "description": "Represents a list of events.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Event"
+ }
+ }
+ }
+ },
+ "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"
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "updated_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was modified last (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "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"
+ },
+ "statistics": {
+ "$ref": "#/definitions/FileStatistics"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "FileStatistics": {
+ "title": "FileStatistics",
+ "description": "A file is a document usable for training and validation. It can also be a service generated document with result details.",
+ "type": "object",
+ "properties": {
+ "tokens": {
+ "format": "int32",
+ "description": "The number of tokens used in prompts and completions for files of kind \"fine-tune\" once validation of file content is complete.",
+ "type": "integer"
+ },
+ "examples": {
+ "format": "int32",
+ "description": "The number of contained training examples in files of kind \"fine-tune\" once validation of file content is complete.",
+ "type": "integer"
+ }
+ }
+ },
+ "FineTune": {
+ "title": "FineTune",
+ "description": "Fine tuning is a job to tailor a model to specific training data.",
+ "required": [
+ "model",
+ "training_files"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "updated_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was modified last (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "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_files": {
+ "description": "The file identities (file-id) that are used for training the fine tuned model.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/File"
+ }
+ },
+ "validation_files": {
+ "description": "The file identities (file-id) that are used to evaluate the fine tuned model during training.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/File"
+ }
+ },
+ "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": {
+ "$ref": "#/definitions/File"
+ }
+ },
+ "events": {
+ "description": "The events that show the progress of the fine-tune run including queued, running and completed.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Event"
+ }
+ },
+ "organisation_id": {
+ "description": "The organisation id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.",
+ "type": "string"
+ },
+ "user_id": {
+ "description": "The user id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.",
+ "type": "string"
+ },
+ "hyperparams": {
+ "$ref": "#/definitions/HyperParameters"
+ },
+ "suffix": {
+ "description": "The suffix used to identify the fine-tuned model.",
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "FineTuneCreation": {
+ "title": "FineTuneCreation",
+ "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"
+ },
+ "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"
+ },
+ "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"
+ },
+ "prompt_loss_weight": {
+ "format": "double",
+ "description": "The weight to use for loss on the prompt tokens. This controls how much the model tries to learn to generate the prompt\r\n(as compared to the completion which always has a weight of 1.0), and can add a stabilizing effect to training when completions are short.\r\nIf prompts are extremely long (relative to completions), it may make sense to reduce this weight so as to avoid over-prioritizing learning the prompt.",
+ "type": "number"
+ },
+ "compute_classification_metrics": {
+ "description": "A value indicating whether to compute classification metrics.\r\nIf set, we calculate classification-specific metrics such as accuracy and F-1 score using the validation set at the end of every epoch.\r\nThese metrics can be viewed in the results file. In order to compute classification metrics, you must provide a validation_file.Additionally,\r\nyou must specify classification_n_classes for multiclass classification or classification_positive_class for binary classification.",
+ "type": "boolean"
+ },
+ "classification_n_classes": {
+ "format": "int32",
+ "description": "The number of classes in a classification task.\r\nThis parameter is required for multiclass classification.",
+ "type": "integer"
+ },
+ "classification_positive_class": {
+ "description": "The positive class in binary classification.\r\nThis parameter is needed to generate precision, recall, and F1 metrics when doing binary classification.",
+ "type": "string"
+ },
+ "classification_betas": {
+ "description": "The classification beta values. If this is provided, we calculate F-beta scores at the specified beta values.\r\nThe F-beta score is a generalization of F-1 score. This is only used for binary classification.\r\nWith a beta of 1 (i.e.the F-1 score), precision and recall are given the same weight.\r\nA larger beta score puts more weight on recall and less on precision. A smaller beta score puts more weight on precision and less on recall.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ },
+ "FineTuneList": {
+ "title": "FineTuneList",
+ "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/FineTune"
+ }
+ }
+ }
+ },
+ "GenerateImagesCreation": {
+ "title": "GenerateImagesCreation",
+ "description": "Defines the request to create an operation to generate images.",
+ "type": "object",
+ "properties": {
+ "prompt": {
+ "description": "A text description of the desired image(s).",
+ "type": "string",
+ "minLength": 1
+ },
+ "n": {
+ "description": "The number of images to generate.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "default": 1
+ },
+ "size": {
+ "$ref": "#/definitions/Size"
+ },
+ "user": {
+ "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "prompt"
+ ]
+ },
+ "GenerateImagesResponse": {
+ "title": "GenerateImagesResponse",
+ "description": "Defines response after creating an operation to generate images. It contains the status and the id of the operation.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "id": {
+ "type": "string",
+ "format": "uuid",
+ "description": " The Id of the asynchronous operation that can be used to query its status later."
+ }
+ },
+ "required": [
+ "id",
+ "status"
+ ]
+ },
+ "HyperParameters": {
+ "title": "HyperParameters",
+ "description": "The hyper parameter settings used in a fine tune job.",
+ "type": "object",
+ "properties": {
+ "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"
+ },
+ "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"
+ },
+ "prompt_loss_weight": {
+ "format": "double",
+ "description": "The weight to use for loss on the prompt tokens. This controls how much the model tries to learn to generate the prompt\r\n(as compared to the completion which always has a weight of 1.0), and can add a stabilizing effect to training when completions are short.\r\nIf prompts are extremely long (relative to completions), it may make sense to reduce this weight so as to avoid over-prioritizing learning the prompt.",
+ "type": "number"
+ },
+ "compute_classification_metrics": {
+ "description": "A value indicating whether to compute classification metrics.\r\nIf set, we calculate classification-specific metrics such as accuracy and F-1 score using the validation set at the end of every epoch.\r\nThese metrics can be viewed in the results file. In order to compute classification metrics, you must provide a validation_file.Additionally,\r\nyou must specify classification_n_classes for multiclass classification or classification_positive_class for binary classification.",
+ "type": "boolean"
+ },
+ "classification_n_classes": {
+ "format": "int32",
+ "description": "The number of classes in a classification task.\r\nThis parameter is required for multiclass classification.",
+ "type": "integer"
+ },
+ "classification_positive_class": {
+ "description": "The positive class in binary classification.\r\nThis parameter is needed to generate precision, recall, and F1 metrics when doing binary classification.",
+ "type": "string"
+ },
+ "classification_betas": {
+ "description": "The classification beta values. If this is provided, we calculate F-beta scores at the specified beta values.\r\nThe F-beta score is a generalization of F-1 score. This is only used for binary classification.\r\nWith a beta of 1 (i.e.the F-1 score), precision and recall are given the same weight.\r\nA larger beta score puts more weight on recall and less on precision. A smaller beta score puts more weight on precision and less on recall.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ },
+ "ImageResult": {
+ "title": "ImageResult",
+ "type": "object",
+ "description": "The image url if successful, and an error otherwise.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "format": "url",
+ "description": "The URL that provides temporary access to download the generated image."
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "ImageResults": {
+ "title": "ImageResults",
+ "description": "The result data of the operation, if successful",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImageResult"
+ }
+ },
+ "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"
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "updated_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was modified last (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "OperationResponse": {
+ "title": "OperationResponse",
+ "description": "The operation response containing the id and the status of the operation. If successful, it contains data with the generated images and an error otherwise.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "format": "uuid",
+ "description": "The ID of the operation.",
+ "type": "string"
+ },
+ "created": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer"
+ },
+ "expires": {
+ "format": "unixtime",
+ "description": "A timestamp when this operation and its associated images expire and will be deleted (in unix epochs).",
+ "type": "integer"
+ },
+ "result": {
+ "type": "object",
+ "description": "The result of the operation if the operation succeeded.",
+ "properties": {
+ "created": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer"
+ },
+ "data": {
+ "$ref": "#/definitions/ImageResults"
+ }
+ },
+ "required": [
+ "created",
+ "data"
+ ]
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "created"
+ ]
+ },
+ "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."
+ }
+ ]
+ }
+ },
+ "Size": {
+ "title": "Size",
+ "description": "The desired size of the generated images. Must be one of 256x256, 512x512, or 1024x1024.",
+ "enum": [
+ "256x256",
+ "512x512",
+ "1024x1024"
+ ],
+ "type": "string",
+ "default": "1024x1024",
+ "x-ms-enum": {
+ "name": "Size",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "256x256",
+ "description": "The desired size of the generated image is 256x256 pixels.",
+ "name": "Size256x256"
+ },
+ {
+ "value": "512x512",
+ "description": "The desired size of the generated image is 512x512 pixels.",
+ "name": "Size512x512"
+ },
+ {
+ "value": "1024x1024",
+ "description": "The desired size of the generated image is 1024x1024 pixels.",
+ "name": "Size1024x1024"
+ }
+ ]
+ }
+ },
+ "State": {
+ "title": "State",
+ "description": "The state of a job or item.",
+ "enum": [
+ "notRunning",
+ "running",
+ "succeeded",
+ "canceled",
+ "failed",
+ "deleted"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "State",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "notRunning",
+ "description": "The operation was created and is 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": "canceled",
+ "description": "The operation has been canceled and is incomplete."
+ },
+ {
+ "value": "failed",
+ "description": "The operation has completed processing with a failure and cannot be further consumed."
+ },
+ {
+ "value": "deleted",
+ "description": "The entity has been deleted but may still be referenced by other entities predating the deletion."
+ }
+ ]
+ }
+ },
+ "TypeDiscriminator": {
+ "title": "TypeDiscriminator",
+ "description": "Defines the type of an object.",
+ "enum": [
+ "list",
+ "fine-tune",
+ "file",
+ "fine-tune-event",
+ "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-tune",
+ "description": "This object represents a fine tune job."
+ },
+ {
+ "value": "file",
+ "description": "This object represents a file."
+ },
+ {
+ "value": "fine-tune-event",
+ "description": "This object represents an event of a fine tune job."
+ },
+ {
+ "value": "model",
+ "description": "This object represents a model (can be a base models or fine tune job result)."
+ },
+ {
+ "value": "deployment",
+ "description": "This object represents a deployment."
+ }
+ ]
+ }
+ }
+ },
+ "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": "2023-07-01-preview",
+ "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"
+ }
+ ]
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/cancel_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/cancel_finetune.json
new file mode 100644
index 000000000000..fb3f774a0293
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/cancel_finetune.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "events": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job canceled.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "canceled",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_file.json
new file mode 100644
index 000000000000..80286eb43aa0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_file.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_finetune.json
new file mode 100644
index 000000000000..bade00fe5eb2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_finetune.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_images_operation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_images_operation.json
new file mode 100644
index 000000000000..e2119415542b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/delete_images_operation.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "Api-Key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "operation-id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa"
+ },
+ "responses": {
+ "204": {
+ "headers": {
+ "x-ms-request-id": "29fd3fe5-ab2f-44e0-aefa-0dfe9bd1c03f"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_file.json
new file mode 100644
index 000000000000..a19ef46a70f5
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_file.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_file_content.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_file_content.json
new file mode 100644
index 000000000000..b10842bbe05c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_file_content.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": "raw file content"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_files.json
new file mode 100644
index 000000000000..fa45146763ff
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_files.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ },
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetune.json
new file mode 100644
index 000000000000..b9aa3af4a448
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetune.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "result_files": [
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "events": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetune_events.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetune_events.json
new file mode 100644
index 000000000000..c0bc35068e5f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetune_events.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetunes.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetunes.json
new file mode 100644
index 000000000000..bf9d40f73234
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_finetunes.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "result_files": [
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "events": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_images_operation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_images_operation.json
new file mode 100644
index 000000000000..b0dfdc4dbcfc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_images_operation.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "Api-Key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "operation-id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "x-ms-request-id": "29fd3fe5-ab2f-44e0-aefa-0dfe9bd1c03f"
+ },
+ "body": {
+ "created": 1679320850,
+ "result": {
+ "created": 1679320850,
+ "data": [
+ {
+ "url": "https://aoairesource.blob.core.windows.net/private/images?SAS-token"
+ }
+ ]
+ },
+ "expires": 1679407255,
+ "id": "41dc2981-bf72-492a-b4fe-7eed680a1681",
+ "status": "succeeded"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_model_base.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_model_base.json
new file mode 100644
index 000000000000..f74017fc5f98
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_model_base.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "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,
+ "updated_at": 1646127311,
+ "object": "model"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_model_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_model_finetune.json
new file mode 100644
index 000000000000..86f87bf96793
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_model_finetune.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "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,
+ "updated_at": 1646127311,
+ "object": "model"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_models.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_models.json
new file mode 100644
index 000000000000..47e6dd499133
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/get_models.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview"
+ },
+ "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,
+ "updated_at": 1646127311,
+ "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,
+ "updated_at": 1646127311,
+ "object": "model"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/import_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/import_file.json
new file mode 100644
index 000000000000..1eae74ec023a
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/import_file.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "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,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_classification_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_classification_finetune.json
new file mode 100644
index 000000000000..76dbeefeb29d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_classification_finetune.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "fineTune": {
+ "compute_classification_metrics": true,
+ "classification_n_classes": 4,
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "location": "https://aoairesource.openai.azure.com/openai/fine-tunes/ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "body": {
+ "hyperparams": {
+ "compute_classification_metrics": true,
+ "classification_n_classes": 4,
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "notRunning",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_finetune.json
new file mode 100644
index 000000000000..348aa9f851a0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_finetune.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "fineTune": {
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "location": "https://aoairesource.openai.azure.com/openai/fine-tunes/ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "body": {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "notRunning",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_images_generate.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_images_generate.json
new file mode 100644
index 000000000000..2b13d73db1a9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/post_images_generate.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "Api-Key": "{api key}",
+ "api-version": "2023-07-01-preview",
+ "body": {
+ "prompt": "An avocado chair",
+ "size": "512x512",
+ "n": 3
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "operation-location": "https://aoairesource.openai.azure.com/openai/dalle/operations/images/f508bcf2-e651-4b4b-85a7-58ad77981ffa?api-version=2023-07-01-preview",
+ "x-ms-request-id": "29fd3fe5-ab2f-44e0-aefa-0dfe9bd1c03f"
+ },
+ "body": {
+ "id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa",
+ "status": "notRunning"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/upload_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/upload_file.json
new file mode 100644
index 000000000000..78c5fd5d85f1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-07-01-preview/examples/upload_file.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-07-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": {
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "notRunning",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/azureopenai.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/azureopenai.json
new file mode 100644
index 000000000000..15878bf18ab4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/azureopenai.json
@@ -0,0 +1,1869 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure OpenAI API version 2023-08-01-preview",
+ "description": "APIs for fine-tuning, managing deployments of OpenAI models and to support OpenAI DALL-E.",
+ "version": "2023-08-01-preview"
+ },
+ "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": [
+ {
+ "$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-tunes": {
+ "get": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTuneList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting all fine tune jobs owned by this account.": {
+ "$ref": "./examples/get_finetunes.json"
+ }
+ }
+ },
+ "post": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "body",
+ "name": "fineTune",
+ "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 by optionally specified.\r\nThese include batch size, learning rate multiplier, number of epochs and others.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FineTuneCreation"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "The fine tune has been successfully created.",
+ "schema": {
+ "$ref": "#/definitions/FineTune"
+ },
+ "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 tune job.": {
+ "$ref": "./examples/post_finetune.json"
+ },
+ "Creating a fine tune job for classification.": {
+ "$ref": "./examples/post_classification_finetune.json"
+ }
+ }
+ }
+ },
+ "/fine-tunes/{fine-tune-id}": {
+ "get": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTune"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting a fine tune job.": {
+ "$ref": "./examples/get_finetune.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "summary": "Deletes the fine-tune job specified by the given fine-tune-id.",
+ "operationId": "FineTunes_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-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 tune job.": {
+ "$ref": "./examples/delete_finetune.json"
+ }
+ }
+ }
+ },
+ "/fine-tunes/{fine-tune-id}/events": {
+ "get": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "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": "FineTunes_GetEvents",
+ "produces": [
+ "application/json",
+ "text/event-stream"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "stream",
+ "description": "A flag indicating whether to stream events for the fine-tune job. If set to true,\r\n events will be sent as data-only server-sent events as they become available. The stream will terminate with\r\n a data: [DONE] message when the job is finished (succeeded, cancelled, or failed).\r\n If set to false, only events generated so far will be returned..",
+ "type": "boolean"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/EventList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting events of a fine tune job.": {
+ "$ref": "./examples/get_finetune_events.json"
+ }
+ }
+ }
+ },
+ "/fine-tunes/{fine-tune-id}/cancel": {
+ "post": {
+ "tags": [
+ "Fine-tunes:"
+ ],
+ "summary": "Cancels the processing of the fine-tune job specified by the given fine-tune-id.",
+ "operationId": "FineTunes_Cancel",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tune-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/FineTune"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Canceling a fine tune job.": {
+ "$ref": "./examples/cancel_finetune.json"
+ }
+ }
+ }
+ },
+ "/images/generations:submit": {
+ "post": {
+ "summary": "Generates a batch of images from a text caption",
+ "operationId": "Images_Generate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "header",
+ "name": "Operation-Id",
+ "description": "ID of the status monitor for the operation. If the Operation-Id header matches an existing operation and the request is not identical to the prior request, it will fail with a 400 Bad Request.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "The specification of the images that should be generated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/GenerateImagesCreation"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "operation-location": {
+ "type": "string",
+ "format": "url",
+ "description": "URL to poll for the operation result."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/GenerateImagesResponse"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "The error code indicating what went wrong."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Creating an image generation operation.": {
+ "$ref": "./examples/post_images_generate.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"
+ }
+ }
+ }
+ },
+ "/operations/images/{operation-id}": {
+ "get": {
+ "summary": "Returns the status of the images operation",
+ "operationId": "OperationsImages_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "operation-id",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "description": "The id of the operation"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "headers": {
+ "retry-after": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Indicates the number of seconds that the client should wait before executing another GET request if the operation did not terminate yet."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/OperationResponse"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "The error code indicating what went wrong."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting the result of a specific operation.": {
+ "$ref": "./examples/get_images_operation.json"
+ }
+ }
+ },
+ "delete": {
+ "summary": "Deletes an operation (if in terminal state) and all generated and user provided images associated with the operation.",
+ "operationId": "OperationsImages_Delete",
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "operation-id",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "description": "The id of the operation"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent",
+ "headers": {
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "The error code indicating what went wrong."
+ },
+ "x-ms-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Service generated correlation id identifying the request, in the form of a GUID."
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Deleting a specific operation.": {
+ "$ref": "./examples/delete_images_operation.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"
+ ],
+ "readOnly": true,
+ "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"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "Event": {
+ "title": "Event",
+ "required": [
+ "created_at",
+ "level",
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "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"
+ }
+ }
+ },
+ "EventList": {
+ "title": "EventList",
+ "description": "Represents a list of events.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Event"
+ }
+ }
+ }
+ },
+ "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"
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "updated_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was modified last (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "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"
+ },
+ "statistics": {
+ "$ref": "#/definitions/FileStatistics"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "FileStatistics": {
+ "title": "FileStatistics",
+ "description": "A file is a document usable for training and validation. It can also be a service generated document with result details.",
+ "type": "object",
+ "properties": {
+ "tokens": {
+ "format": "int32",
+ "description": "The number of tokens used in prompts and completions for files of kind \"fine-tune\" once validation of file content is complete.",
+ "type": "integer"
+ },
+ "examples": {
+ "format": "int32",
+ "description": "The number of contained training examples in files of kind \"fine-tune\" once validation of file content is complete.",
+ "type": "integer"
+ }
+ }
+ },
+ "FineTune": {
+ "title": "FineTune",
+ "description": "Fine tuning is a job to tailor a model to specific training data.",
+ "required": [
+ "model",
+ "training_files"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "updated_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was modified last (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "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_files": {
+ "description": "The file identities (file-id) that are used for training the fine tuned model.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/File"
+ }
+ },
+ "validation_files": {
+ "description": "The file identities (file-id) that are used to evaluate the fine tuned model during training.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/File"
+ }
+ },
+ "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": {
+ "$ref": "#/definitions/File"
+ }
+ },
+ "events": {
+ "description": "The events that show the progress of the fine-tune run including queued, running and completed.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Event"
+ }
+ },
+ "organisation_id": {
+ "description": "The organisation id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.",
+ "type": "string"
+ },
+ "user_id": {
+ "description": "The user id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.",
+ "type": "string"
+ },
+ "hyperparams": {
+ "$ref": "#/definitions/HyperParameters"
+ },
+ "suffix": {
+ "description": "The suffix used to identify the fine-tuned model.",
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "FineTuneCreation": {
+ "title": "FineTuneCreation",
+ "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"
+ },
+ "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"
+ },
+ "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"
+ },
+ "prompt_loss_weight": {
+ "format": "double",
+ "description": "The weight to use for loss on the prompt tokens. This controls how much the model tries to learn to generate the prompt\r\n(as compared to the completion which always has a weight of 1.0), and can add a stabilizing effect to training when completions are short.\r\nIf prompts are extremely long (relative to completions), it may make sense to reduce this weight so as to avoid over-prioritizing learning the prompt.",
+ "type": "number"
+ },
+ "compute_classification_metrics": {
+ "description": "A value indicating whether to compute classification metrics.\r\nIf set, we calculate classification-specific metrics such as accuracy and F-1 score using the validation set at the end of every epoch.\r\nThese metrics can be viewed in the results file. In order to compute classification metrics, you must provide a validation_file.Additionally,\r\nyou must specify classification_n_classes for multiclass classification or classification_positive_class for binary classification.",
+ "type": "boolean"
+ },
+ "classification_n_classes": {
+ "format": "int32",
+ "description": "The number of classes in a classification task.\r\nThis parameter is required for multiclass classification.",
+ "type": "integer"
+ },
+ "classification_positive_class": {
+ "description": "The positive class in binary classification.\r\nThis parameter is needed to generate precision, recall, and F1 metrics when doing binary classification.",
+ "type": "string"
+ },
+ "classification_betas": {
+ "description": "The classification beta values. If this is provided, we calculate F-beta scores at the specified beta values.\r\nThe F-beta score is a generalization of F-1 score. This is only used for binary classification.\r\nWith a beta of 1 (i.e.the F-1 score), precision and recall are given the same weight.\r\nA larger beta score puts more weight on recall and less on precision. A smaller beta score puts more weight on precision and less on recall.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ },
+ "FineTuneList": {
+ "title": "FineTuneList",
+ "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/FineTune"
+ }
+ }
+ }
+ },
+ "GenerateImagesCreation": {
+ "title": "GenerateImagesCreation",
+ "description": "Defines the request to create an operation to generate images.",
+ "type": "object",
+ "properties": {
+ "prompt": {
+ "description": "A text description of the desired image(s).",
+ "type": "string",
+ "minLength": 1
+ },
+ "n": {
+ "description": "The number of images to generate.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "default": 1
+ },
+ "size": {
+ "$ref": "#/definitions/Size"
+ },
+ "user": {
+ "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "prompt"
+ ]
+ },
+ "GenerateImagesResponse": {
+ "title": "GenerateImagesResponse",
+ "description": "Defines response after creating an operation to generate images. It contains the status and the id of the operation.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "id": {
+ "type": "string",
+ "format": "uuid",
+ "description": " The Id of the asynchronous operation that can be used to query its status later."
+ }
+ },
+ "required": [
+ "id",
+ "status"
+ ]
+ },
+ "HyperParameters": {
+ "title": "HyperParameters",
+ "description": "The hyper parameter settings used in a fine tune job.",
+ "type": "object",
+ "properties": {
+ "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"
+ },
+ "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"
+ },
+ "prompt_loss_weight": {
+ "format": "double",
+ "description": "The weight to use for loss on the prompt tokens. This controls how much the model tries to learn to generate the prompt\r\n(as compared to the completion which always has a weight of 1.0), and can add a stabilizing effect to training when completions are short.\r\nIf prompts are extremely long (relative to completions), it may make sense to reduce this weight so as to avoid over-prioritizing learning the prompt.",
+ "type": "number"
+ },
+ "compute_classification_metrics": {
+ "description": "A value indicating whether to compute classification metrics.\r\nIf set, we calculate classification-specific metrics such as accuracy and F-1 score using the validation set at the end of every epoch.\r\nThese metrics can be viewed in the results file. In order to compute classification metrics, you must provide a validation_file.Additionally,\r\nyou must specify classification_n_classes for multiclass classification or classification_positive_class for binary classification.",
+ "type": "boolean"
+ },
+ "classification_n_classes": {
+ "format": "int32",
+ "description": "The number of classes in a classification task.\r\nThis parameter is required for multiclass classification.",
+ "type": "integer"
+ },
+ "classification_positive_class": {
+ "description": "The positive class in binary classification.\r\nThis parameter is needed to generate precision, recall, and F1 metrics when doing binary classification.",
+ "type": "string"
+ },
+ "classification_betas": {
+ "description": "The classification beta values. If this is provided, we calculate F-beta scores at the specified beta values.\r\nThe F-beta score is a generalization of F-1 score. This is only used for binary classification.\r\nWith a beta of 1 (i.e.the F-1 score), precision and recall are given the same weight.\r\nA larger beta score puts more weight on recall and less on precision. A smaller beta score puts more weight on precision and less on recall.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ }
+ }
+ },
+ "ImageResult": {
+ "title": "ImageResult",
+ "type": "object",
+ "description": "The image url if successful, and an error otherwise.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "format": "url",
+ "description": "The URL that provides temporary access to download the generated image."
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "ImageResults": {
+ "title": "ImageResults",
+ "description": "The result data of the operation, if successful",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImageResult"
+ }
+ },
+ "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"
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "updated_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was modified last (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "OperationResponse": {
+ "title": "OperationResponse",
+ "description": "The operation response containing the id and the status of the operation. If successful, it contains data with the generated images and an error otherwise.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "format": "uuid",
+ "description": "The ID of the operation.",
+ "type": "string"
+ },
+ "created": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer"
+ },
+ "expires": {
+ "format": "unixtime",
+ "description": "A timestamp when this operation and its associated images expire and will be deleted (in unix epochs).",
+ "type": "integer"
+ },
+ "result": {
+ "type": "object",
+ "description": "The result of the operation if the operation succeeded.",
+ "properties": {
+ "created": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer"
+ },
+ "data": {
+ "$ref": "#/definitions/ImageResults"
+ }
+ },
+ "required": [
+ "created",
+ "data"
+ ]
+ },
+ "status": {
+ "$ref": "#/definitions/State"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "created"
+ ]
+ },
+ "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."
+ }
+ ]
+ }
+ },
+ "Size": {
+ "title": "Size",
+ "description": "The desired size of the generated images. Must be one of 256x256, 512x512, or 1024x1024.",
+ "enum": [
+ "256x256",
+ "512x512",
+ "1024x1024"
+ ],
+ "type": "string",
+ "default": "1024x1024",
+ "x-ms-enum": {
+ "name": "Size",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "256x256",
+ "description": "The desired size of the generated image is 256x256 pixels.",
+ "name": "Size256x256"
+ },
+ {
+ "value": "512x512",
+ "description": "The desired size of the generated image is 512x512 pixels.",
+ "name": "Size512x512"
+ },
+ {
+ "value": "1024x1024",
+ "description": "The desired size of the generated image is 1024x1024 pixels.",
+ "name": "Size1024x1024"
+ }
+ ]
+ }
+ },
+ "State": {
+ "title": "State",
+ "description": "The state of a job or item.",
+ "enum": [
+ "notRunning",
+ "running",
+ "succeeded",
+ "canceled",
+ "failed",
+ "deleted"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "State",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "notRunning",
+ "description": "The operation was created and is 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": "canceled",
+ "description": "The operation has been canceled and is incomplete."
+ },
+ {
+ "value": "failed",
+ "description": "The operation has completed processing with a failure and cannot be further consumed."
+ },
+ {
+ "value": "deleted",
+ "description": "The entity has been deleted but may still be referenced by other entities predating the deletion."
+ }
+ ]
+ }
+ },
+ "TypeDiscriminator": {
+ "title": "TypeDiscriminator",
+ "description": "Defines the type of an object.",
+ "enum": [
+ "list",
+ "fine-tune",
+ "file",
+ "fine-tune-event",
+ "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-tune",
+ "description": "This object represents a fine tune job."
+ },
+ {
+ "value": "file",
+ "description": "This object represents a file."
+ },
+ {
+ "value": "fine-tune-event",
+ "description": "This object represents an event of a fine tune job."
+ },
+ {
+ "value": "model",
+ "description": "This object represents a model (can be a base models or fine tune job result)."
+ },
+ {
+ "value": "deployment",
+ "description": "This object represents a deployment."
+ }
+ ]
+ }
+ }
+ },
+ "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": "2023-08-01-preview",
+ "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"
+ }
+ ]
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/cancel_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/cancel_finetune.json
new file mode 100644
index 000000000000..a0200615abda
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/cancel_finetune.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "events": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job canceled.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "canceled",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_file.json
new file mode 100644
index 000000000000..320b3a34445b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_file.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_finetune.json
new file mode 100644
index 000000000000..982cd2f47c55
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_finetune.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_images_operation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_images_operation.json
new file mode 100644
index 000000000000..cdb28b3c2d3f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/delete_images_operation.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "Api-Key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "operation-id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa"
+ },
+ "responses": {
+ "204": {
+ "headers": {
+ "x-ms-request-id": "29fd3fe5-ab2f-44e0-aefa-0dfe9bd1c03f"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_file.json
new file mode 100644
index 000000000000..a7c1a617cc4d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_file.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_file_content.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_file_content.json
new file mode 100644
index 000000000000..dd74994dfcf8
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_file_content.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": "raw file content"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_files.json
new file mode 100644
index 000000000000..09886af7d3f9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_files.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ },
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetune.json
new file mode 100644
index 000000000000..ebae16e52cf1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetune.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "result_files": [
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "events": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetune_events.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetune_events.json
new file mode 100644
index 000000000000..62ceed6b7401
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetune_events.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetunes.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetunes.json
new file mode 100644
index 000000000000..d57f92ed70c5
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_finetunes.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "result_files": [
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "events": [
+ {
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "object": "fine-tune-event"
+ },
+ {
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "object": "fine-tune-event"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_images_operation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_images_operation.json
new file mode 100644
index 000000000000..1c6c9afe42fe
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_images_operation.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "Api-Key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "operation-id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "x-ms-request-id": "29fd3fe5-ab2f-44e0-aefa-0dfe9bd1c03f"
+ },
+ "body": {
+ "created": 1679320850,
+ "result": {
+ "created": 1679320850,
+ "data": [
+ {
+ "url": "https://aoairesource.blob.core.windows.net/private/images?SAS-token"
+ }
+ ]
+ },
+ "expires": 1679407255,
+ "id": "41dc2981-bf72-492a-b4fe-7eed680a1681",
+ "status": "succeeded"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_model_base.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_model_base.json
new file mode 100644
index 000000000000..5b50f90fe038
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_model_base.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "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,
+ "updated_at": 1646127311,
+ "object": "model"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_model_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_model_finetune.json
new file mode 100644
index 000000000000..2c37c326bbd4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_model_finetune.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "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,
+ "updated_at": 1646127311,
+ "object": "model"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_models.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_models.json
new file mode 100644
index 000000000000..fd94e8cc4358
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/get_models.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview"
+ },
+ "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,
+ "updated_at": 1646127311,
+ "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,
+ "updated_at": 1646127311,
+ "object": "model"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/import_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/import_file.json
new file mode 100644
index 000000000000..f7c85a01f505
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/import_file.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "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,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_classification_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_classification_finetune.json
new file mode 100644
index 000000000000..0252e33283f4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_classification_finetune.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "fineTune": {
+ "compute_classification_metrics": true,
+ "classification_n_classes": 4,
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "location": "https://aoairesource.openai.azure.com/openai/fine-tunes/ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "body": {
+ "hyperparams": {
+ "compute_classification_metrics": true,
+ "classification_n_classes": 4,
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "notRunning",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_finetune.json
new file mode 100644
index 000000000000..9ad1ed212b03
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_finetune.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "fineTune": {
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "location": "https://aoairesource.openai.azure.com/openai/fine-tunes/ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "body": {
+ "hyperparams": {
+ "batch_size": 32,
+ "learning_rate_multiplier": 1,
+ "n_epochs": 2,
+ "prompt_loss_weight": 0.1
+ },
+ "model": "curie",
+ "training_files": [
+ {
+ "statistics": {
+ "tokens": 42,
+ "examples": 23
+ },
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "succeeded",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ ],
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "status": "notRunning",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "fine-tune"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_images_generate.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_images_generate.json
new file mode 100644
index 000000000000..099056b5c092
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/post_images_generate.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "Api-Key": "{api key}",
+ "api-version": "2023-08-01-preview",
+ "body": {
+ "prompt": "An avocado chair",
+ "size": "512x512",
+ "n": 3
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "operation-location": "https://aoairesource.openai.azure.com/openai/dalle/operations/images/f508bcf2-e651-4b4b-85a7-58ad77981ffa?api-version=2023-08-01-preview",
+ "x-ms-request-id": "29fd3fe5-ab2f-44e0-aefa-0dfe9bd1c03f"
+ },
+ "body": {
+ "id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa",
+ "status": "notRunning"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/upload_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/upload_file.json
new file mode 100644
index 000000000000..d049ce34950e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2023-08-01-preview/examples/upload_file.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2023-08-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": {
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "status": "notRunning",
+ "created_at": 1646126127,
+ "updated_at": 1646127311,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md
index d1a9d0ede120..4f53b4284e99 100644
--- a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md
@@ -125,3 +125,43 @@ directive:
- suppress: IntegerTypeMustHaveFormat
reason: API stewardship board recommend to use format "unixtime" which is not supported by linter at the moment.
```
+
+## AzureOpenAI 2023-07-01-preview
+These settings apply only when `--tag=release_2023_07_01_preview` is specified on the command line.
+
+``` yaml $(tag) == 'release_2023_07_01_preview'
+input-file: preview/2023-07-01-preview/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.
+```
+
+## AzureOpenAI 2023-08-01-preview
+These settings apply only when `--tag=release_2023_08_01_preview` is specified on the command line.
+
+``` yaml $(tag) == 'release_2023_08_01_preview'
+input-file: preview/2023-08-01-preview/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/inference/preview/2023-06-01-preview/examples/get_image_operation_status.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/get_image_operation_status.json
index c9923b9ae46f..b7b1e32b8bb6 100644
--- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/get_image_operation_status.json
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/get_image_operation_status.json
@@ -1,5 +1,5 @@
{
- "operationId": "GetImageOperationStatus",
+ "operationId": "GetAzureBatchImageGenerationOperationStatus",
"title": "Returns the status of the images operation",
"parameters": {
"endpoint": "{endpoint}",
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/start_generate_image.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/start_generate_image.json
index f8bac40e573f..40903f1667f0 100644
--- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/start_generate_image.json
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/examples/start_generate_image.json
@@ -1,5 +1,5 @@
{
- "operationId": "StartGenerateImage",
+ "operationId": "BeginAzureBatchImageGeneration",
"title": "Starts the generation of a batch of images from a text caption",
"parameters": {
"endpoint": "{endpoint}",
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 1042c456b550..11e9951bedbe 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
@@ -45,8 +45,8 @@
"securityDefinitions": {
"ApiKeyAuth": {
"type": "apiKey",
- "in": "header",
- "name": "api-key"
+ "name": "api-key",
+ "in": "header"
},
"OAuth2Auth": {
"type": "oauth2",
@@ -70,17 +70,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/ChatCompletionsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -92,14 +92,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -121,17 +121,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/CompletionsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -143,14 +143,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -172,17 +172,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/EmbeddingsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -194,14 +194,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -214,7 +214,7 @@
},
"/images/generations:submit": {
"post": {
- "operationId": "StartGenerateImage",
+ "operationId": "BeginAzureBatchImageGeneration",
"description": "Starts the generation of a batch of images from a text caption",
"parameters": [
{
@@ -223,36 +223,36 @@
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/ImageGenerationOptions"
- },
- "required": true
+ }
}
],
"responses": {
"202": {
"description": "The request has been accepted for processing, but processing has not yet completed.",
+ "schema": {
+ "$ref": "#/definitions/BatchImageGenerationOperationResponse"
+ },
"headers": {
"Operation-Location": {
- "description": "The location for monitoring the operation state.",
"type": "string",
- "format": "uri"
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
}
- },
- "schema": {
- "$ref": "#/definitions/ImageOperationResponse"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -260,12 +260,13 @@
"Starts the generation of a batch of images from a text caption": {
"$ref": "./examples/start_generate_image.json"
}
- }
+ },
+ "x-ms-long-running-operation": true
}
},
"/operations/images/{operationId}": {
"get": {
- "operationId": "GetImageOperationStatus",
+ "operationId": "GetAzureBatchImageGenerationOperationStatus",
"description": "Returns the status of the images operation",
"parameters": [
{
@@ -274,8 +275,8 @@
{
"name": "operationId",
"in": "path",
- "required": true,
"description": ".",
+ "required": true,
"type": "string"
}
],
@@ -283,19 +284,19 @@
"200": {
"description": "The request has succeeded.",
"schema": {
- "$ref": "#/definitions/ImageOperationResponse"
+ "$ref": "#/definitions/BatchImageGenerationOperationResponse"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -310,6 +311,7 @@
"definitions": {
"Azure.Core.Foundations.Error": {
"type": "object",
+ "description": "The error object.",
"properties": {
"code": {
"type": "string",
@@ -325,19 +327,17 @@
},
"details": {
"type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of details about specific errors that led to this reported error.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]"
+ "x-ms-identifiers": []
},
"innererror": {
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "An object containing more specific information than the current object about the error."
}
},
- "description": "The error object.",
"required": [
"code",
"message"
@@ -345,19 +345,20 @@
},
"Azure.Core.Foundations.ErrorResponse": {
"type": "object",
+ "description": "A response containing error details.",
"properties": {
"error": {
"$ref": "#/definitions/Azure.Core.Foundations.Error",
"description": "The error object."
}
},
- "description": "A response containing error details.",
"required": [
"error"
]
},
"Azure.Core.Foundations.InnerError": {
"type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
"properties": {
"code": {
"type": "string",
@@ -367,11 +368,90 @@
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "Inner error."
}
+ }
+ },
+ "AzureOpenAIOperationState": {
+ "type": "string",
+ "description": "The state of a job or item.",
+ "enum": [
+ "notRunning",
+ "running",
+ "succeeded",
+ "canceled",
+ "failed"
+ ],
+ "x-ms-enum": {
+ "name": "AzureOpenAIOperationState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "notRunning",
+ "value": "notRunning",
+ "description": "The operation was created and is queued to be processed in the future."
+ },
+ {
+ "name": "running",
+ "value": "running",
+ "description": "The operation has started to be processed."
+ },
+ {
+ "name": "succeeded",
+ "value": "succeeded",
+ "description": "The operation has successfully be processed and is ready for consumption."
+ },
+ {
+ "name": "canceled",
+ "value": "canceled",
+ "description": "The operation has been canceled and is incomplete."
+ },
+ {
+ "name": "failed",
+ "value": "failed",
+ "description": "The operation has completed processing with a failure and cannot be further consumed."
+ }
+ ]
+ }
+ },
+ "BatchImageGenerationOperationResponse": {
+ "type": "object",
+ "description": "A polling status update or final response payload for an image operation.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the operation."
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs)."
+ },
+ "expires": {
+ "type": "integer",
+ "format": "int64",
+ "description": "A timestamp when this operation and its associated images expire and will be deleted (in unix epochs)."
+ },
+ "result": {
+ "$ref": "#/definitions/ImageGenerations",
+ "description": "The result of the operation if the operation succeeded."
+ },
+ "status": {
+ "$ref": "#/definitions/AzureOpenAIOperationState",
+ "description": "The status of the operation"
+ },
+ "error": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error",
+ "description": "The error if the operation failed."
+ }
},
- "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses."
+ "required": [
+ "id",
+ "created",
+ "status"
+ ]
},
"ChatChoice": {
"type": "object",
+ "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"properties": {
"message": {
"$ref": "#/definitions/ChatMessage",
@@ -383,16 +463,21 @@
"description": "The ordered index associated with this chat completions choice."
},
"finish_reason": {
- "x-typespec-name": "CompletionsFinishReason | null",
+ "$ref": "#/definitions/CompletionsFinishReason",
"description": "The reason that this chat completions choice completed its generated.",
+ "x-nullable": true,
"x-ms-client-name": "finishReason"
},
"delta": {
"$ref": "#/definitions/ChatMessage",
"description": "The delta message content for a streaming response."
+ },
+ "content_filter_results": {
+ "$ref": "#/definitions/ContentFilterResults",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it \nhas been detected, as well as the severity level (very_low, low, medium, high-scale that \ndetermines the intensity and risk level of harmful content) and if it has been filtered or not.",
+ "x-ms-client-name": "contentFilterResults"
}
},
- "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"required": [
"index",
"finish_reason"
@@ -400,6 +485,7 @@
},
"ChatCompletions": {
"type": "object",
+ "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"id": {
"type": "string",
@@ -407,24 +493,31 @@
},
"created": {
"type": "integer",
- "format": "int32",
+ "format": "unixtime",
"description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
},
"choices": {
"type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"items": {
"$ref": "#/definitions/ChatChoice"
},
- "x-ms-identifiers": [],
- "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "x-typespec-name": "ChatChoice[]"
+ "x-ms-identifiers": []
+ },
+ "prompt_annotations": {
+ "type": "array",
+ "description": "Content filtering results for zero or more prompts in the request. In a streaming request, \nresults for different prompts may arrive at different times or in different orders.",
+ "items": {
+ "$ref": "#/definitions/PromptFilterResult"
+ },
+ "x-ms-client-name": "promptFilterResults",
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/CompletionsUsage",
"description": "Usage information for tokens processed and generated as part of this completions operation."
}
},
- "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"id",
"created",
@@ -434,15 +527,15 @@
},
"ChatCompletionsOptions": {
"type": "object",
+ "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"messages": {
"type": "array",
+ "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.",
"items": {
"$ref": "#/definitions/ChatMessage"
},
- "x-ms-identifiers": [],
- "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.",
- "x-typespec-name": "ChatMessage[]"
+ "x-ms-identifiers": []
},
"max_tokens": {
"type": "integer",
@@ -463,12 +556,11 @@
},
"logit_bias": {
"type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
"additionalProperties": {
- "type": "integer",
- "format": "int32"
+ "format": "int32",
+ "type": "integer"
},
- "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
- "x-typespec-name": "Record",
"x-ms-client-name": "logitBias"
},
"user": {
@@ -482,11 +574,10 @@
},
"stop": {
"type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
"items": {
"type": "string"
- },
- "description": "A collection of textual sequences that will end completions generation.",
- "x-typespec-name": "string[]"
+ }
},
"presence_penalty": {
"type": "number",
@@ -509,13 +600,13 @@
"description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
}
},
- "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"messages"
]
},
"ChatMessage": {
"type": "object",
+ "description": "A single, role-attributed message within a chat completion interaction.",
"properties": {
"role": {
"$ref": "#/definitions/ChatRole",
@@ -523,12 +614,13 @@
},
"content": {
"type": "string",
- "description": "The text associated with this message payload."
+ "description": "The text associated with this message payload.",
+ "x-nullable": true
}
},
- "description": "A single, role-attributed message within a chat completion interaction.",
"required": [
- "role"
+ "role",
+ "content"
]
},
"ChatRole": {
@@ -563,6 +655,7 @@
},
"Choice": {
"type": "object",
+ "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"properties": {
"text": {
"type": "string",
@@ -573,24 +666,28 @@
"format": "int32",
"description": "The ordered index associated with this completions choice."
},
+ "content_filter_results": {
+ "$ref": "#/definitions/ContentFilterResults",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it \nhas been detected, as well as the severity level (very_low, low, medium, high-scale that \ndetermines the intensity and risk level of harmful content) and if it has been filtered or not.",
+ "x-ms-client-name": "contentFilterResults"
+ },
"logprobs": {
"type": "object",
+ "description": "The log probabilities model for tokens associated with this completions choice.",
+ "x-nullable": true,
"allOf": [
{
"$ref": "#/definitions/CompletionsLogProbabilityModel"
}
- ],
- "x-nullable": true,
- "x-typespec-name": "CompletionsLogProbabilityModel | null",
- "description": "The log probabilities model for tokens associated with this completions choice."
+ ]
},
"finish_reason": {
- "x-typespec-name": "CompletionsFinishReason | null",
+ "$ref": "#/definitions/CompletionsFinishReason",
"description": "Reason for finishing",
+ "x-nullable": true,
"x-ms-client-name": "finishReason"
}
},
- "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"required": [
"text",
"index",
@@ -600,6 +697,7 @@
},
"Completions": {
"type": "object",
+ "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"id": {
"type": "string",
@@ -607,24 +705,31 @@
},
"created": {
"type": "integer",
- "format": "int32",
+ "format": "unixtime",
"description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
},
+ "prompt_annotations": {
+ "type": "array",
+ "description": "Content filtering results for zero or more prompts in the request. In a streaming request, \nresults for different prompts may arrive at different times or in different orders.",
+ "items": {
+ "$ref": "#/definitions/PromptFilterResult"
+ },
+ "x-ms-client-name": "promptFilterResults",
+ "x-ms-identifiers": []
+ },
"choices": {
"type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"items": {
"$ref": "#/definitions/Choice"
},
- "x-ms-identifiers": [],
- "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "x-typespec-name": "Choice[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/CompletionsUsage",
"description": "Usage information for tokens processed and generated as part of this completions operation."
}
},
- "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"id",
"created",
@@ -664,50 +769,44 @@
},
"CompletionsLogProbabilityModel": {
"type": "object",
+ "description": "Representation of a log probabilities model for a completions generation.",
"properties": {
"tokens": {
"type": "array",
+ "description": "The textual forms of tokens evaluated in this probability model.",
"items": {
"type": "string"
- },
- "description": "The textual forms of tokens evaluated in this probability model.",
- "x-typespec-name": "string[]"
+ }
},
"token_logprobs": {
"type": "array",
+ "description": "A collection of log probability values for the tokens in this completions data.",
"items": {
"type": "number",
"format": "float",
- "x-nullable": true,
- "x-typespec-name": "float32 | null"
+ "x-nullable": true
},
- "description": "A collection of log probability values for the tokens in this completions data.",
- "x-typespec-name": "float32 | null[]",
"x-ms-client-name": "tokenLogprobs"
},
"top_logprobs": {
"type": "array",
+ "description": "A mapping of tokens to maximum log probability values in this completions data.",
"items": {
- "type": "object",
- "x-typespec-name": "Record"
+ "type": "object"
},
- "x-ms-identifiers": [],
- "description": "A mapping of tokens to maximum log probability values in this completions data.",
- "x-typespec-name": "Record[]",
- "x-ms-client-name": "topLogprobs"
+ "x-ms-client-name": "topLogprobs",
+ "x-ms-identifiers": []
},
"text_offset": {
"type": "array",
+ "description": "The text offsets associated with tokens in this completions data.",
"items": {
"type": "integer",
"format": "int32"
},
- "description": "The text offsets associated with tokens in this completions data.",
- "x-typespec-name": "int32[]",
"x-ms-client-name": "textOffset"
}
},
- "description": "Representation of a log probabilities model for a completions generation.",
"required": [
"tokens",
"token_logprobs",
@@ -717,14 +816,14 @@
},
"CompletionsOptions": {
"type": "object",
+ "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"prompt": {
"type": "array",
+ "description": "The prompts to generate completions from.",
"items": {
"type": "string"
- },
- "description": "The prompts to generate completions from.",
- "x-typespec-name": "string[]"
+ }
},
"max_tokens": {
"type": "integer",
@@ -745,12 +844,11 @@
},
"logit_bias": {
"type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
"additionalProperties": {
- "type": "integer",
- "format": "int32"
+ "format": "int32",
+ "type": "integer"
},
- "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
- "x-typespec-name": "Record",
"x-ms-client-name": "logitBias"
},
"user": {
@@ -773,11 +871,10 @@
},
"stop": {
"type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
"items": {
"type": "string"
- },
- "description": "A collection of textual sequences that will end completions generation.",
- "x-typespec-name": "string[]"
+ }
},
"presence_penalty": {
"type": "number",
@@ -806,13 +903,13 @@
"description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
}
},
- "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"prompt"
]
},
"CompletionsUsage": {
"type": "object",
+ "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
"properties": {
"completion_tokens": {
"type": "integer",
@@ -833,38 +930,100 @@
"x-ms-client-name": "totalTokens"
}
},
- "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
"required": [
"completion_tokens",
"prompt_tokens",
"total_tokens"
]
},
- "Deployment": {
+ "ContentFilterResult": {
"type": "object",
+ "description": "Information about filtered content severity level and if it has been filtered or not.",
"properties": {
- "deploymentId": {
- "type": "string",
- "description": "deployment id of the deployed model",
- "readOnly": true
+ "severity": {
+ "$ref": "#/definitions/ContentFilterSeverity",
+ "description": "Ratings for the intensity and risk level of filtered content."
+ },
+ "filtered": {
+ "type": "boolean",
+ "description": "A value indicating whether or not the content has been filtered."
}
},
- "description": "A specific deployment",
"required": [
- "deploymentId"
+ "severity",
+ "filtered"
]
},
+ "ContentFilterResults": {
+ "type": "object",
+ "description": "Information about the content filtering category, if it has been detected.",
+ "properties": {
+ "sexual": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including \n those portrayed as an assault or a forced sexual violent act against one’s will, \n prostitution, pornography, and abuse."
+ },
+ "violence": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language related to physical actions intended to hurt, injure, damage, or \nkill someone or something; describes weapons, etc."
+ },
+ "hate": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language attacks or uses that include pejorative or discriminatory language \nwith reference to a person or identity group on the basis of certain differentiating \nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size."
+ },
+ "self_harm": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language related to physical actions intended to purposely hurt, injure,\nor damage one’s body, or kill oneself.",
+ "x-ms-client-name": "selfHarm"
+ }
+ }
+ },
+ "ContentFilterSeverity": {
+ "type": "string",
+ "description": "Ratings for the intensity and risk level of harmful content.",
+ "enum": [
+ "safe",
+ "low",
+ "medium",
+ "high"
+ ],
+ "x-ms-enum": {
+ "name": "ContentFilterSeverity",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "safe",
+ "value": "safe",
+ "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms \nare used in general, journalistic, scientific, medical, and similar professional contexts, \nwhich are appropriate for most audiences."
+ },
+ {
+ "name": "low",
+ "value": "low",
+ "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive \nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity."
+ },
+ {
+ "name": "medium",
+ "value": "medium",
+ "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language \ntowards specific identity groups, includes depictions of seeking and executing harmful \ninstructions, fantasies, glorification, promotion of harm at medium intensity."
+ },
+ {
+ "name": "high",
+ "value": "high",
+ "description": "Content that displays explicit and severe harmful instructions, actions, \ndamage, or abuse; includes endorsement, glorification, or promotion of severe \nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual \npower exchange or abuse."
+ }
+ ]
+ }
+ },
"EmbeddingItem": {
"type": "object",
+ "description": "Representation of a single embeddings relatedness comparison.",
"properties": {
"embedding": {
"type": "array",
+ "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
- "x-typespec-name": "float32[]"
+ }
},
"index": {
"type": "integer",
@@ -872,7 +1031,6 @@
"description": "Index of the prompt to which the EmbeddingItem corresponds."
}
},
- "description": "Representation of a single embeddings relatedness comparison.",
"required": [
"embedding",
"index"
@@ -880,22 +1038,21 @@
},
"Embeddings": {
"type": "object",
+ "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"properties": {
"data": {
"type": "array",
+ "description": "Embedding values for the prompts submitted in the request.",
"items": {
"$ref": "#/definitions/EmbeddingItem"
},
- "x-ms-identifiers": [],
- "description": "Embedding values for the prompts submitted in the request.",
- "x-typespec-name": "EmbeddingItem[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/EmbeddingsUsage",
"description": "Usage counts for tokens input using the embeddings API."
}
},
- "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"required": [
"data",
"usage"
@@ -903,6 +1060,7 @@
},
"EmbeddingsOptions": {
"type": "object",
+ "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"properties": {
"user": {
"type": "string",
@@ -914,20 +1072,19 @@
},
"input": {
"type": "array",
+ "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
"items": {
"type": "string"
- },
- "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
- "x-typespec-name": "string[]"
+ }
}
},
- "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"required": [
"input"
]
},
"EmbeddingsUsage": {
"type": "object",
+ "description": "Measurement of the amount of tokens used in this request and response.",
"properties": {
"prompt_tokens": {
"type": "integer",
@@ -942,7 +1099,6 @@
"x-ms-client-name": "totalTokens"
}
},
- "description": "Measurement of the amount of tokens used in this request and response.",
"required": [
"prompt_tokens",
"total_tokens"
@@ -950,6 +1106,7 @@
},
"ImageGenerationOptions": {
"type": "object",
+ "description": "Represents the request data used to generate images.",
"properties": {
"prompt": {
"type": "string",
@@ -966,108 +1123,57 @@
"description": "The desired size of the generated images. Must be one of 256x256, 512x512, or 1024x1024 (defaults to 1024x1024).",
"default": "1024x1024"
},
+ "response_format": {
+ "$ref": "#/definitions/ImageGenerationResponseFormat",
+ "description": " The format in which image generation response items should be presented.\n Azure OpenAI only supports URL response items.",
+ "x-ms-client-name": "responseFormat"
+ },
"user": {
"type": "string",
"description": "A unique identifier representing your end-user, which can help to monitor and detect abuse."
}
},
- "description": "Represents the request data used to generate images.",
"required": [
"prompt"
]
},
- "ImageLocation": {
- "type": "object",
- "properties": {
- "url": {
- "type": "string",
- "format": "uri",
- "description": "The URL that provides temporary access to download the generated image."
- },
- "error": {
- "$ref": "#/definitions/Azure.Core.Foundations.Error",
- "description": "The error if the operation failed."
- }
- },
- "description": "The image url if successful, and an error otherwise."
+ "ImageGenerationResponseFormat": {
+ "type": "string",
+ "description": "The format in which the generated images are returned.",
+ "enum": [
+ "url",
+ "b64_json"
+ ],
+ "x-ms-enum": {
+ "name": "ImageGenerationResponseFormat",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Url",
+ "value": "url",
+ "description": "Image generation response items should provide a URL from which the image may be retrieved."
+ },
+ {
+ "name": "Base64",
+ "value": "b64_json",
+ "description": "Image generation response items should provide image data as a base64-encoded string."
+ }
+ ]
+ }
},
- "ImageOperationResponse": {
+ "ImageGenerations": {
"type": "object",
- "properties": {
- "id": {
- "type": "string",
- "description": "The ID of the operation."
- },
- "created": {
- "type": "integer",
- "format": "int64",
- "description": "A timestamp when this job or item was created (in unix epochs)."
- },
- "expires": {
- "type": "integer",
- "format": "int64",
- "description": "A timestamp when this operation and its associated images expire and will be deleted (in unix epochs)."
- },
- "result": {
- "$ref": "#/definitions/ImageResponse",
- "description": "The result of the operation if the operation succeeded."
- },
- "status": {
- "$ref": "#/definitions/State",
- "description": "The status of the operation"
- },
- "error": {
- "$ref": "#/definitions/Azure.Core.Foundations.Error",
- "description": "The error if the operation failed."
- }
- },
"description": "The result of the operation if the operation succeeded.",
- "required": [
- "id",
- "created",
- "status"
- ]
- },
- "ImageOperationStatus": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string",
- "description": "The unique ID of the operation.",
- "x-ms-mutability": [
- "read"
- ]
- },
- "status": {
- "$ref": "#/definitions/State",
- "description": "The status of the operation"
- }
- },
- "description": "Provides status details for long running operations.",
- "required": [
- "id",
- "status"
- ]
- },
- "ImageResponse": {
- "type": "object",
"properties": {
"created": {
"type": "integer",
- "format": "int64",
+ "format": "unixtime",
"description": "A timestamp when this job or item was created (in unix epochs)."
},
"data": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/ImageLocation"
- },
- "x-ms-identifiers": [],
- "description": "The images generated by the operator.",
- "x-typespec-name": "ImageLocation[]"
+ "description": "The images generated by the operator."
}
},
- "description": "The result of the operation if the operation succeeded.",
"required": [
"created",
"data"
@@ -1103,85 +1209,37 @@
]
}
},
- "ServiceApiVersions": {
- "type": "string",
- "enum": [
- "2022-12-01",
- "2023-05-15",
- "2023-06-01-preview"
- ],
- "x-ms-enum": {
- "name": "ServiceApiVersions",
- "modelAsString": true,
- "values": [
- {
- "name": "v2022_12_01",
- "value": "2022-12-01"
- },
- {
- "name": "v2023_05_15",
- "value": "2023-05-15"
- },
- {
- "name": "v2023_06_01_Preview",
- "value": "2023-06-01-preview"
- }
- ]
- }
- },
- "State": {
- "type": "string",
- "description": "The state of a job or item.",
- "enum": [
- "notRunning",
- "running",
- "succeeded",
- "canceled",
- "failed"
- ],
- "x-ms-enum": {
- "name": "State",
- "modelAsString": true,
- "values": [
- {
- "name": "notRunning",
- "value": "notRunning",
- "description": "The operation was created and is queued to be processed in the future."
- },
- {
- "name": "running",
- "value": "running",
- "description": "The operation has started to be processed."
- },
- {
- "name": "succeeded",
- "value": "succeeded",
- "description": "The operation has successfully be processed and is ready for consumption."
- },
- {
- "name": "canceled",
- "value": "canceled",
- "description": "The operation has been canceled and is incomplete."
- },
- {
- "name": "failed",
- "value": "failed",
- "description": "The operation has completed processing with a failure and cannot be further consumed."
- }
- ]
- }
+ "PromptFilterResult": {
+ "type": "object",
+ "description": "Content filtering results for a single prompt in the request.",
+ "properties": {
+ "prompt_index": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The index of this prompt in the set of prompt results",
+ "x-ms-client-name": "promptIndex"
+ },
+ "content_filter_results": {
+ "$ref": "#/definitions/ContentFilterResults",
+ "description": "Content filtering results for this prompt",
+ "x-ms-client-name": "contentFilterResults"
+ }
+ },
+ "required": [
+ "prompt_index"
+ ]
}
},
"parameters": {
"Azure.Core.Foundations.ApiVersionParameter": {
"name": "api-version",
"in": "query",
- "required": true,
"description": "The API version to use for this operation.",
- "x-ms-client-name": "apiVersion",
+ "required": true,
"type": "string",
"minLength": 1,
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
}
}
}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/chat_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/chat_completions.json
new file mode 100644
index 000000000000..bbd6dacd3d27
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/chat_completions.json
@@ -0,0 +1,44 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided prompt, parameters and chosen model.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "deploymentId": "",
+ "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/preview/2023-07-01-preview/examples/completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/completions.json
new file mode 100644
index 000000000000..05bac70abc80
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/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": "2023-07-01-preview",
+ "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/preview/2023-07-01-preview/examples/embeddings.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/embeddings.json
new file mode 100644
index 000000000000..e978b97b8a16
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/embeddings.json
@@ -0,0 +1,1567 @@
+{
+ "operationId": "GetEmbeddings",
+ "title": "Return the embeddings for a given prompt.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "deploymentId": "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/preview/2023-07-01-preview/examples/get_image_operation_status.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/get_image_operation_status.json
new file mode 100644
index 000000000000..26da67fe18ff
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/get_image_operation_status.json
@@ -0,0 +1,27 @@
+{
+ "operationId": "GetAzureBatchImageGenerationOperationStatus",
+ "title": "Returns the status of the images operation",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "operationId": ""
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "created": 1686676595,
+ "expires": 1686762999,
+ "id": "",
+ "result": {
+ "created": 1686676595,
+ "data": [
+ {
+ "url": "https://image/path"
+ }
+ ]
+ },
+ "status": "succeeded"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/start_generate_image.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/start_generate_image.json
new file mode 100644
index 000000000000..89d6f5d3184a
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/examples/start_generate_image.json
@@ -0,0 +1,25 @@
+{
+ "operationId": "BeginAzureBatchImageGeneration",
+ "title": "Starts the generation of a batch of images from a text caption",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2023-07-01-preview",
+ "body": {
+ "prompt": "a monkey eating a banana",
+ "size": "256x256",
+ "n": 1
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "operation-location": "{endpoint}/openai/operations/images/?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "",
+ "status": "notRunning",
+ "created": 0
+ }
+ }
+ }
+}
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
new file mode 100644
index 000000000000..b5092f933e68
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json
@@ -0,0 +1,1316 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure OpenAI API",
+ "version": "2023-07-01-preview",
+ "description": "Azure OpenAI APIs for completions and search",
+ "x-typespec-generated": [
+ {
+ "emitter": "@azure-tools/typespec-autorest"
+ }
+ ]
+ },
+ "schemes": [
+ "https"
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "{endpoint}/openai",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "name": "endpoint",
+ "in": "path",
+ "required": true,
+ "description": "Supported Cognitive Services endpoints (protocol and hostname, for example:\nhttps://westus.api.cognitive.microsoft.com).",
+ "type": "string"
+ }
+ ]
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "ApiKeyAuth": []
+ },
+ {
+ "OAuth2Auth": [
+ "https://cognitiveservices.azure.com/.default"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "ApiKeyAuth": {
+ "type": "apiKey",
+ "name": "api-key",
+ "in": "header"
+ },
+ "OAuth2Auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
+ "scopes": {
+ "https://cognitiveservices.azure.com/.default": ""
+ }
+ }
+ },
+ "tags": [],
+ "paths": {
+ "/deployments/{deploymentId}/chat/completions": {
+ "post": {
+ "operationId": "GetChatCompletions",
+ "description": "Gets chat completions for the provided chat messages.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "deploymentId",
+ "in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ChatCompletionsOptions"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ChatCompletions"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Creates a completion for the provided prompt, parameters and chosen model.": {
+ "$ref": "./examples/chat_completions.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deploymentId}/completions": {
+ "post": {
+ "operationId": "GetCompletions",
+ "description": "Gets completions for the provided input prompts.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "deploymentId",
+ "in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CompletionsOptions"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Completions"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Creates a completion for the provided prompt, parameters and chosen model.": {
+ "$ref": "./examples/completions.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deploymentId}/embeddings": {
+ "post": {
+ "operationId": "GetEmbeddings",
+ "description": "Return the embeddings for a given prompt.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "deploymentId",
+ "in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EmbeddingsOptions"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Embeddings"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Return the embeddings for a given prompt.": {
+ "$ref": "./examples/embeddings.json"
+ }
+ }
+ }
+ },
+ "/images/generations:submit": {
+ "post": {
+ "operationId": "BeginAzureBatchImageGeneration",
+ "description": "Starts the generation of a batch of images from a text caption",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageGenerationOptions"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The request has been accepted for processing, but processing has not yet completed.",
+ "schema": {
+ "$ref": "#/definitions/BatchImageGenerationOperationResponse"
+ },
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Starts the generation of a batch of images from a text caption": {
+ "$ref": "./examples/start_generate_image.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/operations/images/{operationId}": {
+ "get": {
+ "operationId": "GetAzureBatchImageGenerationOperationStatus",
+ "description": "Returns the status of the images operation",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "operationId",
+ "in": "path",
+ "description": ".",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/BatchImageGenerationOperationResponse"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "description": "String error code indicating what went wrong.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Returns the status of the images operation": {
+ "$ref": "./examples/get_image_operation_status.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Azure.Core.Foundations.Error": {
+ "type": "object",
+ "description": "The error object.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of a server-defined set of error codes."
+ },
+ "message": {
+ "type": "string",
+ "description": "A human-readable representation of the error."
+ },
+ "target": {
+ "type": "string",
+ "description": "The target of the error."
+ },
+ "details": {
+ "type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
+ "items": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error"
+ },
+ "x-ms-identifiers": []
+ },
+ "innererror": {
+ "$ref": "#/definitions/Azure.Core.Foundations.InnerError",
+ "description": "An object containing more specific information than the current object about the error."
+ }
+ },
+ "required": [
+ "code",
+ "message"
+ ]
+ },
+ "Azure.Core.Foundations.ErrorResponse": {
+ "type": "object",
+ "description": "A response containing error details.",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error",
+ "description": "The error object."
+ }
+ },
+ "required": [
+ "error"
+ ]
+ },
+ "Azure.Core.Foundations.InnerError": {
+ "type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of a server-defined set of error codes."
+ },
+ "innererror": {
+ "$ref": "#/definitions/Azure.Core.Foundations.InnerError",
+ "description": "Inner error."
+ }
+ }
+ },
+ "AzureOpenAIOperationState": {
+ "type": "string",
+ "description": "The state of a job or item.",
+ "enum": [
+ "notRunning",
+ "running",
+ "succeeded",
+ "canceled",
+ "failed"
+ ],
+ "x-ms-enum": {
+ "name": "AzureOpenAIOperationState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "notRunning",
+ "value": "notRunning",
+ "description": "The operation was created and is queued to be processed in the future."
+ },
+ {
+ "name": "running",
+ "value": "running",
+ "description": "The operation has started to be processed."
+ },
+ {
+ "name": "succeeded",
+ "value": "succeeded",
+ "description": "The operation has successfully be processed and is ready for consumption."
+ },
+ {
+ "name": "canceled",
+ "value": "canceled",
+ "description": "The operation has been canceled and is incomplete."
+ },
+ {
+ "name": "failed",
+ "value": "failed",
+ "description": "The operation has completed processing with a failure and cannot be further consumed."
+ }
+ ]
+ }
+ },
+ "BatchImageGenerationOperationResponse": {
+ "type": "object",
+ "description": "A polling status update or final response payload for an image operation.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the operation."
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs)."
+ },
+ "expires": {
+ "type": "integer",
+ "format": "int64",
+ "description": "A timestamp when this operation and its associated images expire and will be deleted (in unix epochs)."
+ },
+ "result": {
+ "$ref": "#/definitions/ImageGenerations",
+ "description": "The result of the operation if the operation succeeded."
+ },
+ "status": {
+ "$ref": "#/definitions/AzureOpenAIOperationState",
+ "description": "The status of the operation"
+ },
+ "error": {
+ "$ref": "#/definitions/Azure.Core.Foundations.Error",
+ "description": "The error if the operation failed."
+ }
+ },
+ "required": [
+ "id",
+ "created",
+ "status"
+ ]
+ },
+ "ChatChoice": {
+ "type": "object",
+ "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
+ "properties": {
+ "message": {
+ "$ref": "#/definitions/ChatMessage",
+ "description": "The chat message for a given chat completions prompt."
+ },
+ "index": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The ordered index associated with this chat completions choice."
+ },
+ "finish_reason": {
+ "$ref": "#/definitions/CompletionsFinishReason",
+ "description": "The reason that this chat completions choice completed its generated.",
+ "x-nullable": true,
+ "x-ms-client-name": "finishReason"
+ },
+ "delta": {
+ "$ref": "#/definitions/ChatMessage",
+ "description": "The delta message content for a streaming response."
+ },
+ "content_filter_results": {
+ "$ref": "#/definitions/ContentFilterResults",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it \nhas been detected, as well as the severity level (very_low, low, medium, high-scale that \ndetermines the intensity and risk level of harmful content) and if it has been filtered or not.",
+ "x-ms-client-name": "contentFilterResults"
+ }
+ },
+ "required": [
+ "index",
+ "finish_reason"
+ ]
+ },
+ "ChatCompletions": {
+ "type": "object",
+ "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "A unique identifier associated with this chat completions response."
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
+ },
+ "choices": {
+ "type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
+ "items": {
+ "$ref": "#/definitions/ChatChoice"
+ },
+ "x-ms-identifiers": []
+ },
+ "prompt_annotations": {
+ "type": "array",
+ "description": "Content filtering results for zero or more prompts in the request. In a streaming request, \nresults for different prompts may arrive at different times or in different orders.",
+ "items": {
+ "$ref": "#/definitions/PromptFilterResult"
+ },
+ "x-ms-client-name": "promptFilterResults",
+ "x-ms-identifiers": []
+ },
+ "usage": {
+ "$ref": "#/definitions/CompletionsUsage",
+ "description": "Usage information for tokens processed and generated as part of this completions operation."
+ }
+ },
+ "required": [
+ "id",
+ "created",
+ "choices",
+ "usage"
+ ]
+ },
+ "ChatCompletionsOptions": {
+ "type": "object",
+ "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
+ "properties": {
+ "messages": {
+ "type": "array",
+ "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.",
+ "items": {
+ "$ref": "#/definitions/ChatMessage"
+ },
+ "x-ms-identifiers": []
+ },
+ "functions": {
+ "type": "array",
+ "description": "A list of functions the model may generate JSON inputs for.",
+ "items": {
+ "$ref": "#/definitions/FunctionDefinition"
+ },
+ "x-ms-identifiers": []
+ },
+ "function_call": {
+ "description": "Controls how the model responds to function calls. \"none\" means the model does not call a function,\nand responds to the end-user. \"auto\" means the model can pick between an end-user or calling a function.\n Specifying a particular function via `{\"name\": \"my_function\"}` forces the model to call that function.\n \"none\" is the default when no functions are present. \"auto\" is the default if functions are present.",
+ "x-ms-client-name": "functionCall"
+ },
+ "max_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of tokens to generate.",
+ "x-ms-client-name": "maxTokens"
+ },
+ "temperature": {
+ "type": "number",
+ "format": "float",
+ "description": "The sampling temperature to use that controls the apparent creativity of generated completions.\nHigher values will make output more random while lower values will make results more focused\nand deterministic.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict."
+ },
+ "top_p": {
+ "type": "number",
+ "format": "float",
+ "description": "An alternative to sampling with temperature called nucleus sampling. This value causes the\nmodel to consider the results of tokens with the provided probability mass. As an example, a\nvalue of 0.15 will cause only the tokens comprising the top 15% of probability mass to be\nconsidered.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict.",
+ "x-ms-client-name": "topP"
+ },
+ "logit_bias": {
+ "type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
+ "additionalProperties": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "x-ms-client-name": "logitBias"
+ },
+ "user": {
+ "type": "string",
+ "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes."
+ },
+ "n": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of chat completions choices that should be generated for a chat completions\nresponse.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop."
+ },
+ "stop": {
+ "type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "presence_penalty": {
+ "type": "number",
+ "format": "float",
+ "description": "A value that influences the probability of generated tokens appearing based on their existing\npresence in generated text.\nPositive values will make tokens less likely to appear when they already exist and increase the\nmodel's likelihood to output new topics.",
+ "x-ms-client-name": "presencePenalty"
+ },
+ "frequency_penalty": {
+ "type": "number",
+ "format": "float",
+ "description": "A value that influences the probability of generated tokens appearing based on their cumulative\nfrequency in generated text.\nPositive values will make tokens less likely to appear as their frequency increases and\ndecrease the likelihood of the model repeating the same statements verbatim.",
+ "x-ms-client-name": "frequencyPenalty"
+ },
+ "stream": {
+ "type": "boolean",
+ "description": "A value indicating whether chat completions should be streamed for this request."
+ },
+ "model": {
+ "type": "string",
+ "description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
+ }
+ },
+ "required": [
+ "messages"
+ ]
+ },
+ "ChatMessage": {
+ "type": "object",
+ "description": "A single, role-attributed message within a chat completion interaction.",
+ "properties": {
+ "role": {
+ "$ref": "#/definitions/ChatRole",
+ "description": "The role associated with this message payload."
+ },
+ "content": {
+ "type": "string",
+ "description": "The text associated with this message payload.",
+ "x-nullable": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the author of this message. `name` is required if role is `function`, and it should be the name of the\nfunction whose response is in the `content`. May contain a-z, A-Z, 0-9, and underscores, with a maximum length of\n64 characters."
+ },
+ "function_call": {
+ "$ref": "#/definitions/FunctionCall",
+ "description": "The name and arguments of a function that should be called, as generated by the model.",
+ "x-ms-client-name": "functionCall"
+ }
+ },
+ "required": [
+ "role",
+ "content"
+ ]
+ },
+ "ChatRole": {
+ "type": "string",
+ "description": "A description of the intended purpose of a message within a chat completions interaction.",
+ "enum": [
+ "system",
+ "assistant",
+ "user",
+ "function"
+ ],
+ "x-ms-enum": {
+ "name": "ChatRole",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "system",
+ "value": "system",
+ "description": "The role that instructs or sets the behavior of the assistant."
+ },
+ {
+ "name": "assistant",
+ "value": "assistant",
+ "description": "The role that provides responses to system-instructed, user-prompted input."
+ },
+ {
+ "name": "user",
+ "value": "user",
+ "description": "The role that provides input for chat completions."
+ },
+ {
+ "name": "function",
+ "value": "function",
+ "description": "The role that provides function results for char completions."
+ }
+ ]
+ }
+ },
+ "Choice": {
+ "type": "object",
+ "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
+ "properties": {
+ "text": {
+ "type": "string",
+ "description": "The generated text for a given completions prompt."
+ },
+ "index": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The ordered index associated with this completions choice."
+ },
+ "content_filter_results": {
+ "$ref": "#/definitions/ContentFilterResults",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it \nhas been detected, as well as the severity level (very_low, low, medium, high-scale that \ndetermines the intensity and risk level of harmful content) and if it has been filtered or not.",
+ "x-ms-client-name": "contentFilterResults"
+ },
+ "logprobs": {
+ "type": "object",
+ "description": "The log probabilities model for tokens associated with this completions choice.",
+ "x-nullable": true,
+ "allOf": [
+ {
+ "$ref": "#/definitions/CompletionsLogProbabilityModel"
+ }
+ ]
+ },
+ "finish_reason": {
+ "$ref": "#/definitions/CompletionsFinishReason",
+ "description": "Reason for finishing",
+ "x-nullable": true,
+ "x-ms-client-name": "finishReason"
+ }
+ },
+ "required": [
+ "text",
+ "index",
+ "logprobs",
+ "finish_reason"
+ ]
+ },
+ "Completions": {
+ "type": "object",
+ "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "A unique identifier associated with this completions response."
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
+ },
+ "prompt_annotations": {
+ "type": "array",
+ "description": "Content filtering results for zero or more prompts in the request. In a streaming request, \nresults for different prompts may arrive at different times or in different orders.",
+ "items": {
+ "$ref": "#/definitions/PromptFilterResult"
+ },
+ "x-ms-client-name": "promptFilterResults",
+ "x-ms-identifiers": []
+ },
+ "choices": {
+ "type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
+ "items": {
+ "$ref": "#/definitions/Choice"
+ },
+ "x-ms-identifiers": []
+ },
+ "usage": {
+ "$ref": "#/definitions/CompletionsUsage",
+ "description": "Usage information for tokens processed and generated as part of this completions operation."
+ }
+ },
+ "required": [
+ "id",
+ "created",
+ "choices",
+ "usage"
+ ]
+ },
+ "CompletionsFinishReason": {
+ "type": "string",
+ "description": "Representation of the manner in which a completions response concluded.",
+ "enum": [
+ "stop",
+ "length",
+ "content_filter",
+ "function_call"
+ ],
+ "x-ms-enum": {
+ "name": "CompletionsFinishReason",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "stopped",
+ "value": "stop",
+ "description": "Completions ended normally and reached its end of token generation."
+ },
+ {
+ "name": "tokenLimitReached",
+ "value": "length",
+ "description": "Completions exhausted available token limits before generation could complete."
+ },
+ {
+ "name": "contentFiltered",
+ "value": "content_filter",
+ "description": "Completions generated a response that was identified as potentially sensitive per content\nmoderation policies."
+ },
+ {
+ "name": "functionCall",
+ "value": "function_call",
+ "description": "Completion ended normally, with the model requesting a function to be called."
+ }
+ ]
+ }
+ },
+ "CompletionsLogProbabilityModel": {
+ "type": "object",
+ "description": "Representation of a log probabilities model for a completions generation.",
+ "properties": {
+ "tokens": {
+ "type": "array",
+ "description": "The textual forms of tokens evaluated in this probability model.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "token_logprobs": {
+ "type": "array",
+ "description": "A collection of log probability values for the tokens in this completions data.",
+ "items": {
+ "type": "number",
+ "format": "float",
+ "x-nullable": true
+ },
+ "x-ms-client-name": "tokenLogprobs"
+ },
+ "top_logprobs": {
+ "type": "array",
+ "description": "A mapping of tokens to maximum log probability values in this completions data.",
+ "items": {
+ "type": "object"
+ },
+ "x-ms-client-name": "topLogprobs",
+ "x-ms-identifiers": []
+ },
+ "text_offset": {
+ "type": "array",
+ "description": "The text offsets associated with tokens in this completions data.",
+ "items": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "x-ms-client-name": "textOffset"
+ }
+ },
+ "required": [
+ "tokens",
+ "token_logprobs",
+ "top_logprobs",
+ "text_offset"
+ ]
+ },
+ "CompletionsOptions": {
+ "type": "object",
+ "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
+ "properties": {
+ "prompt": {
+ "type": "array",
+ "description": "The prompts to generate completions from.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "max_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of tokens to generate.",
+ "x-ms-client-name": "maxTokens"
+ },
+ "temperature": {
+ "type": "number",
+ "format": "float",
+ "description": "The sampling temperature to use that controls the apparent creativity of generated completions.\nHigher values will make output more random while lower values will make results more focused\nand deterministic.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict."
+ },
+ "top_p": {
+ "type": "number",
+ "format": "float",
+ "description": "An alternative to sampling with temperature called nucleus sampling. This value causes the\nmodel to consider the results of tokens with the provided probability mass. As an example, a\nvalue of 0.15 will cause only the tokens comprising the top 15% of probability mass to be\nconsidered.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict.",
+ "x-ms-client-name": "topP"
+ },
+ "logit_bias": {
+ "type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
+ "additionalProperties": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "x-ms-client-name": "logitBias"
+ },
+ "user": {
+ "type": "string",
+ "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes."
+ },
+ "n": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of completions choices that should be generated per provided prompt as part of an\noverall completions response.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop."
+ },
+ "logprobs": {
+ "type": "integer",
+ "format": "int32",
+ "description": "A value that controls the emission of log probabilities for the provided number of most likely\ntokens within a completions response."
+ },
+ "echo": {
+ "type": "boolean",
+ "description": "A value specifying whether completions responses should include input prompts as prefixes to\ntheir generated output."
+ },
+ "stop": {
+ "type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "presence_penalty": {
+ "type": "number",
+ "format": "float",
+ "description": "A value that influences the probability of generated tokens appearing based on their existing\npresence in generated text.\nPositive values will make tokens less likely to appear when they already exist and increase the\nmodel's likelihood to output new topics.",
+ "x-ms-client-name": "presencePenalty"
+ },
+ "frequency_penalty": {
+ "type": "number",
+ "format": "float",
+ "description": "A value that influences the probability of generated tokens appearing based on their cumulative\nfrequency in generated text.\nPositive values will make tokens less likely to appear as their frequency increases and\ndecrease the likelihood of the model repeating the same statements verbatim.",
+ "x-ms-client-name": "frequencyPenalty"
+ },
+ "best_of": {
+ "type": "integer",
+ "format": "int32",
+ "description": "A value that controls how many completions will be internally generated prior to response\nformulation.\nWhen used together with n, best_of controls the number of candidate completions and must be\ngreater than n.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop.",
+ "x-ms-client-name": "bestOf"
+ },
+ "stream": {
+ "type": "boolean",
+ "description": "A value indicating whether chat completions should be streamed for this request."
+ },
+ "model": {
+ "type": "string",
+ "description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
+ }
+ },
+ "required": [
+ "prompt"
+ ]
+ },
+ "CompletionsUsage": {
+ "type": "object",
+ "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
+ "properties": {
+ "completion_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of tokens generated across all completions emissions.",
+ "x-ms-client-name": "completionTokens"
+ },
+ "prompt_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of tokens in the provided prompts for the completions request.",
+ "x-ms-client-name": "promptTokens"
+ },
+ "total_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The total number of tokens processed for the completions request and response.",
+ "x-ms-client-name": "totalTokens"
+ }
+ },
+ "required": [
+ "completion_tokens",
+ "prompt_tokens",
+ "total_tokens"
+ ]
+ },
+ "ContentFilterResult": {
+ "type": "object",
+ "description": "Information about filtered content severity level and if it has been filtered or not.",
+ "properties": {
+ "severity": {
+ "$ref": "#/definitions/ContentFilterSeverity",
+ "description": "Ratings for the intensity and risk level of filtered content."
+ },
+ "filtered": {
+ "type": "boolean",
+ "description": "A value indicating whether or not the content has been filtered."
+ }
+ },
+ "required": [
+ "severity",
+ "filtered"
+ ]
+ },
+ "ContentFilterResults": {
+ "type": "object",
+ "description": "Information about the content filtering category, if it has been detected.",
+ "properties": {
+ "sexual": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including \n those portrayed as an assault or a forced sexual violent act against one’s will, \n prostitution, pornography, and abuse."
+ },
+ "violence": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language related to physical actions intended to hurt, injure, damage, or \nkill someone or something; describes weapons, etc."
+ },
+ "hate": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language attacks or uses that include pejorative or discriminatory language \nwith reference to a person or identity group on the basis of certain differentiating \nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size."
+ },
+ "self_harm": {
+ "$ref": "#/definitions/ContentFilterResult",
+ "description": "Describes language related to physical actions intended to purposely hurt, injure,\nor damage one’s body, or kill oneself.",
+ "x-ms-client-name": "selfHarm"
+ }
+ }
+ },
+ "ContentFilterSeverity": {
+ "type": "string",
+ "description": "Ratings for the intensity and risk level of harmful content.",
+ "enum": [
+ "safe",
+ "low",
+ "medium",
+ "high"
+ ],
+ "x-ms-enum": {
+ "name": "ContentFilterSeverity",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "safe",
+ "value": "safe",
+ "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms \nare used in general, journalistic, scientific, medical, and similar professional contexts, \nwhich are appropriate for most audiences."
+ },
+ {
+ "name": "low",
+ "value": "low",
+ "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive \nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity."
+ },
+ {
+ "name": "medium",
+ "value": "medium",
+ "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language \ntowards specific identity groups, includes depictions of seeking and executing harmful \ninstructions, fantasies, glorification, promotion of harm at medium intensity."
+ },
+ {
+ "name": "high",
+ "value": "high",
+ "description": "Content that displays explicit and severe harmful instructions, actions, \ndamage, or abuse; includes endorsement, glorification, or promotion of severe \nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual \npower exchange or abuse."
+ }
+ ]
+ }
+ },
+ "EmbeddingItem": {
+ "type": "object",
+ "description": "Representation of a single embeddings relatedness comparison.",
+ "properties": {
+ "embedding": {
+ "type": "array",
+ "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
+ "items": {
+ "type": "number",
+ "format": "float"
+ }
+ },
+ "index": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Index of the prompt to which the EmbeddingItem corresponds."
+ }
+ },
+ "required": [
+ "embedding",
+ "index"
+ ]
+ },
+ "Embeddings": {
+ "type": "object",
+ "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
+ "properties": {
+ "data": {
+ "type": "array",
+ "description": "Embedding values for the prompts submitted in the request.",
+ "items": {
+ "$ref": "#/definitions/EmbeddingItem"
+ },
+ "x-ms-identifiers": []
+ },
+ "usage": {
+ "$ref": "#/definitions/EmbeddingsUsage",
+ "description": "Usage counts for tokens input using the embeddings API."
+ }
+ },
+ "required": [
+ "data",
+ "usage"
+ ]
+ },
+ "EmbeddingsOptions": {
+ "type": "object",
+ "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
+ "properties": {
+ "user": {
+ "type": "string",
+ "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes."
+ },
+ "model": {
+ "type": "string",
+ "description": "The model name to provide as part of this embeddings request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
+ },
+ "input": {
+ "type": "array",
+ "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "input"
+ ]
+ },
+ "EmbeddingsUsage": {
+ "type": "object",
+ "description": "Measurement of the amount of tokens used in this request and response.",
+ "properties": {
+ "prompt_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of tokens sent in the original request.",
+ "x-ms-client-name": "promptTokens"
+ },
+ "total_tokens": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Total number of tokens transacted in this request/response.",
+ "x-ms-client-name": "totalTokens"
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "total_tokens"
+ ]
+ },
+ "FunctionCall": {
+ "type": "object",
+ "description": "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.\nNote that the model does not always generate valid JSON, and may hallucinate parameters\nnot defined by your function schema. Validate the arguments in your code before calling\nyour function."
+ }
+ },
+ "required": [
+ "name",
+ "arguments"
+ ]
+ },
+ "FunctionDefinition": {
+ "type": "object",
+ "description": "The definition of a caller-specified function that chat completions may invoke in response to matching user input.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to be called."
+ },
+ "description": {
+ "type": "string",
+ "description": "A description of what the function does. The model will use this description when selecting the function and\ninterpreting its parameters."
+ },
+ "parameters": {
+ "description": "The parameters the functions accepts, described as a JSON Schema object."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ },
+ "ImageGenerationOptions": {
+ "type": "object",
+ "description": "Represents the request data used to generate images.",
+ "properties": {
+ "prompt": {
+ "type": "string",
+ "description": "A description of the desired images."
+ },
+ "n": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of images to generate (defaults to 1).",
+ "default": 1
+ },
+ "size": {
+ "$ref": "#/definitions/ImageSize",
+ "description": "The desired size of the generated images. Must be one of 256x256, 512x512, or 1024x1024 (defaults to 1024x1024).",
+ "default": "1024x1024"
+ },
+ "response_format": {
+ "$ref": "#/definitions/ImageGenerationResponseFormat",
+ "description": " The format in which image generation response items should be presented.\n Azure OpenAI only supports URL response items.",
+ "x-ms-client-name": "responseFormat"
+ },
+ "user": {
+ "type": "string",
+ "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse."
+ }
+ },
+ "required": [
+ "prompt"
+ ]
+ },
+ "ImageGenerationResponseFormat": {
+ "type": "string",
+ "description": "The format in which the generated images are returned.",
+ "enum": [
+ "url",
+ "b64_json"
+ ],
+ "x-ms-enum": {
+ "name": "ImageGenerationResponseFormat",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Url",
+ "value": "url",
+ "description": "Image generation response items should provide a URL from which the image may be retrieved."
+ },
+ {
+ "name": "Base64",
+ "value": "b64_json",
+ "description": "Image generation response items should provide image data as a base64-encoded string."
+ }
+ ]
+ }
+ },
+ "ImageGenerations": {
+ "type": "object",
+ "description": "The result of the operation if the operation succeeded.",
+ "properties": {
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs)."
+ },
+ "data": {
+ "description": "The images generated by the operator."
+ }
+ },
+ "required": [
+ "created",
+ "data"
+ ]
+ },
+ "ImageSize": {
+ "type": "string",
+ "description": "The desired size of the generated images. Must be one of 256x256, 512x512, or 1024x1024.",
+ "enum": [
+ "256x256",
+ "512x512",
+ "1024x1024"
+ ],
+ "x-ms-enum": {
+ "name": "ImageSize",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Size256x256",
+ "value": "256x256",
+ "description": "Image size of 256x256."
+ },
+ {
+ "name": "Size512x512",
+ "value": "512x512",
+ "description": "Image size of 512x512."
+ },
+ {
+ "name": "Size1024x1024",
+ "value": "1024x1024",
+ "description": "Image size of 1024x1024."
+ }
+ ]
+ }
+ },
+ "PromptFilterResult": {
+ "type": "object",
+ "description": "Content filtering results for a single prompt in the request.",
+ "properties": {
+ "prompt_index": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The index of this prompt in the set of prompt results",
+ "x-ms-client-name": "promptIndex"
+ },
+ "content_filter_results": {
+ "$ref": "#/definitions/ContentFilterResults",
+ "description": "Content filtering results for this prompt",
+ "x-ms-client-name": "contentFilterResults"
+ }
+ },
+ "required": [
+ "prompt_index"
+ ]
+ }
+ },
+ "parameters": {
+ "Azure.Core.Foundations.ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "description": "The API version to use for this operation.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/inference.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/inference.json
new file mode 100644
index 000000000000..6bbbcdedcb24
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/inference.json
@@ -0,0 +1,1339 @@
+{
+ "openapi": "3.0.0",
+ "info": {
+ "title": "Azure OpenAI Service API",
+ "description": "Azure OpenAI APIs for completions and search",
+ "version": "2023-07-01-preview"
+ },
+ "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": "2023-07-01-preview",
+ "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
+ },
+ "cache_level": {
+ "description": "can be used to disable any server-side caching, 0=no cache, 1=prompt prefix enabled, 2=full cache",
+ "type": "integer",
+ "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/contentFilterResults"
+ }
+ }
+ }
+ },
+ "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": "2023-07-01-preview",
+ "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"
+ }
+ },
+ "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"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/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": "2023-07-01-preview",
+ "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"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/extensions/chat/completions": {
+ "post": {
+ "summary": "Using extensions to creates a completion for the chat messages.",
+ "operationId": "ExtensionsChatCompletions_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": "2023-07-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/extensionsChatCompletionsRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/extensionsChatCompletionsResponse"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "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": {
+ "code": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "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/contentFilterResults"
+ }
+ }
+ },
+ "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."
+ }
+ ]
+ }
+ },
+ "contentFilterResult": {
+ "type": "object",
+ "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."
+ }
+ ]
+ }
+ },
+ "filtered": {
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "severity",
+ "filtered"
+ ]
+ },
+ "contentFilterResults": {
+ "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.",
+ "properties": {
+ "sexual": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "violence": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "hate": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "self_harm": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "error": {
+ "$ref": "#/components/schemas/errorBase"
+ }
+ }
+ },
+ "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/contentFilterResults"
+ }
+ }
+ },
+ "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"
+ }
+ },
+ "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"
+ }
+ },
+ "functions": {
+ "description": "A list of functions the model may generate JSON inputs for.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionFunctions"
+ }
+ },
+ "function_call": {
+ "description": "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"
+ ]
+ },
+ {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ }
+ ]
+ },
+ "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."
+ }
+ }
+ }
+ ],
+ "required": [
+ "messages"
+ ]
+ },
+ "chatCompletionFunctions": {
+ "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": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "function"
+ ],
+ "description": "The role of the messages author. One of `system`, `user`, `assistant`, or `function`."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message. `content` is required for all messages except assistant messages with function calls."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the author of this message. `name` is required if role is `function`, and it should be the name of the function whose response is in the `content`. May contain a-z, A-Z, 0-9, and underscores, with a maximum length of 64 characters."
+ },
+ "function_call": {
+ "type": "object",
+ "description": "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": [
+ "role"
+ ]
+ },
+ "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/contentFilterResults"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "required": [
+ "id",
+ "object",
+ "created",
+ "model",
+ "choices"
+ ]
+ },
+ "chatCompletionResponseMessage": {
+ "type": "object",
+ "properties": {
+ "role": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "function"
+ ],
+ "description": "The role of the author of this message."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message."
+ },
+ "function_call": {
+ "type": "object",
+ "description": "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": [
+ "role"
+ ]
+ },
+ "extensionsChatCompletionsRequest": {
+ "type": "object",
+ "description": "Request for the chat completions using extensions",
+ "required": [
+ "messages"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionsRequestCommon"
+ },
+ {
+ "properties": {
+ "messages": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/message"
+ }
+ },
+ "dataSources": {
+ "type": "array",
+ "description": "The data sources to be used for the Azure OpenAI on your data feature.",
+ "items": {
+ "$ref": "#/components/schemas/dataSource"
+ }
+ }
+ }
+ }
+ ],
+ "example": {
+ "dataSources": [
+ {
+ "type": "AzureCognitiveSearch",
+ "parameters": {
+ "endpoint": "https://mysearchexample.search.windows.net",
+ "key": "***(admin key)",
+ "indexName": "my-chunk-index",
+ "fieldsMapping": {
+ "titleField": "productName",
+ "urlField": "productUrl",
+ "filepathField": "productFilePath",
+ "contentFields": [
+ "productDescription"
+ ],
+ "contentFieldsSeparator": "\n"
+ },
+ "topNDocuments": 5,
+ "queryType": "semantic",
+ "semanticConfiguration": "defaultConfiguration",
+ "inScope": true,
+ "roleInformation": "roleInformation"
+ }
+ }
+ ],
+ "messages": [
+ {
+ "role": "user",
+ "content": "Where can I find a hiking place in Seattle?"
+ }
+ ],
+ "temperature": 0.9
+ }
+ },
+ "dataSource": {
+ "type": "object",
+ "description": "The data source to be used for the Azure OpenAI on your data feature.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The data source type."
+ },
+ "parameters": {
+ "type": "object",
+ "description": "The parameters to be used for the data source in runtime.",
+ "additionalProperties": true
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "message": {
+ "type": "object",
+ "description": "A chat message.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the message in the conversation."
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "tool"
+ ],
+ "description": "The role of the author of this message."
+ },
+ "recipient": {
+ "type": "string",
+ "example": "Contoso.productsUsingGET",
+ "description": "The recipient of the message in the format of .. Present if and only if the recipient is tool."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message"
+ },
+ "end_turn": {
+ "type": "boolean",
+ "description": "Whether the message ends the turn."
+ }
+ },
+ "required": [
+ "role",
+ "content"
+ ]
+ },
+ "chatCompletionsResponseCommon": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "object": {
+ "type": "string"
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime"
+ },
+ "model": {
+ "type": "string"
+ },
+ "usage": {
+ "type": "object",
+ "properties": {
+ "prompt_tokens": {
+ "type": "integer"
+ },
+ "completion_tokens": {
+ "type": "integer"
+ },
+ "total_tokens": {
+ "type": "integer"
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "completion_tokens",
+ "total_tokens"
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created",
+ "model"
+ ]
+ },
+ "chatCompletionChoiceCommon": {
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer"
+ },
+ "finish_reason": {
+ "type": "string"
+ }
+ }
+ },
+ "extensionsChatCompletionChoice": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionChoiceCommon"
+ },
+ {
+ "properties": {
+ "messages": {
+ "type": "array",
+ "description": "The list of messages returned by the service.",
+ "items": {
+ "$ref": "#/components/schemas/message"
+ }
+ }
+ }
+ }
+ ]
+ },
+ "extensionsChatCompletionsResponse": {
+ "type": "object",
+ "description": "The response of the extensions chat completions.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionsResponseCommon"
+ },
+ {
+ "properties": {
+ "choices": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/extensionsChatCompletionChoice"
+ }
+ }
+ }
+ }
+ ],
+ "example": {
+ "id": "1",
+ "object": "extensions.chat.completion",
+ "created": 1679201802,
+ "model": "gpt-3.5-turbo-0301",
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "messages": [
+ {
+ "role": "tool",
+ "content": "{\"citations\":[{\"filepath\":\"ContosoTraveler.pdf\",\"content\":\"This is the content of the citation 1\"},{\"filepath\":\"WestCoastTraveler.html\",\"content\":\"This is the content of the citation 2\"},{\"content\":\"This is the content of the citation 3 without filepath\"}],\"intent\":\"hiking place in seattle\"}",
+ "end_turn": false
+ },
+ {
+ "role": "assistant",
+ "content": "Seattle is a great place for hiking! Here are some of the best hiking places in Seattle according to Contoso Traveler [doc1] and West Coast Traveler, Snow Lake, Mount Si, and Mount Tenerife [doc2]. I hope this helps! Let me know if you need more information.",
+ "end_turn": true
+ }
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "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/preview/2023-08-01-preview/inference.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-08-01-preview/inference.json
new file mode 100644
index 000000000000..8aff7bb6ef3a
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-08-01-preview/inference.json
@@ -0,0 +1,1349 @@
+{
+ "openapi": "3.0.0",
+ "info": {
+ "title": "Azure OpenAI Service API",
+ "description": "Azure OpenAI APIs for completions and search",
+ "version": "2023-08-01-preview"
+ },
+ "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": "2023-08-01-preview",
+ "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/contentFilterResults"
+ }
+ }
+ }
+ },
+ "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": "2023-08-01-preview",
+ "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"
+ }
+ },
+ "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"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/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": "2023-08-01-preview",
+ "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"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/extensions/chat/completions": {
+ "post": {
+ "summary": "Using extensions to creates a completion for the chat messages.",
+ "operationId": "ExtensionsChatCompletions_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": "2023-08-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/extensionsChatCompletionsRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/extensionsChatCompletionsResponse"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "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": {
+ "code": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "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/contentFilterResults"
+ }
+ }
+ },
+ "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."
+ }
+ ]
+ }
+ },
+ "contentFilterResult": {
+ "type": "object",
+ "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."
+ }
+ ]
+ }
+ },
+ "filtered": {
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "severity",
+ "filtered"
+ ]
+ },
+ "contentFilterResults": {
+ "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.",
+ "properties": {
+ "sexual": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "violence": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "hate": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "self_harm": {
+ "$ref": "#/components/schemas/contentFilterResult"
+ },
+ "error": {
+ "$ref": "#/components/schemas/errorBase"
+ }
+ }
+ },
+ "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/contentFilterResults"
+ }
+ }
+ },
+ "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"
+ }
+ },
+ "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"
+ }
+ },
+ "functions": {
+ "description": "A list of functions the model may generate JSON inputs for.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionFunctions"
+ }
+ },
+ "function_call": {
+ "description": "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"
+ ]
+ },
+ {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ }
+ ]
+ },
+ "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."
+ }
+ }
+ }
+ ],
+ "required": [
+ "messages"
+ ]
+ },
+ "chatCompletionFunctions": {
+ "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": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "function"
+ ],
+ "description": "The role of the messages author. One of `system`, `user`, `assistant`, or `function`."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message. `content` is required for all messages except assistant messages with function calls."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the author of this message. `name` is required if role is `function`, and it should be the name of the function whose response is in the `content`. May contain a-z, A-Z, 0-9, and underscores, with a maximum length of 64 characters."
+ },
+ "function_call": {
+ "type": "object",
+ "description": "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": [
+ "role"
+ ]
+ },
+ "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/contentFilterResults"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "required": [
+ "id",
+ "object",
+ "created",
+ "model",
+ "choices"
+ ]
+ },
+ "chatCompletionResponseMessage": {
+ "type": "object",
+ "properties": {
+ "role": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "function"
+ ],
+ "description": "The role of the author of this message."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message."
+ },
+ "function_call": {
+ "type": "object",
+ "description": "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": [
+ "role"
+ ]
+ },
+ "extensionsChatCompletionsRequest": {
+ "type": "object",
+ "description": "Request for the chat completions using extensions",
+ "required": [
+ "messages"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionsRequestCommon"
+ },
+ {
+ "properties": {
+ "messages": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/message"
+ }
+ },
+ "dataSources": {
+ "type": "array",
+ "description": "The data sources to be used for the Azure OpenAI on your data feature.",
+ "items": {
+ "$ref": "#/components/schemas/dataSource"
+ }
+ }
+ }
+ }
+ ],
+ "example": {
+ "dataSources": [
+ {
+ "type": "AzureCognitiveSearch",
+ "parameters": {
+ "endpoint": "https://mysearchexample.search.windows.net",
+ "key": "***(admin key)",
+ "indexName": "my-chunk-index",
+ "fieldsMapping": {
+ "titleField": "productName",
+ "urlField": "productUrl",
+ "filepathField": "productFilePath",
+ "contentFields": [
+ "productDescription"
+ ],
+ "contentFieldsSeparator": "\n"
+ },
+ "topNDocuments": 5,
+ "queryType": "semantic",
+ "semanticConfiguration": "defaultConfiguration",
+ "inScope": true,
+ "roleInformation": "roleInformation"
+ }
+ }
+ ],
+ "messages": [
+ {
+ "role": "user",
+ "content": "Where can I find a hiking place in Seattle?"
+ }
+ ],
+ "temperature": 0.9
+ }
+ },
+ "dataSource": {
+ "type": "object",
+ "description": "The data source to be used for the Azure OpenAI on your data feature.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The data source type."
+ },
+ "parameters": {
+ "type": "object",
+ "description": "The parameters to be used for the data source in runtime.",
+ "additionalProperties": true
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "message": {
+ "type": "object",
+ "description": "A chat message.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the message in the conversation."
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "tool"
+ ],
+ "description": "The role of the author of this message."
+ },
+ "recipient": {
+ "type": "string",
+ "example": "Contoso.productsUsingGET",
+ "description": "The recipient of the message in the format of .. Present if and only if the recipient is tool."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message"
+ },
+ "end_turn": {
+ "type": "boolean",
+ "description": "Whether the message ends the turn."
+ },
+ "context": {
+ "type": "object",
+ "description": "The conversation context",
+ "nullable": true,
+ "properties": {
+ "messages": {
+ "type": "array",
+ "description": "Messages exchanged between model and extensions prior to final message from model",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/components/schemas/message"
+ },
+ "nullable": true
+ }
+ }
+ }
+ },
+ "required": [
+ "role",
+ "content"
+ ]
+ },
+ "chatCompletionsResponseCommon": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "object": {
+ "type": "string"
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime"
+ },
+ "model": {
+ "type": "string"
+ },
+ "usage": {
+ "type": "object",
+ "properties": {
+ "prompt_tokens": {
+ "type": "integer"
+ },
+ "completion_tokens": {
+ "type": "integer"
+ },
+ "total_tokens": {
+ "type": "integer"
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "completion_tokens",
+ "total_tokens"
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created",
+ "model"
+ ]
+ },
+ "chatCompletionChoiceCommon": {
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer"
+ },
+ "finish_reason": {
+ "type": "string"
+ }
+ }
+ },
+ "extensionsChatCompletionChoice": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionChoiceCommon"
+ },
+ {
+ "properties": {
+ "message": {
+ "description": "The message returned by the service.",
+ "$ref": "#/components/schemas/message"
+ }
+ }
+ }
+ ]
+ },
+ "extensionsChatCompletionsResponse": {
+ "type": "object",
+ "description": "The response of the extensions chat completions.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionsResponseCommon"
+ },
+ {
+ "properties": {
+ "choices": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/extensionsChatCompletionChoice"
+ }
+ }
+ }
+ }
+ ],
+ "example": {
+ "id": "1",
+ "object": "extensions.chat.completion",
+ "created": 1679201802,
+ "model": "gpt-3.5-turbo-0301",
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Seattle is a great place for hiking! Here are some of the best hiking places in Seattle according to Contoso Traveler [doc1] and West Coast Traveler, Snow Lake, Mount Si, and Mount Tenerife [doc2]. I hope this helps! Let me know if you need more information.",
+ "end_turn": true,
+ "context": {
+ "messages": [
+ {
+ "role": "tool",
+ "content": "{\"citations\":[{\"filepath\":\"ContosoTraveler.pdf\",\"content\":\"This is the content of the citation 1\"},{\"filepath\":\"WestCoastTraveler.html\",\"content\":\"This is the content of the citation 2\"},{\"content\":\"This is the content of the citation 3 without filepath\"}],\"intent\":\"hiking place in seattle\"}",
+ "end_turn": false
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ "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/readme.md b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md
index 723d3ae97caa..d2300759b993 100644
--- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md
@@ -106,3 +106,22 @@ directive:
reason: Parameter is read only
```
+## AzureOpenAI 2023-07-01-preview (generated)
+These settings apply only when `--tag=release_2023_07_01_preview_autogen` is specified on the command line.
+
+``` yaml $(tag) == 'release_2023_07_01_preview_autogen'
+input-file: preview/2023-07-01-preview/generated.json
+```
+
+AutoRest-Linter Suppressions
+
+``` yaml
+# Ignore autorest-linter issues that cannot be resolved without breaking compatibility to existing openai api
+directive:
+ - suppress: LroExtension
+ reason: https://github.com/Azure/typespec-azure/issues/3194
+ - suppress: RequiredReadOnlyProperties
+ reason: Parameter is read only
+```
+
+
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 6e5b78cd511f..4817ba7a5ee3 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
@@ -45,8 +45,8 @@
"securityDefinitions": {
"ApiKeyAuth": {
"type": "apiKey",
- "in": "header",
- "name": "api-key"
+ "name": "api-key",
+ "in": "header"
},
"OAuth2Auth": {
"type": "oauth2",
@@ -70,17 +70,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/CompletionsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -92,14 +92,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -121,17 +121,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/EmbeddingsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -143,14 +143,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -165,6 +165,7 @@
"definitions": {
"Azure.Core.Foundations.Error": {
"type": "object",
+ "description": "The error object.",
"properties": {
"code": {
"type": "string",
@@ -180,19 +181,17 @@
},
"details": {
"type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of details about specific errors that led to this reported error.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]"
+ "x-ms-identifiers": []
},
"innererror": {
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "An object containing more specific information than the current object about the error."
}
},
- "description": "The error object.",
"required": [
"code",
"message"
@@ -200,19 +199,20 @@
},
"Azure.Core.Foundations.ErrorResponse": {
"type": "object",
+ "description": "A response containing error details.",
"properties": {
"error": {
"$ref": "#/definitions/Azure.Core.Foundations.Error",
"description": "The error object."
}
},
- "description": "A response containing error details.",
"required": [
"error"
]
},
"Azure.Core.Foundations.InnerError": {
"type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
"properties": {
"code": {
"type": "string",
@@ -222,202 +222,11 @@
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "Inner error."
}
- },
- "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses."
- },
- "ChatChoice": {
- "type": "object",
- "properties": {
- "message": {
- "$ref": "#/definitions/ChatMessage",
- "description": "The chat message for a given chat completions prompt."
- },
- "index": {
- "type": "integer",
- "format": "int32",
- "description": "The ordered index associated with this chat completions choice."
- },
- "finish_reason": {
- "x-typespec-name": "CompletionsFinishReason | null",
- "description": "The reason that this chat completions choice completed its generated.",
- "x-ms-client-name": "finishReason"
- },
- "delta": {
- "$ref": "#/definitions/ChatMessage",
- "description": "The delta message content for a streaming response."
- }
- },
- "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "required": [
- "index",
- "finish_reason"
- ]
- },
- "ChatCompletions": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string",
- "description": "A unique identifier associated with this chat completions response."
- },
- "created": {
- "type": "integer",
- "format": "int32",
- "description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
- },
- "choices": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/ChatChoice"
- },
- "x-ms-identifiers": [],
- "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "x-typespec-name": "ChatChoice[]"
- },
- "usage": {
- "$ref": "#/definitions/CompletionsUsage",
- "description": "Usage information for tokens processed and generated as part of this completions operation."
- }
- },
- "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
- "required": [
- "id",
- "created",
- "choices",
- "usage"
- ]
- },
- "ChatCompletionsOptions": {
- "type": "object",
- "properties": {
- "messages": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/ChatMessage"
- },
- "x-ms-identifiers": [],
- "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.",
- "x-typespec-name": "ChatMessage[]"
- },
- "max_tokens": {
- "type": "integer",
- "format": "int32",
- "description": "The maximum number of tokens to generate.",
- "x-ms-client-name": "maxTokens"
- },
- "temperature": {
- "type": "number",
- "format": "float",
- "description": "The sampling temperature to use that controls the apparent creativity of generated completions.\nHigher values will make output more random while lower values will make results more focused\nand deterministic.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict."
- },
- "top_p": {
- "type": "number",
- "format": "float",
- "description": "An alternative to sampling with temperature called nucleus sampling. This value causes the\nmodel to consider the results of tokens with the provided probability mass. As an example, a\nvalue of 0.15 will cause only the tokens comprising the top 15% of probability mass to be\nconsidered.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict.",
- "x-ms-client-name": "topP"
- },
- "logit_bias": {
- "type": "object",
- "additionalProperties": {
- "type": "integer",
- "format": "int32"
- },
- "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
- "x-typespec-name": "Record",
- "x-ms-client-name": "logitBias"
- },
- "user": {
- "type": "string",
- "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes."
- },
- "n": {
- "type": "integer",
- "format": "int32",
- "description": "The number of chat completions choices that should be generated for a chat completions\nresponse.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop."
- },
- "stop": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "A collection of textual sequences that will end completions generation.",
- "x-typespec-name": "string[]"
- },
- "presence_penalty": {
- "type": "number",
- "format": "float",
- "description": "A value that influences the probability of generated tokens appearing based on their existing\npresence in generated text.\nPositive values will make tokens less likely to appear when they already exist and increase the\nmodel's likelihood to output new topics.",
- "x-ms-client-name": "presencePenalty"
- },
- "frequency_penalty": {
- "type": "number",
- "format": "float",
- "description": "A value that influences the probability of generated tokens appearing based on their cumulative\nfrequency in generated text.\nPositive values will make tokens less likely to appear as their frequency increases and\ndecrease the likelihood of the model repeating the same statements verbatim.",
- "x-ms-client-name": "frequencyPenalty"
- },
- "stream": {
- "type": "boolean",
- "description": "A value indicating whether chat completions should be streamed for this request."
- },
- "model": {
- "type": "string",
- "description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
- }
- },
- "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
- "required": [
- "messages"
- ]
- },
- "ChatMessage": {
- "type": "object",
- "properties": {
- "role": {
- "$ref": "#/definitions/ChatRole",
- "description": "The role associated with this message payload."
- },
- "content": {
- "type": "string",
- "description": "The text associated with this message payload."
- }
- },
- "description": "A single, role-attributed message within a chat completion interaction.",
- "required": [
- "role"
- ]
- },
- "ChatRole": {
- "type": "string",
- "description": "A description of the intended purpose of a message within a chat completions interaction.",
- "enum": [
- "system",
- "assistant",
- "user"
- ],
- "x-ms-enum": {
- "name": "ChatRole",
- "modelAsString": true,
- "values": [
- {
- "name": "system",
- "value": "system",
- "description": "The role that instructs or sets the behavior of the assistant."
- },
- {
- "name": "assistant",
- "value": "assistant",
- "description": "The role that provides responses to system-instructed, user-prompted input."
- },
- {
- "name": "user",
- "value": "user",
- "description": "The role that provides input for chat completions."
- }
- ]
}
},
"Choice": {
"type": "object",
+ "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"properties": {
"text": {
"type": "string",
@@ -430,22 +239,21 @@
},
"logprobs": {
"type": "object",
+ "description": "The log probabilities model for tokens associated with this completions choice.",
+ "x-nullable": true,
"allOf": [
{
"$ref": "#/definitions/CompletionsLogProbabilityModel"
}
- ],
- "x-nullable": true,
- "x-typespec-name": "CompletionsLogProbabilityModel | null",
- "description": "The log probabilities model for tokens associated with this completions choice."
+ ]
},
"finish_reason": {
- "x-typespec-name": "CompletionsFinishReason | null",
+ "$ref": "#/definitions/CompletionsFinishReason",
"description": "Reason for finishing",
+ "x-nullable": true,
"x-ms-client-name": "finishReason"
}
},
- "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"required": [
"text",
"index",
@@ -455,6 +263,7 @@
},
"Completions": {
"type": "object",
+ "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"id": {
"type": "string",
@@ -462,24 +271,22 @@
},
"created": {
"type": "integer",
- "format": "int32",
+ "format": "unixtime",
"description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
},
"choices": {
"type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"items": {
"$ref": "#/definitions/Choice"
},
- "x-ms-identifiers": [],
- "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "x-typespec-name": "Choice[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/CompletionsUsage",
"description": "Usage information for tokens processed and generated as part of this completions operation."
}
},
- "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"id",
"created",
@@ -519,50 +326,44 @@
},
"CompletionsLogProbabilityModel": {
"type": "object",
+ "description": "Representation of a log probabilities model for a completions generation.",
"properties": {
"tokens": {
"type": "array",
+ "description": "The textual forms of tokens evaluated in this probability model.",
"items": {
"type": "string"
- },
- "description": "The textual forms of tokens evaluated in this probability model.",
- "x-typespec-name": "string[]"
+ }
},
"token_logprobs": {
"type": "array",
+ "description": "A collection of log probability values for the tokens in this completions data.",
"items": {
"type": "number",
"format": "float",
- "x-nullable": true,
- "x-typespec-name": "float32 | null"
+ "x-nullable": true
},
- "description": "A collection of log probability values for the tokens in this completions data.",
- "x-typespec-name": "float32 | null[]",
"x-ms-client-name": "tokenLogprobs"
},
"top_logprobs": {
"type": "array",
+ "description": "A mapping of tokens to maximum log probability values in this completions data.",
"items": {
- "type": "object",
- "x-typespec-name": "Record"
+ "type": "object"
},
- "x-ms-identifiers": [],
- "description": "A mapping of tokens to maximum log probability values in this completions data.",
- "x-typespec-name": "Record[]",
- "x-ms-client-name": "topLogprobs"
+ "x-ms-client-name": "topLogprobs",
+ "x-ms-identifiers": []
},
"text_offset": {
"type": "array",
+ "description": "The text offsets associated with tokens in this completions data.",
"items": {
"type": "integer",
"format": "int32"
},
- "description": "The text offsets associated with tokens in this completions data.",
- "x-typespec-name": "int32[]",
"x-ms-client-name": "textOffset"
}
},
- "description": "Representation of a log probabilities model for a completions generation.",
"required": [
"tokens",
"token_logprobs",
@@ -572,14 +373,14 @@
},
"CompletionsOptions": {
"type": "object",
+ "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"prompt": {
"type": "array",
+ "description": "The prompts to generate completions from.",
"items": {
"type": "string"
- },
- "description": "The prompts to generate completions from.",
- "x-typespec-name": "string[]"
+ }
},
"max_tokens": {
"type": "integer",
@@ -600,12 +401,11 @@
},
"logit_bias": {
"type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
"additionalProperties": {
- "type": "integer",
- "format": "int32"
+ "format": "int32",
+ "type": "integer"
},
- "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
- "x-typespec-name": "Record",
"x-ms-client-name": "logitBias"
},
"user": {
@@ -628,11 +428,10 @@
},
"stop": {
"type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
"items": {
"type": "string"
- },
- "description": "A collection of textual sequences that will end completions generation.",
- "x-typespec-name": "string[]"
+ }
},
"presence_penalty": {
"type": "number",
@@ -661,13 +460,13 @@
"description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
}
},
- "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"prompt"
]
},
"CompletionsUsage": {
"type": "object",
+ "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
"properties": {
"completion_tokens": {
"type": "integer",
@@ -688,38 +487,23 @@
"x-ms-client-name": "totalTokens"
}
},
- "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
"required": [
"completion_tokens",
"prompt_tokens",
"total_tokens"
]
},
- "Deployment": {
- "type": "object",
- "properties": {
- "deploymentId": {
- "type": "string",
- "description": "deployment id of the deployed model",
- "readOnly": true
- }
- },
- "description": "A specific deployment",
- "required": [
- "deploymentId"
- ]
- },
"EmbeddingItem": {
"type": "object",
+ "description": "Representation of a single embeddings relatedness comparison.",
"properties": {
"embedding": {
"type": "array",
+ "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
- "x-typespec-name": "float32[]"
+ }
},
"index": {
"type": "integer",
@@ -727,7 +511,6 @@
"description": "Index of the prompt to which the EmbeddingItem corresponds."
}
},
- "description": "Representation of a single embeddings relatedness comparison.",
"required": [
"embedding",
"index"
@@ -735,22 +518,21 @@
},
"Embeddings": {
"type": "object",
+ "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"properties": {
"data": {
"type": "array",
+ "description": "Embedding values for the prompts submitted in the request.",
"items": {
"$ref": "#/definitions/EmbeddingItem"
},
- "x-ms-identifiers": [],
- "description": "Embedding values for the prompts submitted in the request.",
- "x-typespec-name": "EmbeddingItem[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/EmbeddingsUsage",
"description": "Usage counts for tokens input using the embeddings API."
}
},
- "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"required": [
"data",
"usage"
@@ -758,6 +540,7 @@
},
"EmbeddingsOptions": {
"type": "object",
+ "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"properties": {
"user": {
"type": "string",
@@ -769,20 +552,19 @@
},
"input": {
"type": "array",
+ "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
"items": {
"type": "string"
- },
- "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
- "x-typespec-name": "string[]"
+ }
}
},
- "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"required": [
"input"
]
},
"EmbeddingsUsage": {
"type": "object",
+ "description": "Measurement of the amount of tokens used in this request and response.",
"properties": {
"prompt_tokens": {
"type": "integer",
@@ -797,49 +579,22 @@
"x-ms-client-name": "totalTokens"
}
},
- "description": "Measurement of the amount of tokens used in this request and response.",
"required": [
"prompt_tokens",
"total_tokens"
]
- },
- "ServiceApiVersions": {
- "type": "string",
- "enum": [
- "2022-12-01",
- "2023-05-15",
- "2023-06-01-preview"
- ],
- "x-ms-enum": {
- "name": "ServiceApiVersions",
- "modelAsString": true,
- "values": [
- {
- "name": "v2022_12_01",
- "value": "2022-12-01"
- },
- {
- "name": "v2023_05_15",
- "value": "2023-05-15"
- },
- {
- "name": "v2023_06_01_Preview",
- "value": "2023-06-01-preview"
- }
- ]
- }
}
},
"parameters": {
"Azure.Core.Foundations.ApiVersionParameter": {
"name": "api-version",
"in": "query",
- "required": true,
"description": "The API version to use for this operation.",
- "x-ms-client-name": "apiVersion",
+ "required": true,
"type": "string",
"minLength": 1,
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
}
}
}
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 25eb53097331..b7c515db0245 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
@@ -45,8 +45,8 @@
"securityDefinitions": {
"ApiKeyAuth": {
"type": "apiKey",
- "in": "header",
- "name": "api-key"
+ "name": "api-key",
+ "in": "header"
},
"OAuth2Auth": {
"type": "oauth2",
@@ -70,17 +70,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/ChatCompletionsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -92,14 +92,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -121,17 +121,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/CompletionsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -143,14 +143,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -172,17 +172,17 @@
{
"name": "deploymentId",
"in": "path",
+ "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.",
"required": true,
- "description": "deployment id of the deployed model",
"type": "string"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/EmbeddingsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -194,14 +194,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -216,6 +216,7 @@
"definitions": {
"Azure.Core.Foundations.Error": {
"type": "object",
+ "description": "The error object.",
"properties": {
"code": {
"type": "string",
@@ -231,19 +232,17 @@
},
"details": {
"type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of details about specific errors that led to this reported error.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]"
+ "x-ms-identifiers": []
},
"innererror": {
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "An object containing more specific information than the current object about the error."
}
},
- "description": "The error object.",
"required": [
"code",
"message"
@@ -251,19 +250,20 @@
},
"Azure.Core.Foundations.ErrorResponse": {
"type": "object",
+ "description": "A response containing error details.",
"properties": {
"error": {
"$ref": "#/definitions/Azure.Core.Foundations.Error",
"description": "The error object."
}
},
- "description": "A response containing error details.",
"required": [
"error"
]
},
"Azure.Core.Foundations.InnerError": {
"type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
"properties": {
"code": {
"type": "string",
@@ -273,11 +273,11 @@
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "Inner error."
}
- },
- "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses."
+ }
},
"ChatChoice": {
"type": "object",
+ "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"properties": {
"message": {
"$ref": "#/definitions/ChatMessage",
@@ -289,8 +289,9 @@
"description": "The ordered index associated with this chat completions choice."
},
"finish_reason": {
- "x-typespec-name": "CompletionsFinishReason | null",
+ "$ref": "#/definitions/CompletionsFinishReason",
"description": "The reason that this chat completions choice completed its generated.",
+ "x-nullable": true,
"x-ms-client-name": "finishReason"
},
"delta": {
@@ -298,7 +299,6 @@
"description": "The delta message content for a streaming response."
}
},
- "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"required": [
"index",
"finish_reason"
@@ -306,6 +306,7 @@
},
"ChatCompletions": {
"type": "object",
+ "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"id": {
"type": "string",
@@ -313,24 +314,22 @@
},
"created": {
"type": "integer",
- "format": "int32",
+ "format": "unixtime",
"description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
},
"choices": {
"type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"items": {
"$ref": "#/definitions/ChatChoice"
},
- "x-ms-identifiers": [],
- "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "x-typespec-name": "ChatChoice[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/CompletionsUsage",
"description": "Usage information for tokens processed and generated as part of this completions operation."
}
},
- "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"id",
"created",
@@ -340,15 +339,15 @@
},
"ChatCompletionsOptions": {
"type": "object",
+ "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"messages": {
"type": "array",
+ "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.",
"items": {
"$ref": "#/definitions/ChatMessage"
},
- "x-ms-identifiers": [],
- "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.",
- "x-typespec-name": "ChatMessage[]"
+ "x-ms-identifiers": []
},
"max_tokens": {
"type": "integer",
@@ -369,12 +368,11 @@
},
"logit_bias": {
"type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
"additionalProperties": {
- "type": "integer",
- "format": "int32"
+ "format": "int32",
+ "type": "integer"
},
- "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
- "x-typespec-name": "Record",
"x-ms-client-name": "logitBias"
},
"user": {
@@ -388,11 +386,10 @@
},
"stop": {
"type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
"items": {
"type": "string"
- },
- "description": "A collection of textual sequences that will end completions generation.",
- "x-typespec-name": "string[]"
+ }
},
"presence_penalty": {
"type": "number",
@@ -415,13 +412,13 @@
"description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
}
},
- "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"messages"
]
},
"ChatMessage": {
"type": "object",
+ "description": "A single, role-attributed message within a chat completion interaction.",
"properties": {
"role": {
"$ref": "#/definitions/ChatRole",
@@ -429,12 +426,13 @@
},
"content": {
"type": "string",
- "description": "The text associated with this message payload."
+ "description": "The text associated with this message payload.",
+ "x-nullable": true
}
},
- "description": "A single, role-attributed message within a chat completion interaction.",
"required": [
- "role"
+ "role",
+ "content"
]
},
"ChatRole": {
@@ -469,6 +467,7 @@
},
"Choice": {
"type": "object",
+ "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"properties": {
"text": {
"type": "string",
@@ -481,22 +480,21 @@
},
"logprobs": {
"type": "object",
+ "description": "The log probabilities model for tokens associated with this completions choice.",
+ "x-nullable": true,
"allOf": [
{
"$ref": "#/definitions/CompletionsLogProbabilityModel"
}
- ],
- "x-nullable": true,
- "x-typespec-name": "CompletionsLogProbabilityModel | null",
- "description": "The log probabilities model for tokens associated with this completions choice."
+ ]
},
"finish_reason": {
- "x-typespec-name": "CompletionsFinishReason | null",
+ "$ref": "#/definitions/CompletionsFinishReason",
"description": "Reason for finishing",
+ "x-nullable": true,
"x-ms-client-name": "finishReason"
}
},
- "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"required": [
"text",
"index",
@@ -506,6 +504,7 @@
},
"Completions": {
"type": "object",
+ "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"id": {
"type": "string",
@@ -513,24 +512,22 @@
},
"created": {
"type": "integer",
- "format": "int32",
+ "format": "unixtime",
"description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970."
},
"choices": {
"type": "array",
+ "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
"items": {
"$ref": "#/definitions/Choice"
},
- "x-ms-identifiers": [],
- "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.",
- "x-typespec-name": "Choice[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/CompletionsUsage",
"description": "Usage information for tokens processed and generated as part of this completions operation."
}
},
- "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"id",
"created",
@@ -570,50 +567,44 @@
},
"CompletionsLogProbabilityModel": {
"type": "object",
+ "description": "Representation of a log probabilities model for a completions generation.",
"properties": {
"tokens": {
"type": "array",
+ "description": "The textual forms of tokens evaluated in this probability model.",
"items": {
"type": "string"
- },
- "description": "The textual forms of tokens evaluated in this probability model.",
- "x-typespec-name": "string[]"
+ }
},
"token_logprobs": {
"type": "array",
+ "description": "A collection of log probability values for the tokens in this completions data.",
"items": {
"type": "number",
"format": "float",
- "x-nullable": true,
- "x-typespec-name": "float32 | null"
+ "x-nullable": true
},
- "description": "A collection of log probability values for the tokens in this completions data.",
- "x-typespec-name": "float32 | null[]",
"x-ms-client-name": "tokenLogprobs"
},
"top_logprobs": {
"type": "array",
+ "description": "A mapping of tokens to maximum log probability values in this completions data.",
"items": {
- "type": "object",
- "x-typespec-name": "Record"
+ "type": "object"
},
- "x-ms-identifiers": [],
- "description": "A mapping of tokens to maximum log probability values in this completions data.",
- "x-typespec-name": "Record[]",
- "x-ms-client-name": "topLogprobs"
+ "x-ms-client-name": "topLogprobs",
+ "x-ms-identifiers": []
},
"text_offset": {
"type": "array",
+ "description": "The text offsets associated with tokens in this completions data.",
"items": {
"type": "integer",
"format": "int32"
},
- "description": "The text offsets associated with tokens in this completions data.",
- "x-typespec-name": "int32[]",
"x-ms-client-name": "textOffset"
}
},
- "description": "Representation of a log probabilities model for a completions generation.",
"required": [
"tokens",
"token_logprobs",
@@ -623,14 +614,14 @@
},
"CompletionsOptions": {
"type": "object",
+ "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"properties": {
"prompt": {
"type": "array",
+ "description": "The prompts to generate completions from.",
"items": {
"type": "string"
- },
- "description": "The prompts to generate completions from.",
- "x-typespec-name": "string[]"
+ }
},
"max_tokens": {
"type": "integer",
@@ -651,12 +642,11 @@
},
"logit_bias": {
"type": "object",
+ "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
"additionalProperties": {
- "type": "integer",
- "format": "int32"
+ "format": "int32",
+ "type": "integer"
},
- "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.",
- "x-typespec-name": "Record",
"x-ms-client-name": "logitBias"
},
"user": {
@@ -679,11 +669,10 @@
},
"stop": {
"type": "array",
+ "description": "A collection of textual sequences that will end completions generation.",
"items": {
"type": "string"
- },
- "description": "A collection of textual sequences that will end completions generation.",
- "x-typespec-name": "string[]"
+ }
},
"presence_penalty": {
"type": "number",
@@ -712,13 +701,13 @@
"description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to."
}
},
- "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.",
"required": [
"prompt"
]
},
"CompletionsUsage": {
"type": "object",
+ "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
"properties": {
"completion_tokens": {
"type": "integer",
@@ -739,38 +728,23 @@
"x-ms-client-name": "totalTokens"
}
},
- "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.",
"required": [
"completion_tokens",
"prompt_tokens",
"total_tokens"
]
},
- "Deployment": {
- "type": "object",
- "properties": {
- "deploymentId": {
- "type": "string",
- "description": "deployment id of the deployed model",
- "readOnly": true
- }
- },
- "description": "A specific deployment",
- "required": [
- "deploymentId"
- ]
- },
"EmbeddingItem": {
"type": "object",
+ "description": "Representation of a single embeddings relatedness comparison.",
"properties": {
"embedding": {
"type": "array",
+ "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
"items": {
"type": "number",
"format": "float"
- },
- "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.",
- "x-typespec-name": "float32[]"
+ }
},
"index": {
"type": "integer",
@@ -778,7 +752,6 @@
"description": "Index of the prompt to which the EmbeddingItem corresponds."
}
},
- "description": "Representation of a single embeddings relatedness comparison.",
"required": [
"embedding",
"index"
@@ -786,22 +759,21 @@
},
"Embeddings": {
"type": "object",
+ "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"properties": {
"data": {
"type": "array",
+ "description": "Embedding values for the prompts submitted in the request.",
"items": {
"$ref": "#/definitions/EmbeddingItem"
},
- "x-ms-identifiers": [],
- "description": "Embedding values for the prompts submitted in the request.",
- "x-typespec-name": "EmbeddingItem[]"
+ "x-ms-identifiers": []
},
"usage": {
"$ref": "#/definitions/EmbeddingsUsage",
"description": "Usage counts for tokens input using the embeddings API."
}
},
- "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"required": [
"data",
"usage"
@@ -809,6 +781,7 @@
},
"EmbeddingsOptions": {
"type": "object",
+ "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"properties": {
"user": {
"type": "string",
@@ -820,20 +793,19 @@
},
"input": {
"type": "array",
+ "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
"items": {
"type": "string"
- },
- "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.",
- "x-typespec-name": "string[]"
+ }
}
},
- "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.",
"required": [
"input"
]
},
"EmbeddingsUsage": {
"type": "object",
+ "description": "Measurement of the amount of tokens used in this request and response.",
"properties": {
"prompt_tokens": {
"type": "integer",
@@ -848,49 +820,22 @@
"x-ms-client-name": "totalTokens"
}
},
- "description": "Measurement of the amount of tokens used in this request and response.",
"required": [
"prompt_tokens",
"total_tokens"
]
- },
- "ServiceApiVersions": {
- "type": "string",
- "enum": [
- "2022-12-01",
- "2023-05-15",
- "2023-06-01-preview"
- ],
- "x-ms-enum": {
- "name": "ServiceApiVersions",
- "modelAsString": true,
- "values": [
- {
- "name": "v2022_12_01",
- "value": "2022-12-01"
- },
- {
- "name": "v2023_05_15",
- "value": "2023-05-15"
- },
- {
- "name": "v2023_06_01_Preview",
- "value": "2023-06-01-preview"
- }
- ]
- }
}
},
"parameters": {
"Azure.Core.Foundations.ApiVersionParameter": {
"name": "api-version",
"in": "query",
- "required": true,
"description": "The API version to use for this operation.",
- "x-ms-client-name": "apiVersion",
+ "required": true,
"type": "string",
"minLength": 1,
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
}
}
}
diff --git a/specification/cognitiveservices/data-plane/ContentSafety/preview/2023-04-30-preview/contentsafety.json b/specification/cognitiveservices/data-plane/ContentSafety/preview/2023-04-30-preview/contentsafety.json
index ab2a5ad3e99d..095e19424bb6 100644
--- a/specification/cognitiveservices/data-plane/ContentSafety/preview/2023-04-30-preview/contentsafety.json
+++ b/specification/cognitiveservices/data-plane/ContentSafety/preview/2023-04-30-preview/contentsafety.json
@@ -40,8 +40,8 @@
"securityDefinitions": {
"ApiKeyAuth": {
"type": "apiKey",
- "in": "header",
- "name": "Ocp-Apim-Subscription-Key"
+ "name": "Ocp-Apim-Subscription-Key",
+ "in": "header"
}
},
"tags": [],
@@ -58,8 +58,8 @@
{
"name": "body",
"in": "body",
- "required": true,
"description": "The analysis request of the image.",
+ "required": true,
"schema": {
"$ref": "#/definitions/AnalyzeImageOptions"
}
@@ -74,14 +74,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -106,51 +106,29 @@
"200": {
"description": "The request has succeeded.",
"schema": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/TextBlocklist"
- },
- "x-ms-identifiers": [],
- "description": "The TextBlocklist items on this page",
- "x-typespec-name": "TextBlocklist[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "Paged collection of TextBlocklist items",
- "required": [
- "value"
- ],
- "x-typespec-name": "Azure.Core.Foundations.CustomPage"
+ "$ref": "#/definitions/PagedTextBlocklist"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Get All Text Blocklists": {
"$ref": "./examples/ListTextBlocklists.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
@@ -166,11 +144,11 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
}
],
"responses": {
@@ -182,14 +160,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -203,6 +181,9 @@
"operationId": "TextBlocklists_CreateOrUpdateTextBlocklist",
"summary": "Create Or Update Text Blocklist",
"description": "Updates a text blocklist, if blocklistName does not exist, create a new blocklist.",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -210,17 +191,17 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "The resource instance.",
+ "required": true,
"schema": {
"$ref": "#/definitions/TextBlocklistUpdate"
}
@@ -241,20 +222,17 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/merge-patch+json"
- ],
"x-ms-examples": {
"Create Or Update Text Blocklist": {
"$ref": "./examples/CreateOrUpdateTextBlocklist.json"
@@ -272,11 +250,11 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
}
],
"responses": {
@@ -285,14 +263,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -315,19 +293,19 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/AddBlockItemsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -339,14 +317,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -369,19 +347,19 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
},
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/RemoveBlockItemsOptions"
- },
- "required": true
+ }
}
],
"responses": {
@@ -390,14 +368,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -420,11 +398,11 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
},
{
"$ref": "#/parameters/Azure.Core.TopQueryParameter"
@@ -440,51 +418,29 @@
"200": {
"description": "The request has succeeded.",
"schema": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/TextBlockItem"
- },
- "x-ms-identifiers": [],
- "description": "The TextBlockItem items on this page",
- "x-typespec-name": "TextBlockItem[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "Paged collection of TextBlockItem items",
- "required": [
- "value"
- ],
- "x-typespec-name": "Azure.Core.Foundations.CustomPage"
+ "$ref": "#/definitions/PagedTextBlockItem"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Get All BlockItems By blocklistName": {
"$ref": "./examples/ListTextBlocklistItems.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
@@ -500,17 +456,17 @@
{
"name": "blocklistName",
"in": "path",
- "required": true,
"description": "Text blocklist name.",
+ "required": true,
"type": "string",
- "pattern": "^[0-9A-Za-z._~-]+$",
- "maxLength": 64
+ "maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$"
},
{
"name": "blockItemId",
"in": "path",
- "required": true,
"description": "Block Item Id. It will be uuid.",
+ "required": true,
"type": "string",
"maxLength": 64
}
@@ -524,14 +480,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -554,8 +510,8 @@
{
"name": "body",
"in": "body",
- "required": true,
"description": "The request of text analysis.",
+ "required": true,
"schema": {
"$ref": "#/definitions/AnalyzeTextOptions"
}
@@ -570,14 +526,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -592,39 +548,38 @@
"definitions": {
"AddBlockItemsOptions": {
"type": "object",
+ "description": "The request of adding blockItems to text blocklist.",
"properties": {
"blockItems": {
"type": "array",
+ "description": "Array of blockItemInfo to add.",
"items": {
"$ref": "#/definitions/TextBlockItemInfo"
},
- "x-ms-identifiers": [],
- "description": "Array of blockItemInfo to add.",
- "x-typespec-name": "TextBlockItemInfo[]"
+ "x-ms-identifiers": []
}
},
- "description": "The request of adding blockItems to text blocklist.",
"required": [
"blockItems"
]
},
"AddBlockItemsResult": {
"type": "object",
+ "description": "The response of adding blockItems to text blocklist.",
"properties": {
"value": {
"type": "array",
+ "description": "Array of blockItems added.",
"items": {
"$ref": "#/definitions/TextBlockItem"
},
- "x-ms-identifiers": [],
- "description": "Array of blockItems added.",
- "x-typespec-name": "TextBlockItem[]"
+ "x-ms-identifiers": []
}
- },
- "description": "The response of adding blockItems to text blocklist."
+ }
},
"AnalyzeImageOptions": {
"type": "object",
+ "description": "The analysis request of the image.",
"properties": {
"image": {
"$ref": "#/definitions/ImageData",
@@ -632,20 +587,19 @@
},
"categories": {
"type": "array",
+ "description": "The categories will be analyzed. If not assigned, a default set of the categories' analysis results will be returned.",
"items": {
"$ref": "#/definitions/ImageCategory"
- },
- "description": "The categories will be analyzed. If not assigned, a default set of the categories' analysis results will be returned.",
- "x-typespec-name": "ImageCategory[]"
+ }
}
},
- "description": "The analysis request of the image.",
"required": [
"image"
]
},
"AnalyzeImageResult": {
"type": "object",
+ "description": "The analysis response of the image.",
"properties": {
"hateResult": {
"$ref": "#/definitions/ImageAnalyzeSeverityResult",
@@ -663,11 +617,11 @@
"$ref": "#/definitions/ImageAnalyzeSeverityResult",
"description": "Analysis result for Violence category."
}
- },
- "description": "The analysis response of the image."
+ }
},
"AnalyzeTextOptions": {
"type": "object",
+ "description": "The analysis request of the text.",
"properties": {
"text": {
"type": "string",
@@ -676,41 +630,38 @@
},
"categories": {
"type": "array",
+ "description": "The categories will be analyzed. If not assigned, a default set of the categories' analysis results will be returned.",
"items": {
"$ref": "#/definitions/TextCategory"
- },
- "description": "The categories will be analyzed. If not assigned, a default set of the categories' analysis results will be returned.",
- "x-typespec-name": "TextCategory[]"
+ }
},
"blocklistNames": {
"type": "array",
+ "description": "The names of blocklists.",
"items": {
"type": "string"
- },
- "description": "The names of blocklists.",
- "x-typespec-name": "string[]"
+ }
},
"breakByBlocklists": {
"type": "boolean",
"description": "When set to true, further analyses of harmful content will not be performed in cases where blocklists are hit. When set to false, all analyses of harmful content will be performed, whether or not blocklists are hit."
}
},
- "description": "The analysis request of the text.",
"required": [
"text"
]
},
"AnalyzeTextResult": {
"type": "object",
+ "description": "The analysis response of the text",
"properties": {
"blocklistsMatchResults": {
"type": "array",
+ "description": "The details of blocklist match.",
"items": {
"$ref": "#/definitions/TextBlocklistMatchResult"
},
- "x-ms-identifiers": [],
- "description": "The details of blocklist match.",
- "x-typespec-name": "TextBlocklistMatchResult[]"
+ "x-ms-identifiers": []
},
"hateResult": {
"$ref": "#/definitions/TextAnalyzeSeverityResult",
@@ -728,11 +679,11 @@
"$ref": "#/definitions/TextAnalyzeSeverityResult",
"description": "Analysis result for Violence category."
}
- },
- "description": "The analysis response of the text"
+ }
},
"Azure.Core.Foundations.Error": {
"type": "object",
+ "description": "The error object.",
"properties": {
"code": {
"type": "string",
@@ -748,19 +699,17 @@
},
"details": {
"type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of details about specific errors that led to this reported error.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]"
+ "x-ms-identifiers": []
},
"innererror": {
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "An object containing more specific information than the current object about the error."
}
},
- "description": "The error object.",
"required": [
"code",
"message"
@@ -768,19 +717,20 @@
},
"Azure.Core.Foundations.ErrorResponse": {
"type": "object",
+ "description": "A response containing error details.",
"properties": {
"error": {
"$ref": "#/definitions/Azure.Core.Foundations.Error",
"description": "The error object."
}
},
- "description": "A response containing error details.",
"required": [
"error"
]
},
"Azure.Core.Foundations.InnerError": {
"type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
"properties": {
"code": {
"type": "string",
@@ -790,11 +740,11 @@
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "Inner error."
}
- },
- "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses."
+ }
},
"ImageAnalyzeSeverityResult": {
"type": "object",
+ "description": "Image analysis result.",
"properties": {
"category": {
"$ref": "#/definitions/ImageCategory",
@@ -806,7 +756,6 @@
"description": "The higher the severity of input content, the larger this value, currently its value could be: 0,2,4,6."
}
},
- "description": "Image analysis result.",
"required": [
"category",
"severity"
@@ -828,6 +777,7 @@
},
"ImageData": {
"type": "object",
+ "description": "The content or blob url of image, could be base64 encoding bytes or blob url. If both are given, the request will be refused. The maximum size of image is 2048 pixels * 2048 pixels, no larger than 4MB at the same time. The minimum size of image is 50 pixels * 50 pixels.",
"properties": {
"content": {
"type": "string",
@@ -839,28 +789,71 @@
"format": "uri",
"description": "The blob url of image."
}
+ }
+ },
+ "PagedTextBlockItem": {
+ "type": "object",
+ "description": "Paged collection of TextBlockItem items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The TextBlockItem items on this page",
+ "items": {
+ "$ref": "#/definitions/TextBlockItem"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
},
- "description": "The content or blob url of image, could be base64 encoding bytes or blob url. If both are given, the request will be refused. The maximum size of image is 2048 pixels * 2048 pixels, no larger than 4MB at the same time. The minimum size of image is 50 pixels * 50 pixels."
+ "required": [
+ "value"
+ ]
+ },
+ "PagedTextBlocklist": {
+ "type": "object",
+ "description": "Paged collection of TextBlocklist items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The TextBlocklist items on this page",
+ "items": {
+ "$ref": "#/definitions/TextBlocklist"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
},
"RemoveBlockItemsOptions": {
"type": "object",
+ "description": "The request of removing blockItems from text blocklist.",
"properties": {
"blockItemIds": {
"type": "array",
+ "description": "Array of blockItemIds to remove.",
"items": {
"type": "string"
- },
- "description": "Array of blockItemIds to remove.",
- "x-typespec-name": "string[]"
+ }
}
},
- "description": "The request of removing blockItems from text blocklist.",
"required": [
"blockItemIds"
]
},
"TextAnalyzeSeverityResult": {
"type": "object",
+ "description": "Text analysis result.",
"properties": {
"category": {
"$ref": "#/definitions/TextCategory",
@@ -872,7 +865,6 @@
"description": "The higher the severity of input content, the larger this value is. The values could be: 0,2,4,6."
}
},
- "description": "Text analysis result.",
"required": [
"category",
"severity"
@@ -880,6 +872,7 @@
},
"TextBlockItem": {
"type": "object",
+ "description": "Item in TextBlocklist.",
"properties": {
"blockItemId": {
"type": "string",
@@ -901,7 +894,6 @@
"maxLength": 128
}
},
- "description": "Item in TextBlocklist.",
"required": [
"blockItemId",
"text"
@@ -909,6 +901,7 @@
},
"TextBlockItemInfo": {
"type": "object",
+ "description": "Block item info in text blocklist.",
"properties": {
"description": {
"type": "string",
@@ -921,19 +914,19 @@
"maxLength": 128
}
},
- "description": "Block item info in text blocklist.",
"required": [
"text"
]
},
"TextBlocklist": {
"type": "object",
+ "description": "Text Blocklist.",
"properties": {
"blocklistName": {
"type": "string",
"description": "Text blocklist name.",
- "pattern": "^[0-9A-Za-z._~-]+$",
"maxLength": 64,
+ "pattern": "^[0-9A-Za-z._~-]+$",
"x-ms-mutability": [
"read",
"create"
@@ -945,13 +938,13 @@
"maxLength": 1024
}
},
- "description": "Text Blocklist.",
"required": [
"blocklistName"
]
},
"TextBlocklistMatchResult": {
"type": "object",
+ "description": "The result of blocklist match.",
"properties": {
"blocklistName": {
"type": "string",
@@ -979,7 +972,6 @@
"description": "The length of matched text in original input."
}
},
- "description": "The result of blocklist match.",
"required": [
"blocklistName",
"blockItemId",
@@ -990,14 +982,14 @@
},
"TextBlocklistUpdate": {
"type": "object",
+ "description": "Text Blocklist.",
"properties": {
"description": {
"type": "string",
"description": "Text blocklist description.",
"maxLength": 1024
}
- },
- "description": "Text Blocklist."
+ }
},
"TextCategory": {
"type": "string",
@@ -1034,18 +1026,18 @@
"Azure.Core.Foundations.ApiVersionParameter": {
"name": "api-version",
"in": "query",
- "required": true,
"description": "The API version to use for this operation.",
- "x-ms-client-name": "apiVersion",
+ "required": true,
"type": "string",
"minLength": 1,
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
},
"Azure.Core.MaxPageSizeQueryParameter": {
"name": "maxpagesize",
"in": "query",
- "required": false,
"description": "The maximum number of result items per page.",
+ "required": false,
"type": "integer",
"format": "int32",
"x-ms-parameter-location": "method"
@@ -1053,18 +1045,18 @@
"Azure.Core.SkipQueryParameter": {
"name": "skip",
"in": "query",
- "required": false,
"description": "The number of result items to skip.",
- "default": 0,
+ "required": false,
"type": "integer",
"format": "int32",
+ "default": 0,
"x-ms-parameter-location": "method"
},
"Azure.Core.TopQueryParameter": {
"name": "top",
"in": "query",
- "required": false,
"description": "The number of result items to return.",
+ "required": false,
"type": "integer",
"format": "int32",
"x-ms-parameter-location": "method"
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Base64.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Base64.json
index 767c811a9196..2b2cc418be00 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Base64.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Base64.json
@@ -1,20 +1,20 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "prebuilt-layout",
- "pages": "1-2,4",
- "locale": "en-US",
- "stringIndexType": "textElements",
- "analyzeRequest": {
- "base64Source": "e2Jhc2U2NEVuY29kZWRQZGZ9"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/prebuilt-layout/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "prebuilt-layout",
+ "pages": "1-2,4",
+ "locale": "en-US",
+ "stringIndexType": "textElements",
+ "analyzeRequest": {
+ "base64Source": "e2Jhc2U2NEVuY29kZWRQZGZ9"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/prebuilt-layout/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Url.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Url.json
index f229104f6e0a..563084e9fa14 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Url.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AnalyzeDocument_Url.json
@@ -1,20 +1,20 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "customModel",
- "pages": "1-2,4",
- "locale": "en-US",
- "stringIndexType": "textElements",
- "analyzeRequest": {
- "urlSource": "http://host.com/doc.pdf"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "customModel",
+ "pages": "1-2,4",
+ "locale": "en-US",
+ "stringIndexType": "textElements",
+ "analyzeRequest": {
+ "urlSource": "http://host.com/doc.pdf"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AuthorizeCopyDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AuthorizeCopyDocumentModel.json
index 55a167b4e421..5390dde580f7 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AuthorizeCopyDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/AuthorizeCopyDocumentModel.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "authorizeCopyRequest": {
- "modelId": "targetModel",
- "description": "Target model description"
- }
- },
- "responses": {
- "200": {
- "body": {
- "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
- "targetResourceRegion": "targetResourceRegion",
- "targetModelId": "targetModel",
- "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/formrecognizer/documentModels/targetModel",
- "accessToken": "accessToken",
- "expirationDateTime": "2021-09-23T09:12:54.552Z"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "authorizeCopyRequest": {
+ "modelId": "targetModel",
+ "description": "Target model description"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
+ "targetResourceRegion": "targetResourceRegion",
+ "targetModelId": "targetModel",
+ "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/formrecognizer/documentModels/targetModel",
+ "accessToken": "accessToken",
+ "expirationDateTime": "2021-09-23T09:12:54.552Z"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentClassifier.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentClassifier.json
index 1ee49fab5741..067008727232 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentClassifier.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentClassifier.json
@@ -1,31 +1,31 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "buildRequest": {
- "classifierId": "myClassifier",
- "description": "Classifier description",
- "docTypes": {
- "formA": {
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "formADocs/"
- }
- },
- "formB": {
- "azureBlobFileListSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "fileList": "formB.jsonl"
- }
- }
- }
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "buildRequest": {
+ "classifierId": "myClassifier",
+ "description": "Classifier description",
+ "docTypes": {
+ "formA": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formADocs/"
+ }
+ },
+ "formB": {
+ "azureBlobFileListSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "fileList": "formB.jsonl"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentModel.json
index 289b166de83f..52a3c597c329 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/BuildDocumentModel.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "buildRequest": {
- "modelId": "myCustomModel",
- "description": "Custom model description",
- "buildMode": "template",
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "trainingDocs/"
- },
- "tags": {
- "createdBy": "myUserId"
- }
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "buildRequest": {
+ "modelId": "myCustomModel",
+ "description": "Custom model description",
+ "buildMode": "template",
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "trainingDocs/"
+ },
+ "tags": {
+ "createdBy": "myUserId"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ClassifyDocument_Url.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ClassifyDocument_Url.json
index e03f1ff883e1..e792a67f9b8d 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ClassifyDocument_Url.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ClassifyDocument_Url.json
@@ -1,18 +1,18 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "classifierId": "classifierId",
- "stringIndexType": "textElements",
- "classifyRequest": {
- "urlSource": "http://host.com/doc.pdf"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "classifierId": "classifierId",
+ "stringIndexType": "textElements",
+ "classifyRequest": {
+ "urlSource": "http://host.com/doc.pdf"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ComposeDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ComposeDocumentModel.json
index 03d8b4f0bf8d..8341f5f1034b 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ComposeDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/ComposeDocumentModel.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "composeRequest": {
- "modelId": "composedModel",
- "description": "Composed model description",
- "componentModels": [
- {
- "modelId": "model1"
- },
- {
- "modelId": "model2"
- }
- ]
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "composeRequest": {
+ "modelId": "composedModel",
+ "description": "Composed model description",
+ "componentModels": [
+ {
+ "modelId": "model1"
+ },
+ {
+ "modelId": "model2"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/CopyDocumentModelTo.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/CopyDocumentModelTo.json
index eaa0ccde6bf3..15f9e6c4dad8 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/CopyDocumentModelTo.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/CopyDocumentModelTo.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "sourceModel",
- "copyToRequest": {
- "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
- "targetResourceRegion": "targetResourceRegion",
- "targetModelId": "targetModel",
- "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/formrecognizer/documentModels/targetModel",
- "accessToken": "accessToken",
- "expirationDateTime": "2021-09-23T09:12:54.552Z"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "sourceModel",
+ "copyToRequest": {
+ "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
+ "targetResourceRegion": "targetResourceRegion",
+ "targetModelId": "targetModel",
+ "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/formrecognizer/documentModels/targetModel",
+ "accessToken": "accessToken",
+ "expirationDateTime": "2021-09-23T09:12:54.552Z"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-02-28-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentClassifier.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentClassifier.json
index 2a3a7d2d590a..128345a20baa 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentClassifier.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentClassifier.json
@@ -1,10 +1,10 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "classifierId": "myClassifier"
- },
- "responses": {
- "204": {}
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "classifierId": "myClassifier"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentModel.json
index df413840998c..44dfe36432f9 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/DeleteDocumentModel.json
@@ -1,10 +1,10 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "myCustomModel"
- },
- "responses": {
- "204": {}
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "myCustomModel"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetAnalyzeDocumentResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetAnalyzeDocumentResult.json
index d2cf9f9aab67..26f213cf392f 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetAnalyzeDocumentResult.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetAnalyzeDocumentResult.json
@@ -1,7220 +1,7220 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "prebuilt-invoice",
- "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034"
- },
- "responses": {
- "200": {
- "body": {
- "status": "succeeded",
- "createdDateTime": "2021-09-24T13:00:46Z",
- "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
- "analyzeResult": {
- "apiVersion": "2023-02-28-preview",
- "modelId": "prebuilt-invoice",
- "stringIndexType": "textElements",
- "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:",
- "pages": [
- {
- "kind": "document",
- "pageNumber": 1,
- "angle": 0,
- "width": 8.5,
- "height": 11,
- "unit": "inch",
- "words": [
- {
- "content": "CONTOSO",
- "polygon": [
- 0.5911,
- 0.6857,
- 1.7451,
- 0.6857,
- 1.7451,
- 0.8664,
- 0.5911,
- 0.8664
- ],
- "confidence": 1,
- "span": {
- "offset": 0,
- "length": 7
- }
- },
- {
- "content": "LTD.",
- "polygon": [
- 1.8441,
- 0.6879,
- 2.3181,
- 0.6879,
- 2.3181,
- 0.865,
- 1.8441,
- 0.865
- ],
- "confidence": 1,
- "span": {
- "offset": 8,
- "length": 4
- }
- },
- {
- "content": "INVOICE",
- "polygon": [
- 7.0751,
- 0.589,
- 7.9886,
- 0.589,
- 7.9886,
- 0.7697,
- 7.0751,
- 0.7697
- ],
- "confidence": 1,
- "span": {
- "offset": 13,
- "length": 7
- }
- },
- {
- "content": "Contoso",
- "polygon": [
- 0.5882,
- 1.4303,
- 1.1337,
- 1.4303,
- 1.1337,
- 1.5383,
- 0.5882,
- 1.5383
- ],
- "confidence": 1,
- "span": {
- "offset": 21,
- "length": 7
- }
- },
- {
- "content": "Headquarters",
- "polygon": [
- 1.1905,
- 1.4239,
- 2.0978,
- 1.4239,
- 2.0978,
- 1.5664,
- 1.1905,
- 1.5664
- ],
- "confidence": 1,
- "span": {
- "offset": 29,
- "length": 12
- }
- },
- {
- "content": "INVOICE:",
- "polygon": [
- 6.8599,
- 1.4217,
- 7.4328,
- 1.4217,
- 7.4328,
- 1.5218,
- 6.8599,
- 1.5218
- ],
- "confidence": 1,
- "span": {
- "offset": 42,
- "length": 8
- }
- },
- {
- "content": "INV-100",
- "polygon": [
- 7.4959,
- 1.422,
- 7.9988,
- 1.422,
- 7.9988,
- 1.5215,
- 7.4959,
- 1.5215
- ],
- "confidence": 1,
- "span": {
- "offset": 51,
- "length": 7
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 1.6339,
- 0.8213,
- 1.6339,
- 0.8213,
- 1.742,
- 0.5945,
- 1.742
- ],
- "confidence": 1,
- "span": {
- "offset": 59,
- "length": 3
- }
- },
- {
- "content": "456th",
- "polygon": [
- 0.874,
- 1.6092,
- 1.2102,
- 1.6092,
- 1.2102,
- 1.742,
- 0.874,
- 1.742
- ],
- "confidence": 1,
- "span": {
- "offset": 63,
- "length": 5
- }
- },
- {
- "content": "St",
- "polygon": [
- 1.2598,
- 1.6339,
- 1.3812,
- 1.6339,
- 1.3812,
- 1.742,
- 1.2598,
- 1.742
- ],
- "confidence": 1,
- "span": {
- "offset": 69,
- "length": 2
- }
- },
- {
- "content": "INVOICE",
- "polygon": [
- 6.2263,
- 1.6254,
- 6.7562,
- 1.6254,
- 6.7562,
- 1.7256,
- 6.2263,
- 1.7256
- ],
- "confidence": 1,
- "span": {
- "offset": 72,
- "length": 7
- }
- },
- {
- "content": "DATE:",
- "polygon": [
- 6.8132,
- 1.6267,
- 7.1891,
- 1.6267,
- 7.1891,
- 1.7248,
- 6.8132,
- 1.7248
- ],
- "confidence": 1,
- "span": {
- "offset": 80,
- "length": 5
- }
- },
- {
- "content": "11/15/2019",
- "polygon": [
- 7.2528,
- 1.6139,
- 7.993,
- 1.6139,
- 7.993,
- 1.7449,
- 7.2528,
- 1.7449
- ],
- "confidence": 1,
- "span": {
- "offset": 86,
- "length": 10
- }
- },
- {
- "content": "New",
- "polygon": [
- 0.5943,
- 1.8385,
- 0.8848,
- 1.8385,
- 0.8848,
- 1.9454,
- 0.5943,
- 1.9454
- ],
- "confidence": 1,
- "span": {
- "offset": 97,
- "length": 3
- }
- },
- {
- "content": "York,",
- "polygon": [
- 0.9293,
- 1.8307,
- 1.2568,
- 1.8307,
- 1.2568,
- 1.9675,
- 0.9293,
- 1.9675
- ],
- "confidence": 1,
- "span": {
- "offset": 101,
- "length": 5
- }
- },
- {
- "content": "NY,",
- "polygon": [
- 1.3205,
- 1.8382,
- 1.5242,
- 1.8382,
- 1.5242,
- 1.9675,
- 1.3205,
- 1.9675
- ],
- "confidence": 1,
- "span": {
- "offset": 107,
- "length": 3
- }
- },
- {
- "content": "10001",
- "polygon": [
- 1.5915,
- 1.8372,
- 1.9894,
- 1.8372,
- 1.9894,
- 1.9454,
- 1.5915,
- 1.9454
- ],
- "confidence": 1,
- "span": {
- "offset": 111,
- "length": 5
- }
- },
- {
- "content": "DUE",
- "polygon": [
- 6.4966,
- 1.8333,
- 6.7569,
- 1.8333,
- 6.7569,
- 1.9322,
- 6.4966,
- 1.9322
- ],
- "confidence": 1,
- "span": {
- "offset": 117,
- "length": 3
- }
- },
- {
- "content": "DATE:",
- "polygon": [
- 6.8126,
- 1.8333,
- 7.1846,
- 1.8333,
- 7.1846,
- 1.9315,
- 6.8126,
- 1.9315
- ],
- "confidence": 1,
- "span": {
- "offset": 121,
- "length": 5
- }
- },
- {
- "content": "12/15/2019",
- "polygon": [
- 7.2494,
- 1.8206,
- 7.993,
- 1.8206,
- 7.993,
- 1.9515,
- 7.2494,
- 1.9515
- ],
- "confidence": 1,
- "span": {
- "offset": 127,
- "length": 10
- }
- },
- {
- "content": "CUSTOMER",
- "polygon": [
- 4.9513,
- 2.0388,
- 5.6868,
- 2.0388,
- 5.6868,
- 2.1389,
- 4.9513,
- 2.1389
- ],
- "confidence": 1,
- "span": {
- "offset": 138,
- "length": 8
- }
- },
- {
- "content": "NAME:",
- "polygon": [
- 5.7412,
- 2.04,
- 6.1764,
- 2.04,
- 6.1764,
- 2.1381,
- 5.7412,
- 2.1381
- ],
- "confidence": 1,
- "span": {
- "offset": 147,
- "length": 5
- }
- },
- {
- "content": "MICROSOFT",
- "polygon": [
- 6.2419,
- 2.0391,
- 6.9981,
- 2.0391,
- 6.9981,
- 2.1386,
- 6.2419,
- 2.1386
- ],
- "confidence": 1,
- "span": {
- "offset": 153,
- "length": 9
- }
- },
- {
- "content": "CORPORATION",
- "polygon": [
- 7.0448,
- 2.0391,
- 7.9825,
- 2.0391,
- 7.9825,
- 2.1386,
- 7.0448,
- 2.1386
- ],
- "confidence": 1,
- "span": {
- "offset": 163,
- "length": 11
- }
- },
- {
- "content": "SERVICE",
- "polygon": [
- 5.1667,
- 2.2421,
- 5.6923,
- 2.2421,
- 5.6923,
- 2.3422,
- 5.1667,
- 2.3422
- ],
- "confidence": 1,
- "span": {
- "offset": 175,
- "length": 7
- }
- },
- {
- "content": "PERIOD:",
- "polygon": [
- 5.748,
- 2.2421,
- 6.2721,
- 2.2421,
- 6.2721,
- 2.3422,
- 5.748,
- 2.3422
- ],
- "confidence": 1,
- "span": {
- "offset": 183,
- "length": 7
- }
- },
- {
- "content": "10/14/2019",
- "polygon": [
- 6.3357,
- 2.2306,
- 7.0749,
- 2.2306,
- 7.0749,
- 2.3615,
- 6.3357,
- 2.3615
- ],
- "confidence": 1,
- "span": {
- "offset": 191,
- "length": 10
- }
- },
- {
- "content": "–",
- "polygon": [
- 7.122,
- 2.2922,
- 7.1995,
- 2.2922,
- 7.1995,
- 2.3037,
- 7.122,
- 2.3037
- ],
- "confidence": 1,
- "span": {
- "offset": 202,
- "length": 1
- }
- },
- {
- "content": "11/14/2019",
- "polygon": [
- 7.2528,
- 2.2306,
- 7.9952,
- 2.2306,
- 7.9952,
- 2.3615,
- 7.2528,
- 2.3615
- ],
- "confidence": 1,
- "span": {
- "offset": 204,
- "length": 10
- }
- },
- {
- "content": "CUSTOMER",
- "polygon": [
- 6.3253,
- 2.4488,
- 7.0608,
- 2.4488,
- 7.0608,
- 2.5489,
- 6.3253,
- 2.5489
- ],
- "confidence": 1,
- "span": {
- "offset": 215,
- "length": 8
- }
- },
- {
- "content": "ID:",
- "polygon": [
- 7.1153,
- 2.45,
- 7.2809,
- 2.45,
- 7.2809,
- 2.5481,
- 7.1153,
- 2.5481
- ],
- "confidence": 1,
- "span": {
- "offset": 224,
- "length": 3
- }
- },
- {
- "content": "CID-12345",
- "polygon": [
- 7.3369,
- 2.4491,
- 7.9951,
- 2.4491,
- 7.9951,
- 2.5486,
- 7.3369,
- 2.5486
- ],
- "confidence": 1,
- "span": {
- "offset": 228,
- "length": 9
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 0.5943,
- 2.6436,
- 1.2303,
- 2.6436,
- 1.2303,
- 2.759,
- 0.5943,
- 2.759
- ],
- "confidence": 1,
- "span": {
- "offset": 238,
- "length": 9
- }
- },
- {
- "content": "Corp",
- "polygon": [
- 1.2808,
- 2.651,
- 1.586,
- 2.651,
- 1.586,
- 2.7871,
- 1.2808,
- 2.7871
- ],
- "confidence": 1,
- "span": {
- "offset": 248,
- "length": 4
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 2.8541,
- 0.8213,
- 2.8541,
- 0.8213,
- 2.9623,
- 0.5945,
- 2.9623
- ],
- "confidence": 1,
- "span": {
- "offset": 253,
- "length": 3
- }
- },
- {
- "content": "Other",
- "polygon": [
- 0.875,
- 2.8476,
- 1.262,
- 2.8476,
- 1.262,
- 2.9623,
- 0.875,
- 2.9623
- ],
- "confidence": 1,
- "span": {
- "offset": 257,
- "length": 5
- }
- },
- {
- "content": "St,",
- "polygon": [
- 1.3058,
- 2.8541,
- 1.4633,
- 2.8541,
- 1.4633,
- 2.9845,
- 1.3058,
- 2.9845
- ],
- "confidence": 1,
- "span": {
- "offset": 263,
- "length": 3
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 0.5943,
- 3.0513,
- 1.2222,
- 3.0513,
- 1.2222,
- 3.1656,
- 0.5943,
- 3.1656
- ],
- "confidence": 1,
- "span": {
- "offset": 267,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 1.2753,
- 3.0585,
- 1.5468,
- 3.0585,
- 1.5468,
- 3.1878,
- 1.2753,
- 3.1878
- ],
- "confidence": 1,
- "span": {
- "offset": 275,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 1.6033,
- 3.0575,
- 2.0083,
- 3.0575,
- 2.0083,
- 3.1656,
- 1.6033,
- 3.1656
- ],
- "confidence": 1,
- "span": {
- "offset": 279,
- "length": 5
- }
- },
- {
- "content": "BILL",
- "polygon": [
- 0.5909,
- 3.5603,
- 0.8438,
- 3.5603,
- 0.8438,
- 3.6579,
- 0.5909,
- 3.6579
- ],
- "confidence": 1,
- "span": {
- "offset": 285,
- "length": 4
- }
- },
- {
- "content": "TO:",
- "polygon": [
- 0.8846,
- 3.559,
- 1.1032,
- 3.559,
- 1.1032,
- 3.6592,
- 0.8846,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 290,
- "length": 3
- }
- },
- {
- "content": "SHIP",
- "polygon": [
- 3.3361,
- 3.559,
- 3.6278,
- 3.559,
- 3.6278,
- 3.6592,
- 3.3361,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 294,
- "length": 4
- }
- },
- {
- "content": "TO:",
- "polygon": [
- 3.6716,
- 3.559,
- 3.8903,
- 3.559,
- 3.8903,
- 3.6592,
- 3.6716,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 299,
- "length": 3
- }
- },
- {
- "content": "SERVICE",
- "polygon": [
- 6.2104,
- 3.559,
- 6.7361,
- 3.559,
- 6.7361,
- 3.6592,
- 6.2104,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 303,
- "length": 7
- }
- },
- {
- "content": "ADDRESS:",
- "polygon": [
- 6.7828,
- 3.559,
- 7.4232,
- 3.559,
- 7.4232,
- 3.6592,
- 6.7828,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 311,
- "length": 8
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 0.5943,
- 3.7641,
- 1.2303,
- 3.7641,
- 1.2303,
- 3.8794,
- 0.5943,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 320,
- "length": 9
- }
- },
- {
- "content": "Finance",
- "polygon": [
- 1.287,
- 3.7701,
- 1.7878,
- 3.7701,
- 1.7878,
- 3.8794,
- 1.287,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 330,
- "length": 7
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 3.3454,
- 3.7641,
- 3.9814,
- 3.7641,
- 3.9814,
- 3.8794,
- 3.3454,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 338,
- "length": 9
- }
- },
- {
- "content": "Delivery",
- "polygon": [
- 4.0381,
- 3.7647,
- 4.5762,
- 3.7647,
- 4.5762,
- 3.9076,
- 4.0381,
- 3.9076
- ],
- "confidence": 1,
- "span": {
- "offset": 348,
- "length": 8
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 6.2197,
- 3.7641,
- 6.8557,
- 3.7641,
- 6.8557,
- 3.8794,
- 6.2197,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 357,
- "length": 9
- }
- },
- {
- "content": "Services",
- "polygon": [
- 6.9042,
- 3.7701,
- 7.4427,
- 3.7701,
- 7.4427,
- 3.8794,
- 6.9042,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 367,
- "length": 8
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 3.9746,
- 0.8213,
- 3.9746,
- 0.8213,
- 4.0827,
- 0.5945,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 376,
- "length": 3
- }
- },
- {
- "content": "Bill",
- "polygon": [
- 0.8842,
- 3.9681,
- 1.0657,
- 3.9681,
- 1.0657,
- 4.0817,
- 0.8842,
- 4.0817
- ],
- "confidence": 1,
- "span": {
- "offset": 380,
- "length": 4
- }
- },
- {
- "content": "St,",
- "polygon": [
- 1.1222,
- 3.9746,
- 1.2765,
- 3.9746,
- 1.2765,
- 4.1049,
- 1.1222,
- 4.1049
- ],
- "confidence": 1,
- "span": {
- "offset": 385,
- "length": 3
- }
- },
- {
- "content": "123",
- "polygon": [
- 3.3456,
- 3.9746,
- 3.5724,
- 3.9746,
- 3.5724,
- 4.0827,
- 3.3456,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 389,
- "length": 3
- }
- },
- {
- "content": "Ship",
- "polygon": [
- 3.6239,
- 3.9681,
- 3.9042,
- 3.9681,
- 3.9042,
- 4.1109,
- 3.6239,
- 4.1109
- ],
- "confidence": 1,
- "span": {
- "offset": 393,
- "length": 4
- }
- },
- {
- "content": "St,",
- "polygon": [
- 3.9536,
- 3.9746,
- 4.1111,
- 3.9746,
- 4.1111,
- 4.1049,
- 3.9536,
- 4.1049
- ],
- "confidence": 1,
- "span": {
- "offset": 398,
- "length": 3
- }
- },
- {
- "content": "123",
- "polygon": [
- 6.2199,
- 3.9746,
- 6.4467,
- 3.9746,
- 6.4467,
- 4.0827,
- 6.2199,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 402,
- "length": 3
- }
- },
- {
- "content": "Service",
- "polygon": [
- 6.4985,
- 3.9734,
- 6.9738,
- 3.9734,
- 6.9738,
- 4.0827,
- 6.4985,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 406,
- "length": 7
- }
- },
- {
- "content": "St,",
- "polygon": [
- 7.0246,
- 3.9746,
- 7.1821,
- 3.9746,
- 7.1821,
- 4.1049,
- 7.0246,
- 4.1049
- ],
- "confidence": 1,
- "span": {
- "offset": 414,
- "length": 3
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 0.5943,
- 4.1717,
- 1.2222,
- 4.1717,
- 1.2222,
- 4.2861,
- 0.5943,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 418,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 1.2753,
- 4.1789,
- 1.5468,
- 4.1789,
- 1.5468,
- 4.3082,
- 1.2753,
- 4.3082
- ],
- "confidence": 1,
- "span": {
- "offset": 426,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 1.6033,
- 4.1779,
- 2.0083,
- 4.1779,
- 2.0083,
- 4.2861,
- 1.6033,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 430,
- "length": 5
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 3.3454,
- 4.1717,
- 3.9732,
- 4.1717,
- 3.9732,
- 4.2861,
- 3.3454,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 436,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 4.0264,
- 4.1789,
- 4.2979,
- 4.1789,
- 4.2979,
- 4.3082,
- 4.0264,
- 4.3082
- ],
- "confidence": 1,
- "span": {
- "offset": 444,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 4.3544,
- 4.1779,
- 4.7594,
- 4.1779,
- 4.7594,
- 4.2861,
- 4.3544,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 448,
- "length": 5
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 6.2197,
- 4.1717,
- 6.8475,
- 4.1717,
- 6.8475,
- 4.2861,
- 6.2197,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 454,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 6.9007,
- 4.1789,
- 7.1722,
- 4.1789,
- 7.1722,
- 4.3082,
- 6.9007,
- 4.3082
- ],
- "confidence": 1,
- "span": {
- "offset": 462,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 7.2287,
- 4.1779,
- 7.6337,
- 4.1779,
- 7.6337,
- 4.2861,
- 7.2287,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 466,
- "length": 5
- }
- },
- {
- "content": "SALESPERSON",
- "polygon": [
- 0.7018,
- 4.6528,
- 1.6092,
- 4.6528,
- 1.6092,
- 4.7529,
- 0.7018,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 472,
- "length": 11
- }
- },
- {
- "content": "P.O.",
- "polygon": [
- 2.1216,
- 4.6528,
- 2.3788,
- 4.6528,
- 2.3788,
- 4.7529,
- 2.1216,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 484,
- "length": 4
- }
- },
- {
- "content": "NUMBER",
- "polygon": [
- 2.4376,
- 4.654,
- 3.0155,
- 4.654,
- 3.0155,
- 4.7529,
- 2.4376,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 489,
- "length": 6
- }
- },
- {
- "content": "REQUISITIONER",
- "polygon": [
- 3.4953,
- 4.6528,
- 4.5157,
- 4.6528,
- 4.5157,
- 4.7687,
- 3.4953,
- 4.7687
- ],
- "confidence": 1,
- "span": {
- "offset": 496,
- "length": 13
- }
- },
- {
- "content": "SHIPPED",
- "polygon": [
- 4.81,
- 4.6528,
- 5.362,
- 4.6528,
- 5.362,
- 4.7529,
- 4.81,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 510,
- "length": 7
- }
- },
- {
- "content": "VIA",
- "polygon": [
- 5.409,
- 4.654,
- 5.6317,
- 4.654,
- 5.6317,
- 4.7517,
- 5.409,
- 4.7517
- ],
- "confidence": 1,
- "span": {
- "offset": 518,
- "length": 3
- }
- },
- {
- "content": "F.O.B.",
- "polygon": [
- 5.8696,
- 4.6528,
- 6.2467,
- 4.6528,
- 6.2467,
- 4.7529,
- 5.8696,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 522,
- "length": 6
- }
- },
- {
- "content": "POINT",
- "polygon": [
- 6.3054,
- 4.6528,
- 6.706,
- 4.6528,
- 6.706,
- 4.7529,
- 6.3054,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 529,
- "length": 5
- }
- },
- {
- "content": "TERMS",
- "polygon": [
- 7.1806,
- 4.6528,
- 7.6304,
- 4.6528,
- 7.6304,
- 4.7529,
- 7.1806,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 535,
- "length": 5
- }
- },
- {
- "content": "PO-3333",
- "polygon": [
- 1.9114,
- 4.9282,
- 2.4718,
- 4.9282,
- 2.4718,
- 5.0363,
- 1.9114,
- 5.0363
- ],
- "confidence": 1,
- "span": {
- "offset": 541,
- "length": 7
- }
- },
- {
- "content": "DATE",
- "polygon": [
- 0.7409,
- 5.421,
- 1.0744,
- 5.421,
- 1.0744,
- 5.5186,
- 0.7409,
- 5.5186
- ],
- "confidence": 1,
- "span": {
- "offset": 549,
- "length": 4
- }
- },
- {
- "content": "ITEM",
- "polygon": [
- 1.4213,
- 5.421,
- 1.7338,
- 5.421,
- 1.7338,
- 5.5186,
- 1.4213,
- 5.5186
- ],
- "confidence": 1,
- "span": {
- "offset": 554,
- "length": 4
- }
- },
- {
- "content": "CODE",
- "polygon": [
- 1.7893,
- 5.4197,
- 2.1407,
- 5.4197,
- 2.1407,
- 5.5199,
- 1.7893,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 559,
- "length": 4
- }
- },
- {
- "content": "DESCRIPTION",
- "polygon": [
- 2.8516,
- 5.4197,
- 3.7134,
- 5.4197,
- 3.7134,
- 5.5199,
- 2.8516,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 564,
- "length": 11
- }
- },
- {
- "content": "QTY",
- "polygon": [
- 4.4043,
- 5.4197,
- 4.6631,
- 5.4197,
- 4.6631,
- 5.5357,
- 4.4043,
- 5.5357
- ],
- "confidence": 1,
- "span": {
- "offset": 576,
- "length": 3
- }
- },
- {
- "content": "UM",
- "polygon": [
- 5.049,
- 5.421,
- 5.2654,
- 5.421,
- 5.2654,
- 5.5199,
- 5.049,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 580,
- "length": 2
- }
- },
- {
- "content": "PRICE",
- "polygon": [
- 5.8563,
- 5.4199,
- 6.2163,
- 5.4199,
- 6.2163,
- 5.5197,
- 5.8563,
- 5.5197
- ],
- "confidence": 1,
- "span": {
- "offset": 583,
- "length": 5
- }
- },
- {
- "content": "TAX",
- "polygon": [
- 6.7169,
- 5.421,
- 6.974,
- 5.421,
- 6.974,
- 5.5186,
- 6.7169,
- 5.5186
- ],
- "confidence": 1,
- "span": {
- "offset": 589,
- "length": 3
- }
- },
- {
- "content": "AMOUNT",
- "polygon": [
- 7.2847,
- 5.4197,
- 7.9039,
- 5.4197,
- 7.9039,
- 5.5199,
- 7.2847,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 593,
- "length": 6
- }
- },
- {
- "content": "3/4/2021",
- "polygon": [
- 0.592,
- 5.682,
- 1.2092,
- 5.682,
- 1.2092,
- 5.8243,
- 0.592,
- 5.8243
- ],
- "confidence": 1,
- "span": {
- "offset": 600,
- "length": 8
- }
- },
- {
- "content": "A123",
- "polygon": [
- 1.6069,
- 5.6948,
- 1.9417,
- 5.6948,
- 1.9417,
- 5.803,
- 1.6069,
- 5.803
- ],
- "confidence": 1,
- "span": {
- "offset": 609,
- "length": 4
- }
- },
- {
- "content": "Consulting",
- "polygon": [
- 2.3388,
- 5.6883,
- 3.0438,
- 5.6883,
- 3.0438,
- 5.8312,
- 2.3388,
- 5.8312
- ],
- "confidence": 1,
- "span": {
- "offset": 614,
- "length": 10
- }
- },
- {
- "content": "Services",
- "polygon": [
- 3.0925,
- 5.6937,
- 3.6278,
- 5.6937,
- 3.6278,
- 5.803,
- 3.0925,
- 5.803
- ],
- "confidence": 1,
- "span": {
- "offset": 625,
- "length": 8
- }
- },
- {
- "content": "2",
- "polygon": [
- 4.5977,
- 5.6948,
- 4.6635,
- 5.6948,
- 4.6635,
- 5.8017,
- 4.5977,
- 5.8017
- ],
- "confidence": 1,
- "span": {
- "offset": 634,
- "length": 1
- }
- },
- {
- "content": "hours",
- "polygon": [
- 4.8444,
- 5.6883,
- 5.2071,
- 5.6883,
- 5.2071,
- 5.803,
- 4.8444,
- 5.803
- ],
- "confidence": 1,
- "span": {
- "offset": 636,
- "length": 5
- }
- },
- {
- "content": "$30.00",
- "polygon": [
- 5.9669,
- 5.6777,
- 6.4142,
- 5.6777,
- 6.4142,
- 5.8215,
- 5.9669,
- 5.8215
- ],
- "confidence": 1,
- "span": {
- "offset": 642,
- "length": 6
- }
- },
- {
- "content": "10%",
- "polygon": [
- 6.7168,
- 5.6932,
- 6.9826,
- 5.6932,
- 6.9826,
- 5.8045,
- 6.7168,
- 5.8045
- ],
- "confidence": 1,
- "span": {
- "offset": 649,
- "length": 3
- }
- },
- {
- "content": "$60.00",
- "polygon": [
- 7.4642,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8215,
- 7.4642,
- 5.8215
- ],
- "confidence": 1,
- "span": {
- "offset": 653,
- "length": 6
- }
- },
- {
- "content": "3/5/2021",
- "polygon": [
- 0.592,
- 5.9787,
- 1.2088,
- 5.9787,
- 1.2088,
- 6.121,
- 0.592,
- 6.121
- ],
- "confidence": 1,
- "span": {
- "offset": 660,
- "length": 8
- }
- },
- {
- "content": "B456",
- "polygon": [
- 1.6214,
- 5.9915,
- 1.9419,
- 5.9915,
- 1.9419,
- 6.0997,
- 1.6214,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 669,
- "length": 4
- }
- },
- {
- "content": "Document",
- "polygon": [
- 2.345,
- 5.993,
- 3.0318,
- 5.993,
- 3.0318,
- 6.0997,
- 2.345,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 674,
- "length": 8
- }
- },
- {
- "content": "Fee",
- "polygon": [
- 3.0887,
- 5.993,
- 3.3096,
- 5.993,
- 3.3096,
- 6.0997,
- 3.0887,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 683,
- "length": 3
- }
- },
- {
- "content": "3",
- "polygon": [
- 4.5967,
- 5.9915,
- 4.6627,
- 5.9915,
- 4.6627,
- 6.0997,
- 4.5967,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 687,
- "length": 1
- }
- },
- {
- "content": "$10.00",
- "polygon": [
- 5.9669,
- 5.9743,
- 6.4142,
- 5.9743,
- 6.4142,
- 6.1182,
- 5.9669,
- 6.1182
- ],
- "confidence": 1,
- "span": {
- "offset": 689,
- "length": 6
- }
- },
- {
- "content": "5%",
- "polygon": [
- 6.7508,
- 5.9898,
- 6.9393,
- 5.9898,
- 6.9393,
- 6.1012,
- 6.7508,
- 6.1012
- ],
- "confidence": 1,
- "span": {
- "offset": 696,
- "length": 2
- }
- },
- {
- "content": "$30.00",
- "polygon": [
- 7.4642,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.1182,
- 7.4642,
- 6.1182
- ],
- "confidence": 1,
- "span": {
- "offset": 699,
- "length": 6
- }
- },
- {
- "content": "3/6/2021",
- "polygon": [
- 0.592,
- 6.2789,
- 1.2088,
- 6.2789,
- 1.2088,
- 6.4213,
- 0.592,
- 6.4213
- ],
- "confidence": 1,
- "span": {
- "offset": 706,
- "length": 8
- }
- },
- {
- "content": "C789",
- "polygon": [
- 1.6152,
- 6.2918,
- 1.94,
- 6.2918,
- 1.94,
- 6.3999,
- 1.6152,
- 6.3999
- ],
- "confidence": 1,
- "span": {
- "offset": 715,
- "length": 4
- }
- },
- {
- "content": "Printing",
- "polygon": [
- 2.345,
- 6.2906,
- 2.8575,
- 6.2906,
- 2.8575,
- 6.4281,
- 2.345,
- 6.4281
- ],
- "confidence": 1,
- "span": {
- "offset": 720,
- "length": 8
- }
- },
- {
- "content": "Fee",
- "polygon": [
- 2.9143,
- 6.2933,
- 3.1351,
- 6.2933,
- 3.1351,
- 6.3999,
- 2.9143,
- 6.3999
- ],
- "confidence": 1,
- "span": {
- "offset": 729,
- "length": 3
- }
- },
- {
- "content": "10",
- "polygon": [
- 4.5158,
- 6.2918,
- 4.6637,
- 6.2918,
- 4.6637,
- 6.3999,
- 4.5158,
- 6.3999
- ],
- "confidence": 1,
- "span": {
- "offset": 733,
- "length": 2
- }
- },
- {
- "content": "pages",
- "polygon": [
- 4.8444,
- 6.3196,
- 5.2199,
- 6.3196,
- 5.2199,
- 6.4281,
- 4.8444,
- 6.4281
- ],
- "confidence": 1,
- "span": {
- "offset": 736,
- "length": 5
- }
- },
- {
- "content": "$1.00",
- "polygon": [
- 6.0502,
- 6.2746,
- 6.4142,
- 6.2746,
- 6.4142,
- 6.4184,
- 6.0502,
- 6.4184
- ],
- "confidence": 1,
- "span": {
- "offset": 742,
- "length": 5
- }
- },
- {
- "content": "20%",
- "polygon": [
- 6.712,
- 6.2901,
- 6.9826,
- 6.2901,
- 6.9826,
- 6.4014,
- 6.712,
- 6.4014
- ],
- "confidence": 1,
- "span": {
- "offset": 748,
- "length": 3
- }
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4642,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4184,
- 7.4642,
- 6.4184
- ],
- "confidence": 1,
- "span": {
- "offset": 752,
- "length": 6
- }
- },
- {
- "content": "SUBTOTAL",
- "polygon": [
- 6.0282,
- 6.9118,
- 6.7309,
- 6.9118,
- 6.7309,
- 7.0199,
- 6.0282,
- 7.0199
- ],
- "confidence": 1,
- "span": {
- "offset": 759,
- "length": 8
- }
- },
- {
- "content": "$100.00",
- "polygon": [
- 7.3842,
- 6.8679,
- 7.9181,
- 6.8679,
- 7.9181,
- 7.0118,
- 7.3842,
- 7.0118
- ],
- "confidence": 1,
- "span": {
- "offset": 768,
- "length": 7
- }
- },
- {
- "content": "SALES",
- "polygon": [
- 6.0382,
- 7.2089,
- 6.4262,
- 7.2089,
- 6.4262,
- 7.317,
- 6.0382,
- 7.317
- ],
- "confidence": 1,
- "span": {
- "offset": 776,
- "length": 5
- }
- },
- {
- "content": "TAX",
- "polygon": [
- 6.4702,
- 7.2099,
- 6.728,
- 7.2099,
- 6.728,
- 7.316,
- 6.4702,
- 7.316
- ],
- "confidence": 1,
- "span": {
- "offset": 782,
- "length": 3
- }
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4709,
- 7.165,
- 7.9182,
- 7.165,
- 7.9182,
- 7.3089,
- 7.4709,
- 7.3089
- ],
- "confidence": 1,
- "span": {
- "offset": 786,
- "length": 6
- }
- },
- {
- "content": "TOTAL",
- "polygon": [
- 6.2969,
- 7.5089,
- 6.7309,
- 7.5089,
- 6.7309,
- 7.617,
- 6.2969,
- 7.617
- ],
- "confidence": 1,
- "span": {
- "offset": 793,
- "length": 5
- }
- },
- {
- "content": "$110.00",
- "polygon": [
- 7.3842,
- 7.465,
- 7.9181,
- 7.465,
- 7.9181,
- 7.6089,
- 7.3842,
- 7.6089
- ],
- "confidence": 1,
- "span": {
- "offset": 799,
- "length": 7
- }
- },
- {
- "content": "PREVIOUS",
- "polygon": [
- 4.8126,
- 7.8055,
- 5.4789,
- 7.8055,
- 5.4789,
- 7.9137,
- 4.8126,
- 7.9137
- ],
- "confidence": 1,
- "span": {
- "offset": 807,
- "length": 8
- }
- },
- {
- "content": "UNPAID",
- "polygon": [
- 5.5362,
- 7.8065,
- 6.057,
- 7.8065,
- 6.057,
- 7.9137,
- 5.5362,
- 7.9137
- ],
- "confidence": 1,
- "span": {
- "offset": 816,
- "length": 6
- }
- },
- {
- "content": "BALANCE",
- "polygon": [
- 6.1164,
- 7.8057,
- 6.7249,
- 7.8057,
- 6.7249,
- 7.9135,
- 6.1164,
- 7.9135
- ],
- "confidence": 1,
- "span": {
- "offset": 823,
- "length": 7
- }
- },
- {
- "content": "$500.00",
- "polygon": [
- 7.3842,
- 7.7617,
- 7.9181,
- 7.7617,
- 7.9181,
- 7.9055,
- 7.3842,
- 7.9055
- ],
- "confidence": 1,
- "span": {
- "offset": 831,
- "length": 7
- }
- },
- {
- "content": "AMOUNT",
- "polygon": [
- 5.7652,
- 8.1022,
- 6.4055,
- 8.1022,
- 6.4055,
- 8.2104,
- 5.7652,
- 8.2104
- ],
- "confidence": 1,
- "span": {
- "offset": 839,
- "length": 6
- }
- },
- {
- "content": "DUE",
- "polygon": [
- 6.4562,
- 8.1032,
- 6.725,
- 8.1032,
- 6.725,
- 8.2104,
- 6.4562,
- 8.2104
- ],
- "confidence": 1,
- "span": {
- "offset": 846,
- "length": 3
- }
- },
- {
- "content": "$610.00",
- "polygon": [
- 7.3842,
- 8.0584,
- 7.9181,
- 8.0584,
- 7.9181,
- 8.2022,
- 7.3842,
- 8.2022
- ],
- "confidence": 1,
- "span": {
- "offset": 850,
- "length": 7
- }
- },
- {
- "content": "THANK",
- "polygon": [
- 3.129,
- 8.5453,
- 3.5887,
- 8.5453,
- 3.5887,
- 8.6429,
- 3.129,
- 8.6429
- ],
- "confidence": 1,
- "span": {
- "offset": 858,
- "length": 5
- }
- },
- {
- "content": "YOU",
- "polygon": [
- 3.6316,
- 8.544,
- 3.9064,
- 8.544,
- 3.9064,
- 8.6442,
- 3.6316,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 864,
- "length": 3
- }
- },
- {
- "content": "FOR",
- "polygon": [
- 3.9671,
- 8.544,
- 4.2187,
- 8.544,
- 4.2187,
- 8.6442,
- 3.9671,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 868,
- "length": 3
- }
- },
- {
- "content": "YOUR",
- "polygon": [
- 4.2638,
- 8.544,
- 4.6347,
- 8.544,
- 4.6347,
- 8.6442,
- 4.2638,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 872,
- "length": 4
- }
- },
- {
- "content": "BUSINESS!",
- "polygon": [
- 4.6859,
- 8.539,
- 5.356,
- 8.539,
- 5.356,
- 8.6442,
- 4.6859,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 877,
- "length": 9
- }
- },
- {
- "content": "REMIT",
- "polygon": [
- 0.5909,
- 9.1619,
- 1.0014,
- 9.1619,
- 1.0014,
- 9.2596,
- 0.5909,
- 9.2596
- ],
- "confidence": 1,
- "span": {
- "offset": 887,
- "length": 5
- }
- },
- {
- "content": "TO:",
- "polygon": [
- 1.0446,
- 9.1607,
- 1.2603,
- 9.1607,
- 1.2603,
- 9.2608,
- 1.0446,
- 9.2608
- ],
- "confidence": 1,
- "span": {
- "offset": 893,
- "length": 3
- }
- },
- {
- "content": "Contoso",
- "polygon": [
- 0.5882,
- 9.3697,
- 1.1337,
- 9.3697,
- 1.1337,
- 9.4777,
- 0.5882,
- 9.4777
- ],
- "confidence": 1,
- "span": {
- "offset": 897,
- "length": 7
- }
- },
- {
- "content": "Billing",
- "polygon": [
- 1.1905,
- 9.3631,
- 1.5828,
- 9.3631,
- 1.5828,
- 9.5059,
- 1.1905,
- 9.5059
- ],
- "confidence": 1,
- "span": {
- "offset": 905,
- "length": 7
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 9.5728,
- 0.8213,
- 9.5728,
- 0.8213,
- 9.681,
- 0.5945,
- 9.681
- ],
- "confidence": 1,
- "span": {
- "offset": 913,
- "length": 3
- }
- },
- {
- "content": "Remit",
- "polygon": [
- 0.881,
- 9.5717,
- 1.264,
- 9.5717,
- 1.264,
- 9.681,
- 0.881,
- 9.681
- ],
- "confidence": 1,
- "span": {
- "offset": 917,
- "length": 5
- }
- },
- {
- "content": "St",
- "polygon": [
- 1.3125,
- 9.5728,
- 1.4337,
- 9.5728,
- 1.4337,
- 9.681,
- 1.3125,
- 9.681
- ],
- "confidence": 1,
- "span": {
- "offset": 923,
- "length": 2
- }
- },
- {
- "content": "New",
- "polygon": [
- 0.5943,
- 9.7808,
- 0.8848,
- 9.7808,
- 0.8848,
- 9.8877,
- 0.5943,
- 9.8877
- ],
- "confidence": 1,
- "span": {
- "offset": 926,
- "length": 3
- }
- },
- {
- "content": "York,",
- "polygon": [
- 0.9293,
- 9.773,
- 1.2568,
- 9.773,
- 1.2568,
- 9.9098,
- 0.9293,
- 9.9098
- ],
- "confidence": 1,
- "span": {
- "offset": 930,
- "length": 5
- }
- },
- {
- "content": "NY,",
- "polygon": [
- 1.3205,
- 9.7805,
- 1.5233,
- 9.7805,
- 1.5233,
- 9.9098,
- 1.3205,
- 9.9098
- ],
- "confidence": 1,
- "span": {
- "offset": 936,
- "length": 3
- }
- },
- {
- "content": "10001",
- "polygon": [
- 1.5903,
- 9.7795,
- 1.9882,
- 9.7795,
- 1.9882,
- 9.8877,
- 1.5903,
- 9.8877
- ],
- "confidence": 1,
- "span": {
- "offset": 940,
- "length": 5
- }
- }
- ],
- "selectionMarks": [
- {
- "state": "unselected",
- "polygon": [
- 4.3231,
- 5.6279,
- 4.7562,
- 5.6279,
- 4.7562,
- 5.8654,
- 4.3231,
- 5.8654
- ],
- "confidence": 0.212,
- "span": {
- "offset": 946,
- "length": 12
- }
- }
- ],
- "lines": [
- {
- "content": "CONTOSO LTD.",
- "polygon": [
- 0.5911,
- 0.6857,
- 2.3181,
- 0.6857,
- 2.3181,
- 0.8664,
- 0.5911,
- 0.8664
- ],
- "spans": [
- {
- "offset": 0,
- "length": 12
- }
- ]
- },
- {
- "content": "INVOICE",
- "polygon": [
- 7.0751,
- 0.589,
- 7.9886,
- 0.589,
- 7.9886,
- 0.7697,
- 7.0751,
- 0.7697
- ],
- "spans": [
- {
- "offset": 13,
- "length": 7
- }
- ]
- },
- {
- "content": "Contoso Headquarters",
- "polygon": [
- 0.5882,
- 1.4239,
- 2.0978,
- 1.4239,
- 2.0978,
- 1.5664,
- 0.5882,
- 1.5664
- ],
- "spans": [
- {
- "offset": 21,
- "length": 20
- }
- ]
- },
- {
- "content": "INVOICE: INV-100",
- "polygon": [
- 6.8599,
- 1.4217,
- 7.9988,
- 1.4217,
- 7.9988,
- 1.5218,
- 6.8599,
- 1.5218
- ],
- "spans": [
- {
- "offset": 42,
- "length": 16
- }
- ]
- },
- {
- "content": "123 456th St",
- "polygon": [
- 0.5945,
- 1.6092,
- 1.3812,
- 1.6092,
- 1.3812,
- 1.742,
- 0.5945,
- 1.742
- ],
- "spans": [
- {
- "offset": 59,
- "length": 12
- }
- ]
- },
- {
- "content": "INVOICE DATE: 11/15/2019",
- "polygon": [
- 6.2263,
- 1.6139,
- 7.993,
- 1.6139,
- 7.993,
- 1.7449,
- 6.2263,
- 1.7449
- ],
- "spans": [
- {
- "offset": 72,
- "length": 24
- }
- ]
- },
- {
- "content": "New York, NY, 10001",
- "polygon": [
- 0.5943,
- 1.8307,
- 1.9894,
- 1.8307,
- 1.9894,
- 1.9675,
- 0.5943,
- 1.9675
- ],
- "spans": [
- {
- "offset": 97,
- "length": 19
- }
- ]
- },
- {
- "content": "DUE DATE: 12/15/2019",
- "polygon": [
- 6.4966,
- 1.8206,
- 7.993,
- 1.8206,
- 7.993,
- 1.9515,
- 6.4966,
- 1.9515
- ],
- "spans": [
- {
- "offset": 117,
- "length": 20
- }
- ]
- },
- {
- "content": "CUSTOMER NAME: MICROSOFT CORPORATION",
- "polygon": [
- 4.9513,
- 2.0388,
- 7.9825,
- 2.0388,
- 7.9825,
- 2.1389,
- 4.9513,
- 2.1389
- ],
- "spans": [
- {
- "offset": 138,
- "length": 36
- }
- ]
- },
- {
- "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019",
- "polygon": [
- 5.1667,
- 2.2306,
- 7.9952,
- 2.2306,
- 7.9952,
- 2.3615,
- 5.1667,
- 2.3615
- ],
- "spans": [
- {
- "offset": 175,
- "length": 39
- }
- ]
- },
- {
- "content": "CUSTOMER ID: CID-12345",
- "polygon": [
- 6.3253,
- 2.4488,
- 7.9951,
- 2.4488,
- 7.9951,
- 2.5489,
- 6.3253,
- 2.5489
- ],
- "spans": [
- {
- "offset": 215,
- "length": 22
- }
- ]
- },
- {
- "content": "Microsoft Corp",
- "polygon": [
- 0.5943,
- 2.6436,
- 1.586,
- 2.6436,
- 1.586,
- 2.7871,
- 0.5943,
- 2.7871
- ],
- "spans": [
- {
- "offset": 238,
- "length": 14
- }
- ]
- },
- {
- "content": "123 Other St,",
- "polygon": [
- 0.5945,
- 2.8476,
- 1.4633,
- 2.8476,
- 1.4633,
- 2.9845,
- 0.5945,
- 2.9845
- ],
- "spans": [
- {
- "offset": 253,
- "length": 13
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 0.5943,
- 3.0513,
- 2.0083,
- 3.0513,
- 2.0083,
- 3.1878,
- 0.5943,
- 3.1878
- ],
- "spans": [
- {
- "offset": 267,
- "length": 17
- }
- ]
- },
- {
- "content": "BILL TO:",
- "polygon": [
- 0.5909,
- 3.559,
- 1.1032,
- 3.559,
- 1.1032,
- 3.6592,
- 0.5909,
- 3.6592
- ],
- "spans": [
- {
- "offset": 285,
- "length": 8
- }
- ]
- },
- {
- "content": "SHIP TO:",
- "polygon": [
- 3.3361,
- 3.559,
- 3.8903,
- 3.559,
- 3.8903,
- 3.6592,
- 3.3361,
- 3.6592
- ],
- "spans": [
- {
- "offset": 294,
- "length": 8
- }
- ]
- },
- {
- "content": "SERVICE ADDRESS:",
- "polygon": [
- 6.2104,
- 3.559,
- 7.4232,
- 3.559,
- 7.4232,
- 3.6592,
- 6.2104,
- 3.6592
- ],
- "spans": [
- {
- "offset": 303,
- "length": 16
- }
- ]
- },
- {
- "content": "Microsoft Finance",
- "polygon": [
- 0.5943,
- 3.7641,
- 1.7878,
- 3.7641,
- 1.7878,
- 3.8794,
- 0.5943,
- 3.8794
- ],
- "spans": [
- {
- "offset": 320,
- "length": 17
- }
- ]
- },
- {
- "content": "Microsoft Delivery",
- "polygon": [
- 3.3454,
- 3.7641,
- 4.5762,
- 3.7641,
- 4.5762,
- 3.9076,
- 3.3454,
- 3.9076
- ],
- "spans": [
- {
- "offset": 338,
- "length": 18
- }
- ]
- },
- {
- "content": "Microsoft Services",
- "polygon": [
- 6.2197,
- 3.7641,
- 7.4427,
- 3.7641,
- 7.4427,
- 3.8794,
- 6.2197,
- 3.8794
- ],
- "spans": [
- {
- "offset": 357,
- "length": 18
- }
- ]
- },
- {
- "content": "123 Bill St,",
- "polygon": [
- 0.5945,
- 3.9681,
- 1.2765,
- 3.9681,
- 1.2765,
- 4.1049,
- 0.5945,
- 4.1049
- ],
- "spans": [
- {
- "offset": 376,
- "length": 12
- }
- ]
- },
- {
- "content": "123 Ship St,",
- "polygon": [
- 3.3456,
- 3.9681,
- 4.1111,
- 3.9681,
- 4.1111,
- 4.1109,
- 3.3456,
- 4.1109
- ],
- "spans": [
- {
- "offset": 389,
- "length": 12
- }
- ]
- },
- {
- "content": "123 Service St,",
- "polygon": [
- 6.2199,
- 3.9734,
- 7.1821,
- 3.9734,
- 7.1821,
- 4.1049,
- 6.2199,
- 4.1049
- ],
- "spans": [
- {
- "offset": 402,
- "length": 15
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 0.5943,
- 4.1717,
- 2.0083,
- 4.1717,
- 2.0083,
- 4.3082,
- 0.5943,
- 4.3082
- ],
- "spans": [
- {
- "offset": 418,
- "length": 17
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 3.3454,
- 4.1717,
- 4.7594,
- 4.1717,
- 4.7594,
- 4.3082,
- 3.3454,
- 4.3082
- ],
- "spans": [
- {
- "offset": 436,
- "length": 17
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 6.2197,
- 4.1717,
- 7.6337,
- 4.1717,
- 7.6337,
- 4.3082,
- 6.2197,
- 4.3082
- ],
- "spans": [
- {
- "offset": 454,
- "length": 17
- }
- ]
- },
- {
- "content": "SALESPERSON",
- "polygon": [
- 0.7018,
- 4.6528,
- 1.6092,
- 4.6528,
- 1.6092,
- 4.7529,
- 0.7018,
- 4.7529
- ],
- "spans": [
- {
- "offset": 472,
- "length": 11
- }
- ]
- },
- {
- "content": "P.O. NUMBER",
- "polygon": [
- 2.1216,
- 4.6528,
- 3.0155,
- 4.6528,
- 3.0155,
- 4.7529,
- 2.1216,
- 4.7529
- ],
- "spans": [
- {
- "offset": 484,
- "length": 11
- }
- ]
- },
- {
- "content": "REQUISITIONER",
- "polygon": [
- 3.4953,
- 4.6528,
- 4.5157,
- 4.6528,
- 4.5157,
- 4.7687,
- 3.4953,
- 4.7687
- ],
- "spans": [
- {
- "offset": 496,
- "length": 13
- }
- ]
- },
- {
- "content": "SHIPPED VIA",
- "polygon": [
- 4.81,
- 4.6528,
- 5.6317,
- 4.6528,
- 5.6317,
- 4.7529,
- 4.81,
- 4.7529
- ],
- "spans": [
- {
- "offset": 510,
- "length": 11
- }
- ]
- },
- {
- "content": "F.O.B. POINT",
- "polygon": [
- 5.8696,
- 4.6528,
- 6.706,
- 4.6528,
- 6.706,
- 4.7529,
- 5.8696,
- 4.7529
- ],
- "spans": [
- {
- "offset": 522,
- "length": 12
- }
- ]
- },
- {
- "content": "TERMS",
- "polygon": [
- 7.1806,
- 4.6528,
- 7.6304,
- 4.6528,
- 7.6304,
- 4.7529,
- 7.1806,
- 4.7529
- ],
- "spans": [
- {
- "offset": 535,
- "length": 5
- }
- ]
- },
- {
- "content": "PO-3333",
- "polygon": [
- 1.9114,
- 4.9282,
- 2.4718,
- 4.9282,
- 2.4718,
- 5.0363,
- 1.9114,
- 5.0363
- ],
- "spans": [
- {
- "offset": 541,
- "length": 7
- }
- ]
- },
- {
- "content": "DATE",
- "polygon": [
- 0.7409,
- 5.421,
- 1.0744,
- 5.421,
- 1.0744,
- 5.5186,
- 0.7409,
- 5.5186
- ],
- "spans": [
- {
- "offset": 549,
- "length": 4
- }
- ]
- },
- {
- "content": "ITEM CODE",
- "polygon": [
- 1.4213,
- 5.4197,
- 2.1407,
- 5.4197,
- 2.1407,
- 5.5199,
- 1.4213,
- 5.5199
- ],
- "spans": [
- {
- "offset": 554,
- "length": 9
- }
- ]
- },
- {
- "content": "DESCRIPTION",
- "polygon": [
- 2.8516,
- 5.4197,
- 3.7134,
- 5.4197,
- 3.7134,
- 5.5199,
- 2.8516,
- 5.5199
- ],
- "spans": [
- {
- "offset": 564,
- "length": 11
- }
- ]
- },
- {
- "content": "QTY",
- "polygon": [
- 4.4043,
- 5.4197,
- 4.6631,
- 5.4197,
- 4.6631,
- 5.5357,
- 4.4043,
- 5.5357
- ],
- "spans": [
- {
- "offset": 576,
- "length": 3
- }
- ]
- },
- {
- "content": "UM",
- "polygon": [
- 5.049,
- 5.421,
- 5.2654,
- 5.421,
- 5.2654,
- 5.5199,
- 5.049,
- 5.5199
- ],
- "spans": [
- {
- "offset": 580,
- "length": 2
- }
- ]
- },
- {
- "content": "PRICE",
- "polygon": [
- 5.8563,
- 5.4199,
- 6.2163,
- 5.4199,
- 6.2163,
- 5.5197,
- 5.8563,
- 5.5197
- ],
- "spans": [
- {
- "offset": 583,
- "length": 5
- }
- ]
- },
- {
- "content": "TAX",
- "polygon": [
- 6.7169,
- 5.421,
- 6.974,
- 5.421,
- 6.974,
- 5.5186,
- 6.7169,
- 5.5186
- ],
- "spans": [
- {
- "offset": 589,
- "length": 3
- }
- ]
- },
- {
- "content": "AMOUNT",
- "polygon": [
- 7.2847,
- 5.4197,
- 7.9039,
- 5.4197,
- 7.9039,
- 5.5199,
- 7.2847,
- 5.5199
- ],
- "spans": [
- {
- "offset": 593,
- "length": 6
- }
- ]
- },
- {
- "content": "3/4/2021",
- "polygon": [
- 0.592,
- 5.682,
- 1.2092,
- 5.682,
- 1.2092,
- 5.8243,
- 0.592,
- 5.8243
- ],
- "spans": [
- {
- "offset": 600,
- "length": 8
- }
- ]
- },
- {
- "content": "A123",
- "polygon": [
- 1.6069,
- 5.6948,
- 1.9417,
- 5.6948,
- 1.9417,
- 5.803,
- 1.6069,
- 5.803
- ],
- "spans": [
- {
- "offset": 609,
- "length": 4
- }
- ]
- },
- {
- "content": "Consulting Services",
- "polygon": [
- 2.3388,
- 5.6883,
- 3.6278,
- 5.6883,
- 3.6278,
- 5.8312,
- 2.3388,
- 5.8312
- ],
- "spans": [
- {
- "offset": 614,
- "length": 19
- }
- ]
- },
- {
- "content": "2",
- "polygon": [
- 4.5977,
- 5.6948,
- 4.6635,
- 5.6948,
- 4.6635,
- 5.8017,
- 4.5977,
- 5.8017
- ],
- "spans": [
- {
- "offset": 634,
- "length": 1
- }
- ]
- },
- {
- "content": "hours",
- "polygon": [
- 4.8444,
- 5.6883,
- 5.2071,
- 5.6883,
- 5.2071,
- 5.803,
- 4.8444,
- 5.803
- ],
- "spans": [
- {
- "offset": 636,
- "length": 5
- }
- ]
- },
- {
- "content": "$30.00",
- "polygon": [
- 5.9669,
- 5.6777,
- 6.4142,
- 5.6777,
- 6.4142,
- 5.8215,
- 5.9669,
- 5.8215
- ],
- "spans": [
- {
- "offset": 642,
- "length": 6
- }
- ]
- },
- {
- "content": "10%",
- "polygon": [
- 6.7168,
- 5.6932,
- 6.9826,
- 5.6932,
- 6.9826,
- 5.8045,
- 6.7168,
- 5.8045
- ],
- "spans": [
- {
- "offset": 649,
- "length": 3
- }
- ]
- },
- {
- "content": "$60.00",
- "polygon": [
- 7.4642,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8215,
- 7.4642,
- 5.8215
- ],
- "spans": [
- {
- "offset": 653,
- "length": 6
- }
- ]
- },
- {
- "content": "3/5/2021",
- "polygon": [
- 0.592,
- 5.9787,
- 1.2088,
- 5.9787,
- 1.2088,
- 6.121,
- 0.592,
- 6.121
- ],
- "spans": [
- {
- "offset": 660,
- "length": 8
- }
- ]
- },
- {
- "content": "B456",
- "polygon": [
- 1.6214,
- 5.9915,
- 1.9419,
- 5.9915,
- 1.9419,
- 6.0997,
- 1.6214,
- 6.0997
- ],
- "spans": [
- {
- "offset": 669,
- "length": 4
- }
- ]
- },
- {
- "content": "Document Fee",
- "polygon": [
- 2.345,
- 5.993,
- 3.3096,
- 5.993,
- 3.3096,
- 6.0997,
- 2.345,
- 6.0997
- ],
- "spans": [
- {
- "offset": 674,
- "length": 12
- }
- ]
- },
- {
- "content": "3",
- "polygon": [
- 4.5967,
- 5.9915,
- 4.6627,
- 5.9915,
- 4.6627,
- 6.0997,
- 4.5967,
- 6.0997
- ],
- "spans": [
- {
- "offset": 687,
- "length": 1
- }
- ]
- },
- {
- "content": "$10.00",
- "polygon": [
- 5.9669,
- 5.9743,
- 6.4142,
- 5.9743,
- 6.4142,
- 6.1182,
- 5.9669,
- 6.1182
- ],
- "spans": [
- {
- "offset": 689,
- "length": 6
- }
- ]
- },
- {
- "content": "5%",
- "polygon": [
- 6.7508,
- 5.9898,
- 6.9393,
- 5.9898,
- 6.9393,
- 6.1012,
- 6.7508,
- 6.1012
- ],
- "spans": [
- {
- "offset": 696,
- "length": 2
- }
- ]
- },
- {
- "content": "$30.00",
- "polygon": [
- 7.4642,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.1182,
- 7.4642,
- 6.1182
- ],
- "spans": [
- {
- "offset": 699,
- "length": 6
- }
- ]
- },
- {
- "content": "3/6/2021",
- "polygon": [
- 0.592,
- 6.2789,
- 1.2088,
- 6.2789,
- 1.2088,
- 6.4213,
- 0.592,
- 6.4213
- ],
- "spans": [
- {
- "offset": 706,
- "length": 8
- }
- ]
- },
- {
- "content": "C789",
- "polygon": [
- 1.6152,
- 6.2918,
- 1.94,
- 6.2918,
- 1.94,
- 6.3999,
- 1.6152,
- 6.3999
- ],
- "spans": [
- {
- "offset": 715,
- "length": 4
- }
- ]
- },
- {
- "content": "Printing Fee",
- "polygon": [
- 2.345,
- 6.2906,
- 3.1351,
- 6.2906,
- 3.1351,
- 6.4281,
- 2.345,
- 6.4281
- ],
- "spans": [
- {
- "offset": 720,
- "length": 12
- }
- ]
- },
- {
- "content": "10",
- "polygon": [
- 4.5158,
- 6.2918,
- 4.6637,
- 6.2918,
- 4.6637,
- 6.3999,
- 4.5158,
- 6.3999
- ],
- "spans": [
- {
- "offset": 733,
- "length": 2
- }
- ]
- },
- {
- "content": "pages",
- "polygon": [
- 4.8444,
- 6.3196,
- 5.2199,
- 6.3196,
- 5.2199,
- 6.4281,
- 4.8444,
- 6.4281
- ],
- "spans": [
- {
- "offset": 736,
- "length": 5
- }
- ]
- },
- {
- "content": "$1.00",
- "polygon": [
- 6.0502,
- 6.2746,
- 6.4142,
- 6.2746,
- 6.4142,
- 6.4184,
- 6.0502,
- 6.4184
- ],
- "spans": [
- {
- "offset": 742,
- "length": 5
- }
- ]
- },
- {
- "content": "20%",
- "polygon": [
- 6.712,
- 6.2901,
- 6.9826,
- 6.2901,
- 6.9826,
- 6.4014,
- 6.712,
- 6.4014
- ],
- "spans": [
- {
- "offset": 748,
- "length": 3
- }
- ]
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4642,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4184,
- 7.4642,
- 6.4184
- ],
- "spans": [
- {
- "offset": 752,
- "length": 6
- }
- ]
- },
- {
- "content": "SUBTOTAL",
- "polygon": [
- 6.0282,
- 6.9118,
- 6.7309,
- 6.9118,
- 6.7309,
- 7.0199,
- 6.0282,
- 7.0199
- ],
- "spans": [
- {
- "offset": 759,
- "length": 8
- }
- ]
- },
- {
- "content": "$100.00",
- "polygon": [
- 7.3842,
- 6.8679,
- 7.9181,
- 6.8679,
- 7.9181,
- 7.0118,
- 7.3842,
- 7.0118
- ],
- "spans": [
- {
- "offset": 768,
- "length": 7
- }
- ]
- },
- {
- "content": "SALES TAX",
- "polygon": [
- 6.0382,
- 7.2089,
- 6.728,
- 7.2089,
- 6.728,
- 7.317,
- 6.0382,
- 7.317
- ],
- "spans": [
- {
- "offset": 776,
- "length": 9
- }
- ]
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4709,
- 7.165,
- 7.9182,
- 7.165,
- 7.9182,
- 7.3089,
- 7.4709,
- 7.3089
- ],
- "spans": [
- {
- "offset": 786,
- "length": 6
- }
- ]
- },
- {
- "content": "TOTAL",
- "polygon": [
- 6.2969,
- 7.5089,
- 6.7309,
- 7.5089,
- 6.7309,
- 7.617,
- 6.2969,
- 7.617
- ],
- "spans": [
- {
- "offset": 793,
- "length": 5
- }
- ]
- },
- {
- "content": "$110.00",
- "polygon": [
- 7.3842,
- 7.465,
- 7.9181,
- 7.465,
- 7.9181,
- 7.6089,
- 7.3842,
- 7.6089
- ],
- "spans": [
- {
- "offset": 799,
- "length": 7
- }
- ]
- },
- {
- "content": "PREVIOUS UNPAID BALANCE",
- "polygon": [
- 4.8126,
- 7.8055,
- 6.7249,
- 7.8055,
- 6.7249,
- 7.9137,
- 4.8126,
- 7.9137
- ],
- "spans": [
- {
- "offset": 807,
- "length": 23
- }
- ]
- },
- {
- "content": "$500.00",
- "polygon": [
- 7.3842,
- 7.7617,
- 7.9181,
- 7.7617,
- 7.9181,
- 7.9055,
- 7.3842,
- 7.9055
- ],
- "spans": [
- {
- "offset": 831,
- "length": 7
- }
- ]
- },
- {
- "content": "AMOUNT DUE",
- "polygon": [
- 5.7652,
- 8.1022,
- 6.725,
- 8.1022,
- 6.725,
- 8.2104,
- 5.7652,
- 8.2104
- ],
- "spans": [
- {
- "offset": 839,
- "length": 10
- }
- ]
- },
- {
- "content": "$610.00",
- "polygon": [
- 7.3842,
- 8.0584,
- 7.9181,
- 8.0584,
- 7.9181,
- 8.2022,
- 7.3842,
- 8.2022
- ],
- "spans": [
- {
- "offset": 850,
- "length": 7
- }
- ]
- },
- {
- "content": "THANK YOU FOR YOUR BUSINESS!",
- "polygon": [
- 3.129,
- 8.539,
- 5.356,
- 8.539,
- 5.356,
- 8.6442,
- 3.129,
- 8.6442
- ],
- "spans": [
- {
- "offset": 858,
- "length": 28
- }
- ]
- },
- {
- "content": "REMIT TO:",
- "polygon": [
- 0.5909,
- 9.1607,
- 1.2603,
- 9.1607,
- 1.2603,
- 9.2608,
- 0.5909,
- 9.2608
- ],
- "spans": [
- {
- "offset": 887,
- "length": 9
- }
- ]
- },
- {
- "content": "Contoso Billing",
- "polygon": [
- 0.5882,
- 9.3631,
- 1.5828,
- 9.3631,
- 1.5828,
- 9.5059,
- 0.5882,
- 9.5059
- ],
- "spans": [
- {
- "offset": 897,
- "length": 15
- }
- ]
- },
- {
- "content": "123 Remit St",
- "polygon": [
- 0.5945,
- 9.5717,
- 1.4337,
- 9.5717,
- 1.4337,
- 9.681,
- 0.5945,
- 9.681
- ],
- "spans": [
- {
- "offset": 913,
- "length": 12
- }
- ]
- },
- {
- "content": "New York, NY, 10001",
- "polygon": [
- 0.5943,
- 9.773,
- 1.9882,
- 9.773,
- 1.9882,
- 9.9098,
- 0.5943,
- 9.9098
- ],
- "spans": [
- {
- "offset": 926,
- "length": 19
- }
- ]
- }
- ],
- "spans": [
- {
- "offset": 0,
- "length": 958
- }
- ]
- }
- ],
- "tables": [
- {
- "rowCount": 4,
- "columnCount": 8,
- "cells": [
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "DATE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4932,
- 5.329,
- 1.3011,
- 5.3213,
- 1.3011,
- 5.6056,
- 0.5009,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 549,
- "length": 4
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "ITEM CODE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 5.3213,
- 2.2476,
- 5.3213,
- 2.2399,
- 5.6056,
- 1.3011,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 554,
- "length": 9
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "DESCRIPTION",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2476,
- 5.3213,
- 4.3174,
- 5.329,
- 4.3097,
- 5.6056,
- 2.2399,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 564,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "QTY",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3174,
- 5.329,
- 4.7483,
- 5.329,
- 4.7483,
- 5.6056,
- 4.3097,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 576,
- "length": 3
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "UM",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 5.329,
- 5.5639,
- 5.329,
- 5.5639,
- 5.6056,
- 4.7483,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 580,
- "length": 2
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "PRICE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 5.329,
- 6.495,
- 5.329,
- 6.495,
- 5.6056,
- 5.5639,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 583,
- "length": 5
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "TAX",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 5.329,
- 7.1875,
- 5.329,
- 7.1952,
- 5.6056,
- 6.495,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 589,
- "length": 3
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "AMOUNT",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1875,
- 5.329,
- 7.9954,
- 5.329,
- 7.9954,
- 5.598,
- 7.1952,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 593,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3/4/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5009,
- 5.6056,
- 1.3011,
- 5.6056,
- 1.3011,
- 5.8976,
- 0.5009,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 600,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "A123",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 5.6056,
- 2.2399,
- 5.6056,
- 2.2322,
- 5.8976,
- 1.3011,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 609,
- "length": 4
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "Consulting Services",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2399,
- 5.6056,
- 4.3097,
- 5.6056,
- 4.3097,
- 5.8976,
- 2.2322,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 614,
- "length": 19
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "2 :unselected:",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3097,
- 5.6056,
- 4.7483,
- 5.6056,
- 4.7483,
- 5.8976,
- 4.3097,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 634,
- "length": 1
- },
- {
- "offset": 946,
- "length": 12
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "hours",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 5.6056,
- 5.5639,
- 5.6056,
- 5.5639,
- 5.8976,
- 4.7483,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 636,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 5.6056,
- 6.495,
- 5.6056,
- 6.495,
- 5.8976,
- 5.5639,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 642,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "10%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 5.6056,
- 7.1952,
- 5.6056,
- 7.1952,
- 5.8976,
- 6.495,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 649,
- "length": 3
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$60.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1952,
- 5.6056,
- 7.9954,
- 5.598,
- 7.9954,
- 5.9053,
- 7.1952,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 653,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3/5/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5009,
- 5.8976,
- 1.3011,
- 5.8976,
- 1.3011,
- 6.1973,
- 0.5086,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 660,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "B456",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 5.8976,
- 2.2322,
- 5.8976,
- 2.2245,
- 6.1973,
- 1.3011,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 669,
- "length": 4
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "Document Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2322,
- 5.8976,
- 4.3097,
- 5.8976,
- 4.3097,
- 6.1973,
- 2.2245,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 674,
- "length": 12
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3097,
- 5.8976,
- 4.7483,
- 5.8976,
- 4.7483,
- 6.1973,
- 4.3097,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 687,
- "length": 1
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 5.8976,
- 5.5639,
- 5.8976,
- 5.5639,
- 6.1973,
- 4.7483,
- 6.1973
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 2,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 5.8976,
- 6.495,
- 5.8976,
- 6.495,
- 6.1973,
- 5.5639,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 689,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "5%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 5.8976,
- 7.1952,
- 5.8976,
- 7.1952,
- 6.1973,
- 6.495,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 696,
- "length": 2
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1952,
- 5.8976,
- 7.9954,
- 5.9053,
- 7.9954,
- 6.1896,
- 7.1952,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 699,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3/6/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5086,
- 6.1973,
- 1.3011,
- 6.1973,
- 1.3011,
- 6.4969,
- 0.5086,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 706,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "C789",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 6.1973,
- 2.2245,
- 6.1973,
- 2.2245,
- 6.4969,
- 1.3011,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 715,
- "length": 4
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "Printing Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2245,
- 6.1973,
- 4.3097,
- 6.1973,
- 4.3097,
- 6.4969,
- 2.2245,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 720,
- "length": 12
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "10",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3097,
- 6.1973,
- 4.7483,
- 6.1973,
- 4.7483,
- 6.4969,
- 4.3097,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 733,
- "length": 2
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "pages",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 6.1973,
- 5.5639,
- 6.1973,
- 5.5639,
- 6.4969,
- 4.7483,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 736,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$1.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 6.1973,
- 6.495,
- 6.1973,
- 6.495,
- 6.4969,
- 5.5639,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 742,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "20%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 6.1973,
- 7.1952,
- 6.1973,
- 7.1952,
- 6.4969,
- 6.495,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 748,
- "length": 3
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1952,
- 6.1973,
- 7.9954,
- 6.1896,
- 7.9954,
- 6.5046,
- 7.1952,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 752,
- "length": 6
- }
- ]
- }
- ],
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4901,
- 5.3293,
- 7.9946,
- 5.3289,
- 7.9954,
- 6.5019,
- 0.4906,
- 6.502
- ]
- }
- ],
- "spans": [
- {
- "offset": 549,
- "length": 209
- },
- {
- "offset": 946,
- "length": 12
- }
- ]
- },
- {
- "rowCount": 2,
- "columnCount": 6,
- "cells": [
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SALESPERSON",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4977,
- 4.565,
- 1.8042,
- 4.565,
- 1.8119,
- 4.8388,
- 0.5054,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 472,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "P.O. NUMBER",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.8042,
- 4.565,
- 3.3105,
- 4.565,
- 3.3105,
- 4.8388,
- 1.8119,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 484,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "REQUISITIONER",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3105,
- 4.565,
- 4.6939,
- 4.565,
- 4.6862,
- 4.8388,
- 3.3105,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 496,
- "length": 13
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SHIPPED VIA",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.6939,
- 4.565,
- 5.7468,
- 4.565,
- 5.7468,
- 4.8388,
- 4.6862,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 510,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "F.O.B. POINT",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.7468,
- 4.565,
- 6.815,
- 4.565,
- 6.815,
- 4.8388,
- 5.7468,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 522,
- "length": 12
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "TERMS",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.815,
- 4.565,
- 7.9985,
- 4.565,
- 7.9985,
- 4.8388,
- 6.815,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 535,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5054,
- 4.8388,
- 1.8119,
- 4.8388,
- 1.8119,
- 5.1058,
- 0.5131,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "PO-3333",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.8119,
- 4.8388,
- 3.3105,
- 4.8388,
- 3.3105,
- 5.1058,
- 1.8119,
- 5.1058
- ]
- }
- ],
- "spans": [
- {
- "offset": 541,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3105,
- 4.8388,
- 4.6862,
- 4.8388,
- 4.6862,
- 5.1058,
- 3.3105,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.6862,
- 4.8388,
- 5.7468,
- 4.8388,
- 5.7468,
- 5.1058,
- 4.6862,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.7468,
- 4.8388,
- 6.815,
- 4.8388,
- 6.815,
- 5.1058,
- 5.7468,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.815,
- 4.8388,
- 7.9985,
- 4.8388,
- 7.9985,
- 5.1125,
- 6.815,
- 5.1058
- ]
- }
- ],
- "spans": []
- }
- ],
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4971,
- 4.565,
- 7.9889,
- 4.5653,
- 7.989,
- 5.1146,
- 0.4963,
- 5.1141
- ]
- }
- ],
- "spans": [
- {
- "offset": 472,
- "length": 76
- }
- ]
- },
- {
- "rowCount": 5,
- "columnCount": 2,
- "cells": [
- {
- "rowIndex": 0,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SUBTOTAL",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7474,
- 6.7934,
- 6.8058,
- 6.7934,
- 6.8105,
- 7.0886,
- 4.7474,
- 7.0886
- ]
- }
- ],
- "spans": [
- {
- "offset": 759,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 0,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$100.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8058,
- 6.7934,
- 7.9981,
- 6.7934,
- 7.9981,
- 7.0934,
- 6.8105,
- 7.0886
- ]
- }
- ],
- "spans": [
- {
- "offset": 768,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SALES TAX",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7474,
- 7.0886,
- 6.8105,
- 7.0886,
- 6.8105,
- 7.3743,
- 4.7427,
- 7.3743
- ]
- }
- ],
- "spans": [
- {
- "offset": 776,
- "length": 9
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.0886,
- 7.9981,
- 7.0934,
- 7.9981,
- 7.3934,
- 6.8105,
- 7.3743
- ]
- }
- ],
- "spans": [
- {
- "offset": 786,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "TOTAL",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7427,
- 7.3743,
- 6.8105,
- 7.3743,
- 6.8105,
- 7.6839,
- 4.7427,
- 7.6839
- ]
- }
- ],
- "spans": [
- {
- "offset": 793,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$110.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.3743,
- 7.9981,
- 7.3934,
- 7.9981,
- 7.6886,
- 6.8105,
- 7.6839
- ]
- }
- ],
- "spans": [
- {
- "offset": 799,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "PREVIOUS UNPAID BALANCE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7427,
- 7.6839,
- 6.8105,
- 7.6839,
- 6.8105,
- 7.9743,
- 4.7427,
- 7.9743
- ]
- }
- ],
- "spans": [
- {
- "offset": 807,
- "length": 23
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$500.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.6839,
- 7.9981,
- 7.6886,
- 7.9981,
- 7.9839,
- 6.8105,
- 7.9743
- ]
- }
- ],
- "spans": [
- {
- "offset": 831,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 4,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "AMOUNT DUE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7427,
- 7.9743,
- 6.8105,
- 7.9743,
- 6.8105,
- 8.2839,
- 4.7381,
- 8.2839
- ]
- }
- ],
- "spans": [
- {
- "offset": 839,
- "length": 10
- }
- ]
- },
- {
- "rowIndex": 4,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$610.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.9743,
- 7.9981,
- 7.9839,
- 7.9981,
- 8.2839,
- 6.8105,
- 8.2839
- ]
- }
- ],
- "spans": [
- {
- "offset": 850,
- "length": 7
- }
- ]
- }
- ],
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7456,
- 6.7793,
- 8.0143,
- 6.7788,
- 8.0137,
- 8.2981,
- 4.7446,
- 8.2981
- ]
- }
- ],
- "spans": [
- {
- "offset": 759,
- "length": 98
- }
- ]
- }
- ],
- "documents": [
- {
- "docType": "prebuilt:invoice",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0,
- 0,
- 8.5,
- 0,
- 8.5,
- 11,
- 0,
- 11
- ]
- }
- ],
- "fields": {
- "AmountDue": {
- "type": "number",
- "valueNumber": 610,
- "content": "$610.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 8.0584,
- 7.9181,
- 8.0584,
- 7.9181,
- 8.2022,
- 7.3842,
- 8.2022
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 850,
- "length": 7
- }
- ]
- },
- "BillingAddress": {
- "type": "string",
- "valueString": "123 Bill St, Redmond WA, 98052",
- "content": "123 Bill St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 3.9681,
- 2.0083,
- 3.9681,
- 2.0083,
- 4.3082,
- 0.5943,
- 4.3082
- ]
- }
- ],
- "confidence": 0.947,
- "spans": [
- {
- "offset": 376,
- "length": 12
- },
- {
- "offset": 418,
- "length": 17
- }
- ]
- },
- "BillingAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Finance",
- "content": "Microsoft Finance",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 3.7641,
- 1.7878,
- 3.7641,
- 1.7878,
- 3.8794,
- 0.5943,
- 3.8794
- ]
- }
- ],
- "confidence": 0.957,
- "spans": [
- {
- "offset": 320,
- "length": 17
- }
- ]
- },
- "CustomerAddress": {
- "type": "string",
- "valueString": "123 Other St, Redmond WA, 98052",
- "content": "123 Other St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 2.8476,
- 2.0083,
- 2.8476,
- 2.0083,
- 3.1878,
- 0.5943,
- 3.1878
- ]
- }
- ],
- "confidence": 0.947,
- "spans": [
- {
- "offset": 253,
- "length": 31
- }
- ]
- },
- "CustomerAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Corp",
- "content": "Microsoft Corp",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 2.6436,
- 1.586,
- 2.6436,
- 1.586,
- 2.7871,
- 0.5943,
- 2.7871
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 238,
- "length": 14
- }
- ]
- },
- "CustomerId": {
- "type": "string",
- "valueString": "CID-12345",
- "content": "CID-12345",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3369,
- 2.4491,
- 7.9951,
- 2.4491,
- 7.9951,
- 2.5486,
- 7.3369,
- 2.5486
- ]
- }
- ],
- "confidence": 0.964,
- "spans": [
- {
- "offset": 228,
- "length": 9
- }
- ]
- },
- "CustomerName": {
- "type": "string",
- "valueString": "MICROSOFT CORPORATION",
- "content": "MICROSOFT CORPORATION",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.2419,
- 2.0391,
- 7.9825,
- 2.0391,
- 7.9825,
- 2.1386,
- 6.2419,
- 2.1386
- ]
- }
- ],
- "confidence": 0.949,
- "spans": [
- {
- "offset": 153,
- "length": 21
- }
- ]
- },
- "DueDate": {
- "type": "date",
- "valueDate": "2019-12-15",
- "content": "12/15/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.2494,
- 1.8206,
- 7.993,
- 1.8206,
- 7.993,
- 1.9515,
- 7.2494,
- 1.9515
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 127,
- "length": 10
- }
- ]
- },
- "InvoiceDate": {
- "type": "date",
- "valueDate": "2019-11-15",
- "content": "11/15/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.2528,
- 1.6139,
- 7.993,
- 1.6139,
- 7.993,
- 1.7449,
- 7.2528,
- 1.7449
- ]
- }
- ],
- "confidence": 0.972,
- "spans": [
- {
- "offset": 86,
- "length": 10
- }
- ]
- },
- "InvoiceId": {
- "type": "string",
- "valueString": "INV-100",
- "content": "INV-100",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4959,
- 1.422,
- 7.9988,
- 1.422,
- 7.9988,
- 1.5215,
- 7.4959,
- 1.5215
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 51,
- "length": 7
- }
- ]
- },
- "InvoiceTotal": {
- "type": "number",
- "valueNumber": 110,
- "content": "$110.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 7.465,
- 7.9181,
- 7.465,
- 7.9181,
- 7.6089,
- 7.3842,
- 7.6089
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 799,
- "length": 7
- }
- ]
- },
- "Items": {
- "type": "array",
- "valueArray": [
- {
- "type": "object",
- "valueObject": {
- "Amount": {
- "type": "number",
- "valueNumber": 60,
- "content": "$60.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4642,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8215,
- 7.4642,
- 5.8215
- ]
- }
- ],
- "confidence": 0.902,
- "spans": [
- {
- "offset": 653,
- "length": 6
- }
- ]
- },
- "Date": {
- "type": "date",
- "valueDate": "2021-03-04",
- "content": "3/4/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.682,
- 1.2092,
- 5.682,
- 1.2092,
- 5.8243,
- 0.592,
- 5.8243
- ]
- }
- ],
- "confidence": 0.938,
- "spans": [
- {
- "offset": 600,
- "length": 8
- }
- ]
- },
- "Description": {
- "type": "string",
- "valueString": "Consulting Services",
- "content": "Consulting Services",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.3388,
- 5.6883,
- 3.6278,
- 5.6883,
- 3.6278,
- 5.8312,
- 2.3388,
- 5.8312
- ]
- }
- ],
- "confidence": 0.9,
- "spans": [
- {
- "offset": 614,
- "length": 19
- }
- ]
- },
- "ProductCode": {
- "type": "string",
- "valueString": "A123",
- "content": "A123",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.6069,
- 5.6948,
- 1.9417,
- 5.6948,
- 1.9417,
- 5.803,
- 1.6069,
- 5.803
- ]
- }
- ],
- "confidence": 0.877,
- "spans": [
- {
- "offset": 609,
- "length": 4
- }
- ]
- },
- "Quantity": {
- "type": "number",
- "valueNumber": 2,
- "content": "2",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.5977,
- 5.6948,
- 4.6635,
- 5.6948,
- 4.6635,
- 5.8017,
- 4.5977,
- 5.8017
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 634,
- "length": 1
- }
- ]
- },
- "Tax": {
- "type": "number",
- "content": "10%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.7168,
- 5.6932,
- 6.9826,
- 5.6932,
- 6.9826,
- 5.8045,
- 6.7168,
- 5.8045
- ]
- }
- ],
- "confidence": 0.78,
- "spans": [
- {
- "offset": 649,
- "length": 3
- }
- ]
- },
- "Unit": {
- "type": "string",
- "valueString": "hours",
- "content": "hours",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.8444,
- 5.6883,
- 5.2071,
- 5.6883,
- 5.2071,
- 5.803,
- 4.8444,
- 5.803
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 636,
- "length": 5
- }
- ]
- },
- "UnitPrice": {
- "type": "number",
- "valueNumber": 30,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.9669,
- 5.6777,
- 6.4142,
- 5.6777,
- 6.4142,
- 5.8215,
- 5.9669,
- 5.8215
- ]
- }
- ],
- "confidence": 0.828,
- "spans": [
- {
- "offset": 642,
- "length": 6
- }
- ]
- }
- },
- "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8312,
- 0.592,
- 5.8312
- ]
- }
- ],
- "confidence": 0.955,
- "spans": [
- {
- "offset": 600,
- "length": 59
- }
- ]
- },
- {
- "type": "object",
- "valueObject": {
- "Amount": {
- "type": "number",
- "valueNumber": 30,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4642,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.1182,
- 7.4642,
- 6.1182
- ]
- }
- ],
- "confidence": 0.916,
- "spans": [
- {
- "offset": 699,
- "length": 6
- }
- ]
- },
- "Date": {
- "type": "date",
- "valueDate": "2021-03-05",
- "content": "3/5/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.9787,
- 1.2088,
- 5.9787,
- 1.2088,
- 6.121,
- 0.592,
- 6.121
- ]
- }
- ],
- "confidence": 0.902,
- "spans": [
- {
- "offset": 660,
- "length": 8
- }
- ]
- },
- "Description": {
- "type": "string",
- "valueString": "Document Fee",
- "content": "Document Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.345,
- 5.993,
- 3.3096,
- 5.993,
- 3.3096,
- 6.0997,
- 2.345,
- 6.0997
- ]
- }
- ],
- "confidence": 0.901,
- "spans": [
- {
- "offset": 674,
- "length": 12
- }
- ]
- },
- "ProductCode": {
- "type": "string",
- "valueString": "B456",
- "content": "B456",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.6214,
- 5.9915,
- 1.9419,
- 5.9915,
- 1.9419,
- 6.0997,
- 1.6214,
- 6.0997
- ]
- }
- ],
- "confidence": 0.886,
- "spans": [
- {
- "offset": 669,
- "length": 4
- }
- ]
- },
- "Quantity": {
- "type": "number",
- "valueNumber": 3,
- "content": "3",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.5967,
- 5.9915,
- 4.6627,
- 5.9915,
- 4.6627,
- 6.0997,
- 4.5967,
- 6.0997
- ]
- }
- ],
- "confidence": 0.898,
- "spans": [
- {
- "offset": 687,
- "length": 1
- }
- ]
- },
- "Tax": {
- "type": "number",
- "content": "5%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.7508,
- 5.9898,
- 6.9393,
- 5.9898,
- 6.9393,
- 6.1012,
- 6.7508,
- 6.1012
- ]
- }
- ],
- "confidence": 0.772,
- "spans": [
- {
- "offset": 696,
- "length": 2
- }
- ]
- },
- "UnitPrice": {
- "type": "number",
- "valueNumber": 10,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.9669,
- 5.9743,
- 6.4142,
- 5.9743,
- 6.4142,
- 6.1182,
- 5.9669,
- 6.1182
- ]
- }
- ],
- "confidence": 0.831,
- "spans": [
- {
- "offset": 689,
- "length": 6
- }
- ]
- }
- },
- "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.121,
- 0.592,
- 6.121
- ]
- }
- ],
- "confidence": 0.941,
- "spans": [
- {
- "offset": 660,
- "length": 45
- }
- ]
- },
- {
- "type": "object",
- "valueObject": {
- "Amount": {
- "type": "number",
- "valueNumber": 10,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4642,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4184,
- 7.4642,
- 6.4184
- ]
- }
- ],
- "confidence": 0.959,
- "spans": [
- {
- "offset": 752,
- "length": 6
- }
- ]
- },
- "Date": {
- "type": "date",
- "valueDate": "2021-03-06",
- "content": "3/6/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 6.2789,
- 1.2088,
- 6.2789,
- 1.2088,
- 6.4213,
- 0.592,
- 6.4213
- ]
- }
- ],
- "confidence": 0.903,
- "spans": [
- {
- "offset": 706,
- "length": 8
- }
- ]
- },
- "Description": {
- "type": "string",
- "valueString": "Printing Fee",
- "content": "Printing Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.345,
- 6.2906,
- 3.1351,
- 6.2906,
- 3.1351,
- 6.4281,
- 2.345,
- 6.4281
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 720,
- "length": 12
- }
- ]
- },
- "ProductCode": {
- "type": "string",
- "valueString": "C789",
- "content": "C789",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.6152,
- 6.2918,
- 1.94,
- 6.2918,
- 1.94,
- 6.3999,
- 1.6152,
- 6.3999
- ]
- }
- ],
- "confidence": 0.898,
- "spans": [
- {
- "offset": 715,
- "length": 4
- }
- ]
- },
- "Quantity": {
- "type": "number",
- "valueNumber": 10,
- "content": "10",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.5158,
- 6.2918,
- 4.6637,
- 6.2918,
- 4.6637,
- 6.3999,
- 4.5158,
- 6.3999
- ]
- }
- ],
- "confidence": 0.903,
- "spans": [
- {
- "offset": 733,
- "length": 2
- }
- ]
- },
- "Tax": {
- "type": "number",
- "content": "20%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.712,
- 6.2901,
- 6.9826,
- 6.2901,
- 6.9826,
- 6.4014,
- 6.712,
- 6.4014
- ]
- }
- ],
- "confidence": 0.791,
- "spans": [
- {
- "offset": 748,
- "length": 3
- }
- ]
- },
- "Unit": {
- "type": "string",
- "valueString": "pages",
- "content": "pages",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.8444,
- 6.3196,
- 5.2199,
- 6.3196,
- 5.2199,
- 6.4281,
- 4.8444,
- 6.4281
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 736,
- "length": 5
- }
- ]
- },
- "UnitPrice": {
- "type": "number",
- "valueNumber": 1,
- "content": "$1.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.0502,
- 6.2746,
- 6.4142,
- 6.2746,
- 6.4142,
- 6.4184,
- 6.0502,
- 6.4184
- ]
- }
- ],
- "confidence": 0.829,
- "spans": [
- {
- "offset": 742,
- "length": 5
- }
- ]
- }
- },
- "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4281,
- 0.592,
- 6.4281
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 706,
- "length": 52
- }
- ]
- }
- ]
- },
- "Locale": {
- "type": "string",
- "valueString": "en-US",
- "confidence": 1
- },
- "PreviousUnpaidBalance": {
- "type": "number",
- "valueNumber": 500,
- "content": "$500.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 7.7617,
- 7.9181,
- 7.7617,
- 7.9181,
- 7.9055,
- 7.3842,
- 7.9055
- ]
- }
- ],
- "confidence": 0.962,
- "spans": [
- {
- "offset": 831,
- "length": 7
- }
- ]
- },
- "PurchaseOrder": {
- "type": "string",
- "valueString": "PO-3333",
- "content": "PO-3333",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.9114,
- 4.9282,
- 2.4718,
- 4.9282,
- 2.4718,
- 5.0363,
- 1.9114,
- 5.0363
- ]
- }
- ],
- "confidence": 0.967,
- "spans": [
- {
- "offset": 541,
- "length": 7
- }
- ]
- },
- "RemittanceAddress": {
- "type": "string",
- "valueString": "123 Remit St New York, NY, 10001",
- "content": "123 Remit St New York, NY, 10001",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 9.5717,
- 1.9882,
- 9.5717,
- 1.9882,
- 9.9098,
- 0.5943,
- 9.9098
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 913,
- "length": 32
- }
- ]
- },
- "RemittanceAddressRecipient": {
- "type": "string",
- "valueString": "Contoso Billing",
- "content": "Contoso Billing",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5882,
- 9.3631,
- 1.5828,
- 9.3631,
- 1.5828,
- 9.5059,
- 0.5882,
- 9.5059
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 897,
- "length": 15
- }
- ]
- },
- "ServiceAddress": {
- "type": "string",
- "valueString": "123 Service St, Redmond WA, 98052",
- "content": "123 Service St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.2197,
- 3.9734,
- 7.6337,
- 3.9734,
- 7.6337,
- 4.3082,
- 6.2197,
- 4.3082
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 402,
- "length": 15
- },
- {
- "offset": 454,
- "length": 17
- }
- ]
- },
- "ServiceAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Services",
- "content": "Microsoft Services",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.2197,
- 3.7641,
- 7.4427,
- 3.7641,
- 7.4427,
- 3.8794,
- 6.2197,
- 3.8794
- ]
- }
- ],
- "confidence": 0.951,
- "spans": [
- {
- "offset": 357,
- "length": 18
- }
- ]
- },
- "ServiceEndDate": {
- "type": "date",
- "valueDate": "2019-11-14",
- "content": "11/14/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.2528,
- 2.2306,
- 7.9952,
- 2.2306,
- 7.9952,
- 2.3615,
- 7.2528,
- 2.3615
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 204,
- "length": 10
- }
- ]
- },
- "ServiceStartDate": {
- "type": "date",
- "valueDate": "2019-10-14",
- "content": "10/14/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.3357,
- 2.2306,
- 7.0749,
- 2.2306,
- 7.0749,
- 2.3615,
- 6.3357,
- 2.3615
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 191,
- "length": 10
- }
- ]
- },
- "ShippingAddress": {
- "type": "string",
- "valueString": "123 Ship St, Redmond WA, 98052",
- "content": "123 Ship St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3454,
- 3.9681,
- 4.7594,
- 3.9681,
- 4.7594,
- 4.3082,
- 3.3454,
- 4.3082
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 389,
- "length": 12
- },
- {
- "offset": 436,
- "length": 17
- }
- ]
- },
- "ShippingAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Delivery",
- "content": "Microsoft Delivery",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3454,
- 3.7641,
- 4.5762,
- 3.7641,
- 4.5762,
- 3.9076,
- 3.3454,
- 3.9076
- ]
- }
- ],
- "confidence": 0.955,
- "spans": [
- {
- "offset": 338,
- "length": 18
- }
- ]
- },
- "SubTotal": {
- "type": "number",
- "valueNumber": 100,
- "content": "$100.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 6.8679,
- 7.9181,
- 6.8679,
- 7.9181,
- 7.0118,
- 7.3842,
- 7.0118
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 768,
- "length": 7
- }
- ]
- },
- "TotalTax": {
- "type": "number",
- "valueNumber": 10,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4709,
- 7.165,
- 7.9182,
- 7.165,
- 7.9182,
- 7.3089,
- 7.4709,
- 7.3089
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 786,
- "length": 6
- }
- ]
- },
- "VendorAddress": {
- "type": "string",
- "valueString": "123 456th St New York, NY, 10001",
- "content": "123 456th St New York, NY, 10001",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 1.6092,
- 1.9894,
- 1.6092,
- 1.9894,
- 1.9675,
- 0.5943,
- 1.9675
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 59,
- "length": 12
- },
- {
- "offset": 97,
- "length": 19
- }
- ]
- },
- "VendorAddressRecipient": {
- "type": "string",
- "valueString": "Contoso Headquarters",
- "content": "Contoso Headquarters",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5882,
- 1.4239,
- 2.0978,
- 1.4239,
- 2.0978,
- 1.5664,
- 0.5882,
- 1.5664
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 21,
- "length": 20
- }
- ]
- },
- "VendorName": {
- "type": "string",
- "valueString": "CONTOSO LTD.",
- "content": "CONTOSO LTD.",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5911,
- 0.6857,
- 2.3181,
- 0.6857,
- 2.3181,
- 0.8664,
- 0.5911,
- 0.8664
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 0,
- "length": 12
- }
- ]
- }
- },
- "confidence": 1,
- "spans": [
- {
- "offset": 0,
- "length": 958
- }
- ]
- }
- ]
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "prebuilt-invoice",
+ "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "succeeded",
+ "createdDateTime": "2021-09-24T13:00:46Z",
+ "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
+ "analyzeResult": {
+ "apiVersion": "2023-02-28-preview",
+ "modelId": "prebuilt-invoice",
+ "stringIndexType": "textElements",
+ "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:",
+ "pages": [
+ {
+ "kind": "document",
+ "pageNumber": 1,
+ "angle": 0,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "words": [
+ {
+ "content": "CONTOSO",
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 1.7451,
+ 0.6857,
+ 1.7451,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 0,
+ "length": 7
+ }
+ },
+ {
+ "content": "LTD.",
+ "polygon": [
+ 1.8441,
+ 0.6879,
+ 2.3181,
+ 0.6879,
+ 2.3181,
+ 0.865,
+ 1.8441,
+ 0.865
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 8,
+ "length": 4
+ }
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 7.0751,
+ 0.589,
+ 7.9886,
+ 0.589,
+ 7.9886,
+ 0.7697,
+ 7.0751,
+ 0.7697
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 13,
+ "length": 7
+ }
+ },
+ {
+ "content": "Contoso",
+ "polygon": [
+ 0.5882,
+ 1.4303,
+ 1.1337,
+ 1.4303,
+ 1.1337,
+ 1.5383,
+ 0.5882,
+ 1.5383
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 21,
+ "length": 7
+ }
+ },
+ {
+ "content": "Headquarters",
+ "polygon": [
+ 1.1905,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 1.1905,
+ 1.5664
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 29,
+ "length": 12
+ }
+ },
+ {
+ "content": "INVOICE:",
+ "polygon": [
+ 6.8599,
+ 1.4217,
+ 7.4328,
+ 1.4217,
+ 7.4328,
+ 1.5218,
+ 6.8599,
+ 1.5218
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 42,
+ "length": 8
+ }
+ },
+ {
+ "content": "INV-100",
+ "polygon": [
+ 7.4959,
+ 1.422,
+ 7.9988,
+ 1.422,
+ 7.9988,
+ 1.5215,
+ 7.4959,
+ 1.5215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 51,
+ "length": 7
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 1.6339,
+ 0.8213,
+ 1.6339,
+ 0.8213,
+ 1.742,
+ 0.5945,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 59,
+ "length": 3
+ }
+ },
+ {
+ "content": "456th",
+ "polygon": [
+ 0.874,
+ 1.6092,
+ 1.2102,
+ 1.6092,
+ 1.2102,
+ 1.742,
+ 0.874,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 63,
+ "length": 5
+ }
+ },
+ {
+ "content": "St",
+ "polygon": [
+ 1.2598,
+ 1.6339,
+ 1.3812,
+ 1.6339,
+ 1.3812,
+ 1.742,
+ 1.2598,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 69,
+ "length": 2
+ }
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 6.2263,
+ 1.6254,
+ 6.7562,
+ 1.6254,
+ 6.7562,
+ 1.7256,
+ 6.2263,
+ 1.7256
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 72,
+ "length": 7
+ }
+ },
+ {
+ "content": "DATE:",
+ "polygon": [
+ 6.8132,
+ 1.6267,
+ 7.1891,
+ 1.6267,
+ 7.1891,
+ 1.7248,
+ 6.8132,
+ 1.7248
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 80,
+ "length": 5
+ }
+ },
+ {
+ "content": "11/15/2019",
+ "polygon": [
+ 7.2528,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 7.2528,
+ 1.7449
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 86,
+ "length": 10
+ }
+ },
+ {
+ "content": "New",
+ "polygon": [
+ 0.5943,
+ 1.8385,
+ 0.8848,
+ 1.8385,
+ 0.8848,
+ 1.9454,
+ 0.5943,
+ 1.9454
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 97,
+ "length": 3
+ }
+ },
+ {
+ "content": "York,",
+ "polygon": [
+ 0.9293,
+ 1.8307,
+ 1.2568,
+ 1.8307,
+ 1.2568,
+ 1.9675,
+ 0.9293,
+ 1.9675
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 101,
+ "length": 5
+ }
+ },
+ {
+ "content": "NY,",
+ "polygon": [
+ 1.3205,
+ 1.8382,
+ 1.5242,
+ 1.8382,
+ 1.5242,
+ 1.9675,
+ 1.3205,
+ 1.9675
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 107,
+ "length": 3
+ }
+ },
+ {
+ "content": "10001",
+ "polygon": [
+ 1.5915,
+ 1.8372,
+ 1.9894,
+ 1.8372,
+ 1.9894,
+ 1.9454,
+ 1.5915,
+ 1.9454
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 111,
+ "length": 5
+ }
+ },
+ {
+ "content": "DUE",
+ "polygon": [
+ 6.4966,
+ 1.8333,
+ 6.7569,
+ 1.8333,
+ 6.7569,
+ 1.9322,
+ 6.4966,
+ 1.9322
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 117,
+ "length": 3
+ }
+ },
+ {
+ "content": "DATE:",
+ "polygon": [
+ 6.8126,
+ 1.8333,
+ 7.1846,
+ 1.8333,
+ 7.1846,
+ 1.9315,
+ 6.8126,
+ 1.9315
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 121,
+ "length": 5
+ }
+ },
+ {
+ "content": "12/15/2019",
+ "polygon": [
+ 7.2494,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 7.2494,
+ 1.9515
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 127,
+ "length": 10
+ }
+ },
+ {
+ "content": "CUSTOMER",
+ "polygon": [
+ 4.9513,
+ 2.0388,
+ 5.6868,
+ 2.0388,
+ 5.6868,
+ 2.1389,
+ 4.9513,
+ 2.1389
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 138,
+ "length": 8
+ }
+ },
+ {
+ "content": "NAME:",
+ "polygon": [
+ 5.7412,
+ 2.04,
+ 6.1764,
+ 2.04,
+ 6.1764,
+ 2.1381,
+ 5.7412,
+ 2.1381
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 147,
+ "length": 5
+ }
+ },
+ {
+ "content": "MICROSOFT",
+ "polygon": [
+ 6.2419,
+ 2.0391,
+ 6.9981,
+ 2.0391,
+ 6.9981,
+ 2.1386,
+ 6.2419,
+ 2.1386
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 153,
+ "length": 9
+ }
+ },
+ {
+ "content": "CORPORATION",
+ "polygon": [
+ 7.0448,
+ 2.0391,
+ 7.9825,
+ 2.0391,
+ 7.9825,
+ 2.1386,
+ 7.0448,
+ 2.1386
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 163,
+ "length": 11
+ }
+ },
+ {
+ "content": "SERVICE",
+ "polygon": [
+ 5.1667,
+ 2.2421,
+ 5.6923,
+ 2.2421,
+ 5.6923,
+ 2.3422,
+ 5.1667,
+ 2.3422
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 175,
+ "length": 7
+ }
+ },
+ {
+ "content": "PERIOD:",
+ "polygon": [
+ 5.748,
+ 2.2421,
+ 6.2721,
+ 2.2421,
+ 6.2721,
+ 2.3422,
+ 5.748,
+ 2.3422
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 183,
+ "length": 7
+ }
+ },
+ {
+ "content": "10/14/2019",
+ "polygon": [
+ 6.3357,
+ 2.2306,
+ 7.0749,
+ 2.2306,
+ 7.0749,
+ 2.3615,
+ 6.3357,
+ 2.3615
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 191,
+ "length": 10
+ }
+ },
+ {
+ "content": "–",
+ "polygon": [
+ 7.122,
+ 2.2922,
+ 7.1995,
+ 2.2922,
+ 7.1995,
+ 2.3037,
+ 7.122,
+ 2.3037
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 202,
+ "length": 1
+ }
+ },
+ {
+ "content": "11/14/2019",
+ "polygon": [
+ 7.2528,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 7.2528,
+ 2.3615
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 204,
+ "length": 10
+ }
+ },
+ {
+ "content": "CUSTOMER",
+ "polygon": [
+ 6.3253,
+ 2.4488,
+ 7.0608,
+ 2.4488,
+ 7.0608,
+ 2.5489,
+ 6.3253,
+ 2.5489
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 215,
+ "length": 8
+ }
+ },
+ {
+ "content": "ID:",
+ "polygon": [
+ 7.1153,
+ 2.45,
+ 7.2809,
+ 2.45,
+ 7.2809,
+ 2.5481,
+ 7.1153,
+ 2.5481
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 224,
+ "length": 3
+ }
+ },
+ {
+ "content": "CID-12345",
+ "polygon": [
+ 7.3369,
+ 2.4491,
+ 7.9951,
+ 2.4491,
+ 7.9951,
+ 2.5486,
+ 7.3369,
+ 2.5486
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 228,
+ "length": 9
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.2303,
+ 2.6436,
+ 1.2303,
+ 2.759,
+ 0.5943,
+ 2.759
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 238,
+ "length": 9
+ }
+ },
+ {
+ "content": "Corp",
+ "polygon": [
+ 1.2808,
+ 2.651,
+ 1.586,
+ 2.651,
+ 1.586,
+ 2.7871,
+ 1.2808,
+ 2.7871
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 248,
+ "length": 4
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 2.8541,
+ 0.8213,
+ 2.8541,
+ 0.8213,
+ 2.9623,
+ 0.5945,
+ 2.9623
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 253,
+ "length": 3
+ }
+ },
+ {
+ "content": "Other",
+ "polygon": [
+ 0.875,
+ 2.8476,
+ 1.262,
+ 2.8476,
+ 1.262,
+ 2.9623,
+ 0.875,
+ 2.9623
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 257,
+ "length": 5
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 1.3058,
+ 2.8541,
+ 1.4633,
+ 2.8541,
+ 1.4633,
+ 2.9845,
+ 1.3058,
+ 2.9845
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 263,
+ "length": 3
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 0.5943,
+ 3.0513,
+ 1.2222,
+ 3.0513,
+ 1.2222,
+ 3.1656,
+ 0.5943,
+ 3.1656
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 267,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 1.2753,
+ 3.0585,
+ 1.5468,
+ 3.0585,
+ 1.5468,
+ 3.1878,
+ 1.2753,
+ 3.1878
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 275,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 1.6033,
+ 3.0575,
+ 2.0083,
+ 3.0575,
+ 2.0083,
+ 3.1656,
+ 1.6033,
+ 3.1656
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 279,
+ "length": 5
+ }
+ },
+ {
+ "content": "BILL",
+ "polygon": [
+ 0.5909,
+ 3.5603,
+ 0.8438,
+ 3.5603,
+ 0.8438,
+ 3.6579,
+ 0.5909,
+ 3.6579
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 285,
+ "length": 4
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 0.8846,
+ 3.559,
+ 1.1032,
+ 3.559,
+ 1.1032,
+ 3.6592,
+ 0.8846,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 290,
+ "length": 3
+ }
+ },
+ {
+ "content": "SHIP",
+ "polygon": [
+ 3.3361,
+ 3.559,
+ 3.6278,
+ 3.559,
+ 3.6278,
+ 3.6592,
+ 3.3361,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 294,
+ "length": 4
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 3.6716,
+ 3.559,
+ 3.8903,
+ 3.559,
+ 3.8903,
+ 3.6592,
+ 3.6716,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 299,
+ "length": 3
+ }
+ },
+ {
+ "content": "SERVICE",
+ "polygon": [
+ 6.2104,
+ 3.559,
+ 6.7361,
+ 3.559,
+ 6.7361,
+ 3.6592,
+ 6.2104,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 303,
+ "length": 7
+ }
+ },
+ {
+ "content": "ADDRESS:",
+ "polygon": [
+ 6.7828,
+ 3.559,
+ 7.4232,
+ 3.559,
+ 7.4232,
+ 3.6592,
+ 6.7828,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 311,
+ "length": 8
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.2303,
+ 3.7641,
+ 1.2303,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 320,
+ "length": 9
+ }
+ },
+ {
+ "content": "Finance",
+ "polygon": [
+ 1.287,
+ 3.7701,
+ 1.7878,
+ 3.7701,
+ 1.7878,
+ 3.8794,
+ 1.287,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 330,
+ "length": 7
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 3.9814,
+ 3.7641,
+ 3.9814,
+ 3.8794,
+ 3.3454,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 338,
+ "length": 9
+ }
+ },
+ {
+ "content": "Delivery",
+ "polygon": [
+ 4.0381,
+ 3.7647,
+ 4.5762,
+ 3.7647,
+ 4.5762,
+ 3.9076,
+ 4.0381,
+ 3.9076
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 348,
+ "length": 8
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 6.8557,
+ 3.7641,
+ 6.8557,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 357,
+ "length": 9
+ }
+ },
+ {
+ "content": "Services",
+ "polygon": [
+ 6.9042,
+ 3.7701,
+ 7.4427,
+ 3.7701,
+ 7.4427,
+ 3.8794,
+ 6.9042,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 367,
+ "length": 8
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 3.9746,
+ 0.8213,
+ 3.9746,
+ 0.8213,
+ 4.0827,
+ 0.5945,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 376,
+ "length": 3
+ }
+ },
+ {
+ "content": "Bill",
+ "polygon": [
+ 0.8842,
+ 3.9681,
+ 1.0657,
+ 3.9681,
+ 1.0657,
+ 4.0817,
+ 0.8842,
+ 4.0817
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 380,
+ "length": 4
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 1.1222,
+ 3.9746,
+ 1.2765,
+ 3.9746,
+ 1.2765,
+ 4.1049,
+ 1.1222,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 385,
+ "length": 3
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 3.3456,
+ 3.9746,
+ 3.5724,
+ 3.9746,
+ 3.5724,
+ 4.0827,
+ 3.3456,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 389,
+ "length": 3
+ }
+ },
+ {
+ "content": "Ship",
+ "polygon": [
+ 3.6239,
+ 3.9681,
+ 3.9042,
+ 3.9681,
+ 3.9042,
+ 4.1109,
+ 3.6239,
+ 4.1109
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 393,
+ "length": 4
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 3.9536,
+ 3.9746,
+ 4.1111,
+ 3.9746,
+ 4.1111,
+ 4.1049,
+ 3.9536,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 398,
+ "length": 3
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 6.2199,
+ 3.9746,
+ 6.4467,
+ 3.9746,
+ 6.4467,
+ 4.0827,
+ 6.2199,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 402,
+ "length": 3
+ }
+ },
+ {
+ "content": "Service",
+ "polygon": [
+ 6.4985,
+ 3.9734,
+ 6.9738,
+ 3.9734,
+ 6.9738,
+ 4.0827,
+ 6.4985,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 406,
+ "length": 7
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 7.0246,
+ 3.9746,
+ 7.1821,
+ 3.9746,
+ 7.1821,
+ 4.1049,
+ 7.0246,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 414,
+ "length": 3
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 0.5943,
+ 4.1717,
+ 1.2222,
+ 4.1717,
+ 1.2222,
+ 4.2861,
+ 0.5943,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 418,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 1.2753,
+ 4.1789,
+ 1.5468,
+ 4.1789,
+ 1.5468,
+ 4.3082,
+ 1.2753,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 426,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 1.6033,
+ 4.1779,
+ 2.0083,
+ 4.1779,
+ 2.0083,
+ 4.2861,
+ 1.6033,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 430,
+ "length": 5
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 3.3454,
+ 4.1717,
+ 3.9732,
+ 4.1717,
+ 3.9732,
+ 4.2861,
+ 3.3454,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 436,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 4.0264,
+ 4.1789,
+ 4.2979,
+ 4.1789,
+ 4.2979,
+ 4.3082,
+ 4.0264,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 444,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 4.3544,
+ 4.1779,
+ 4.7594,
+ 4.1779,
+ 4.7594,
+ 4.2861,
+ 4.3544,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 448,
+ "length": 5
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 6.2197,
+ 4.1717,
+ 6.8475,
+ 4.1717,
+ 6.8475,
+ 4.2861,
+ 6.2197,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 454,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 6.9007,
+ 4.1789,
+ 7.1722,
+ 4.1789,
+ 7.1722,
+ 4.3082,
+ 6.9007,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 462,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 7.2287,
+ 4.1779,
+ 7.6337,
+ 4.1779,
+ 7.6337,
+ 4.2861,
+ 7.2287,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 466,
+ "length": 5
+ }
+ },
+ {
+ "content": "SALESPERSON",
+ "polygon": [
+ 0.7018,
+ 4.6528,
+ 1.6092,
+ 4.6528,
+ 1.6092,
+ 4.7529,
+ 0.7018,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 472,
+ "length": 11
+ }
+ },
+ {
+ "content": "P.O.",
+ "polygon": [
+ 2.1216,
+ 4.6528,
+ 2.3788,
+ 4.6528,
+ 2.3788,
+ 4.7529,
+ 2.1216,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 484,
+ "length": 4
+ }
+ },
+ {
+ "content": "NUMBER",
+ "polygon": [
+ 2.4376,
+ 4.654,
+ 3.0155,
+ 4.654,
+ 3.0155,
+ 4.7529,
+ 2.4376,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 489,
+ "length": 6
+ }
+ },
+ {
+ "content": "REQUISITIONER",
+ "polygon": [
+ 3.4953,
+ 4.6528,
+ 4.5157,
+ 4.6528,
+ 4.5157,
+ 4.7687,
+ 3.4953,
+ 4.7687
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 496,
+ "length": 13
+ }
+ },
+ {
+ "content": "SHIPPED",
+ "polygon": [
+ 4.81,
+ 4.6528,
+ 5.362,
+ 4.6528,
+ 5.362,
+ 4.7529,
+ 4.81,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 510,
+ "length": 7
+ }
+ },
+ {
+ "content": "VIA",
+ "polygon": [
+ 5.409,
+ 4.654,
+ 5.6317,
+ 4.654,
+ 5.6317,
+ 4.7517,
+ 5.409,
+ 4.7517
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 518,
+ "length": 3
+ }
+ },
+ {
+ "content": "F.O.B.",
+ "polygon": [
+ 5.8696,
+ 4.6528,
+ 6.2467,
+ 4.6528,
+ 6.2467,
+ 4.7529,
+ 5.8696,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 522,
+ "length": 6
+ }
+ },
+ {
+ "content": "POINT",
+ "polygon": [
+ 6.3054,
+ 4.6528,
+ 6.706,
+ 4.6528,
+ 6.706,
+ 4.7529,
+ 6.3054,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 529,
+ "length": 5
+ }
+ },
+ {
+ "content": "TERMS",
+ "polygon": [
+ 7.1806,
+ 4.6528,
+ 7.6304,
+ 4.6528,
+ 7.6304,
+ 4.7529,
+ 7.1806,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 535,
+ "length": 5
+ }
+ },
+ {
+ "content": "PO-3333",
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 541,
+ "length": 7
+ }
+ },
+ {
+ "content": "DATE",
+ "polygon": [
+ 0.7409,
+ 5.421,
+ 1.0744,
+ 5.421,
+ 1.0744,
+ 5.5186,
+ 0.7409,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 549,
+ "length": 4
+ }
+ },
+ {
+ "content": "ITEM",
+ "polygon": [
+ 1.4213,
+ 5.421,
+ 1.7338,
+ 5.421,
+ 1.7338,
+ 5.5186,
+ 1.4213,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 554,
+ "length": 4
+ }
+ },
+ {
+ "content": "CODE",
+ "polygon": [
+ 1.7893,
+ 5.4197,
+ 2.1407,
+ 5.4197,
+ 2.1407,
+ 5.5199,
+ 1.7893,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 559,
+ "length": 4
+ }
+ },
+ {
+ "content": "DESCRIPTION",
+ "polygon": [
+ 2.8516,
+ 5.4197,
+ 3.7134,
+ 5.4197,
+ 3.7134,
+ 5.5199,
+ 2.8516,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 564,
+ "length": 11
+ }
+ },
+ {
+ "content": "QTY",
+ "polygon": [
+ 4.4043,
+ 5.4197,
+ 4.6631,
+ 5.4197,
+ 4.6631,
+ 5.5357,
+ 4.4043,
+ 5.5357
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 576,
+ "length": 3
+ }
+ },
+ {
+ "content": "UM",
+ "polygon": [
+ 5.049,
+ 5.421,
+ 5.2654,
+ 5.421,
+ 5.2654,
+ 5.5199,
+ 5.049,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 580,
+ "length": 2
+ }
+ },
+ {
+ "content": "PRICE",
+ "polygon": [
+ 5.8563,
+ 5.4199,
+ 6.2163,
+ 5.4199,
+ 6.2163,
+ 5.5197,
+ 5.8563,
+ 5.5197
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 583,
+ "length": 5
+ }
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.7169,
+ 5.421,
+ 6.974,
+ 5.421,
+ 6.974,
+ 5.5186,
+ 6.7169,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 589,
+ "length": 3
+ }
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 7.2847,
+ 5.4197,
+ 7.9039,
+ 5.4197,
+ 7.9039,
+ 5.5199,
+ 7.2847,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 593,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/4/2021",
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 600,
+ "length": 8
+ }
+ },
+ {
+ "content": "A123",
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 609,
+ "length": 4
+ }
+ },
+ {
+ "content": "Consulting",
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.0438,
+ 5.6883,
+ 3.0438,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 614,
+ "length": 10
+ }
+ },
+ {
+ "content": "Services",
+ "polygon": [
+ 3.0925,
+ 5.6937,
+ 3.6278,
+ 5.6937,
+ 3.6278,
+ 5.803,
+ 3.0925,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 625,
+ "length": 8
+ }
+ },
+ {
+ "content": "2",
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 634,
+ "length": 1
+ }
+ },
+ {
+ "content": "hours",
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 636,
+ "length": 5
+ }
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 642,
+ "length": 6
+ }
+ },
+ {
+ "content": "10%",
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 649,
+ "length": 3
+ }
+ },
+ {
+ "content": "$60.00",
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 653,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/5/2021",
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 660,
+ "length": 8
+ }
+ },
+ {
+ "content": "B456",
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 669,
+ "length": 4
+ }
+ },
+ {
+ "content": "Document",
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.0318,
+ 5.993,
+ 3.0318,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 674,
+ "length": 8
+ }
+ },
+ {
+ "content": "Fee",
+ "polygon": [
+ 3.0887,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 3.0887,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 683,
+ "length": 3
+ }
+ },
+ {
+ "content": "3",
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 687,
+ "length": 1
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 689,
+ "length": 6
+ }
+ },
+ {
+ "content": "5%",
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 696,
+ "length": 2
+ }
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 699,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/6/2021",
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 706,
+ "length": 8
+ }
+ },
+ {
+ "content": "C789",
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 715,
+ "length": 4
+ }
+ },
+ {
+ "content": "Printing",
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 2.8575,
+ 6.2906,
+ 2.8575,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 720,
+ "length": 8
+ }
+ },
+ {
+ "content": "Fee",
+ "polygon": [
+ 2.9143,
+ 6.2933,
+ 3.1351,
+ 6.2933,
+ 3.1351,
+ 6.3999,
+ 2.9143,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 729,
+ "length": 3
+ }
+ },
+ {
+ "content": "10",
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 733,
+ "length": 2
+ }
+ },
+ {
+ "content": "pages",
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 736,
+ "length": 5
+ }
+ },
+ {
+ "content": "$1.00",
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 742,
+ "length": 5
+ }
+ },
+ {
+ "content": "20%",
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 748,
+ "length": 3
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 752,
+ "length": 6
+ }
+ },
+ {
+ "content": "SUBTOTAL",
+ "polygon": [
+ 6.0282,
+ 6.9118,
+ 6.7309,
+ 6.9118,
+ 6.7309,
+ 7.0199,
+ 6.0282,
+ 7.0199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 759,
+ "length": 8
+ }
+ },
+ {
+ "content": "$100.00",
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 768,
+ "length": 7
+ }
+ },
+ {
+ "content": "SALES",
+ "polygon": [
+ 6.0382,
+ 7.2089,
+ 6.4262,
+ 7.2089,
+ 6.4262,
+ 7.317,
+ 6.0382,
+ 7.317
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 776,
+ "length": 5
+ }
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.4702,
+ 7.2099,
+ 6.728,
+ 7.2099,
+ 6.728,
+ 7.316,
+ 6.4702,
+ 7.316
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 782,
+ "length": 3
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 786,
+ "length": 6
+ }
+ },
+ {
+ "content": "TOTAL",
+ "polygon": [
+ 6.2969,
+ 7.5089,
+ 6.7309,
+ 7.5089,
+ 6.7309,
+ 7.617,
+ 6.2969,
+ 7.617
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 793,
+ "length": 5
+ }
+ },
+ {
+ "content": "$110.00",
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 799,
+ "length": 7
+ }
+ },
+ {
+ "content": "PREVIOUS",
+ "polygon": [
+ 4.8126,
+ 7.8055,
+ 5.4789,
+ 7.8055,
+ 5.4789,
+ 7.9137,
+ 4.8126,
+ 7.9137
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 807,
+ "length": 8
+ }
+ },
+ {
+ "content": "UNPAID",
+ "polygon": [
+ 5.5362,
+ 7.8065,
+ 6.057,
+ 7.8065,
+ 6.057,
+ 7.9137,
+ 5.5362,
+ 7.9137
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 816,
+ "length": 6
+ }
+ },
+ {
+ "content": "BALANCE",
+ "polygon": [
+ 6.1164,
+ 7.8057,
+ 6.7249,
+ 7.8057,
+ 6.7249,
+ 7.9135,
+ 6.1164,
+ 7.9135
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 823,
+ "length": 7
+ }
+ },
+ {
+ "content": "$500.00",
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 831,
+ "length": 7
+ }
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 5.7652,
+ 8.1022,
+ 6.4055,
+ 8.1022,
+ 6.4055,
+ 8.2104,
+ 5.7652,
+ 8.2104
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 839,
+ "length": 6
+ }
+ },
+ {
+ "content": "DUE",
+ "polygon": [
+ 6.4562,
+ 8.1032,
+ 6.725,
+ 8.1032,
+ 6.725,
+ 8.2104,
+ 6.4562,
+ 8.2104
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 846,
+ "length": 3
+ }
+ },
+ {
+ "content": "$610.00",
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 850,
+ "length": 7
+ }
+ },
+ {
+ "content": "THANK",
+ "polygon": [
+ 3.129,
+ 8.5453,
+ 3.5887,
+ 8.5453,
+ 3.5887,
+ 8.6429,
+ 3.129,
+ 8.6429
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 858,
+ "length": 5
+ }
+ },
+ {
+ "content": "YOU",
+ "polygon": [
+ 3.6316,
+ 8.544,
+ 3.9064,
+ 8.544,
+ 3.9064,
+ 8.6442,
+ 3.6316,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 864,
+ "length": 3
+ }
+ },
+ {
+ "content": "FOR",
+ "polygon": [
+ 3.9671,
+ 8.544,
+ 4.2187,
+ 8.544,
+ 4.2187,
+ 8.6442,
+ 3.9671,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 868,
+ "length": 3
+ }
+ },
+ {
+ "content": "YOUR",
+ "polygon": [
+ 4.2638,
+ 8.544,
+ 4.6347,
+ 8.544,
+ 4.6347,
+ 8.6442,
+ 4.2638,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 872,
+ "length": 4
+ }
+ },
+ {
+ "content": "BUSINESS!",
+ "polygon": [
+ 4.6859,
+ 8.539,
+ 5.356,
+ 8.539,
+ 5.356,
+ 8.6442,
+ 4.6859,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 877,
+ "length": 9
+ }
+ },
+ {
+ "content": "REMIT",
+ "polygon": [
+ 0.5909,
+ 9.1619,
+ 1.0014,
+ 9.1619,
+ 1.0014,
+ 9.2596,
+ 0.5909,
+ 9.2596
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 887,
+ "length": 5
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 1.0446,
+ 9.1607,
+ 1.2603,
+ 9.1607,
+ 1.2603,
+ 9.2608,
+ 1.0446,
+ 9.2608
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 893,
+ "length": 3
+ }
+ },
+ {
+ "content": "Contoso",
+ "polygon": [
+ 0.5882,
+ 9.3697,
+ 1.1337,
+ 9.3697,
+ 1.1337,
+ 9.4777,
+ 0.5882,
+ 9.4777
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 897,
+ "length": 7
+ }
+ },
+ {
+ "content": "Billing",
+ "polygon": [
+ 1.1905,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 1.1905,
+ 9.5059
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 905,
+ "length": 7
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 9.5728,
+ 0.8213,
+ 9.5728,
+ 0.8213,
+ 9.681,
+ 0.5945,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 913,
+ "length": 3
+ }
+ },
+ {
+ "content": "Remit",
+ "polygon": [
+ 0.881,
+ 9.5717,
+ 1.264,
+ 9.5717,
+ 1.264,
+ 9.681,
+ 0.881,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 917,
+ "length": 5
+ }
+ },
+ {
+ "content": "St",
+ "polygon": [
+ 1.3125,
+ 9.5728,
+ 1.4337,
+ 9.5728,
+ 1.4337,
+ 9.681,
+ 1.3125,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 923,
+ "length": 2
+ }
+ },
+ {
+ "content": "New",
+ "polygon": [
+ 0.5943,
+ 9.7808,
+ 0.8848,
+ 9.7808,
+ 0.8848,
+ 9.8877,
+ 0.5943,
+ 9.8877
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 926,
+ "length": 3
+ }
+ },
+ {
+ "content": "York,",
+ "polygon": [
+ 0.9293,
+ 9.773,
+ 1.2568,
+ 9.773,
+ 1.2568,
+ 9.9098,
+ 0.9293,
+ 9.9098
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 930,
+ "length": 5
+ }
+ },
+ {
+ "content": "NY,",
+ "polygon": [
+ 1.3205,
+ 9.7805,
+ 1.5233,
+ 9.7805,
+ 1.5233,
+ 9.9098,
+ 1.3205,
+ 9.9098
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 936,
+ "length": 3
+ }
+ },
+ {
+ "content": "10001",
+ "polygon": [
+ 1.5903,
+ 9.7795,
+ 1.9882,
+ 9.7795,
+ 1.9882,
+ 9.8877,
+ 1.5903,
+ 9.8877
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 940,
+ "length": 5
+ }
+ }
+ ],
+ "selectionMarks": [
+ {
+ "state": "unselected",
+ "polygon": [
+ 4.3231,
+ 5.6279,
+ 4.7562,
+ 5.6279,
+ 4.7562,
+ 5.8654,
+ 4.3231,
+ 5.8654
+ ],
+ "confidence": 0.212,
+ "span": {
+ "offset": 946,
+ "length": 12
+ }
+ }
+ ],
+ "lines": [
+ {
+ "content": "CONTOSO LTD.",
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 2.3181,
+ 0.6857,
+ 2.3181,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ],
+ "spans": [
+ {
+ "offset": 0,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 7.0751,
+ 0.589,
+ 7.9886,
+ 0.589,
+ 7.9886,
+ 0.7697,
+ 7.0751,
+ 0.7697
+ ],
+ "spans": [
+ {
+ "offset": 13,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "Contoso Headquarters",
+ "polygon": [
+ 0.5882,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 0.5882,
+ 1.5664
+ ],
+ "spans": [
+ {
+ "offset": 21,
+ "length": 20
+ }
+ ]
+ },
+ {
+ "content": "INVOICE: INV-100",
+ "polygon": [
+ 6.8599,
+ 1.4217,
+ 7.9988,
+ 1.4217,
+ 7.9988,
+ 1.5218,
+ 6.8599,
+ 1.5218
+ ],
+ "spans": [
+ {
+ "offset": 42,
+ "length": 16
+ }
+ ]
+ },
+ {
+ "content": "123 456th St",
+ "polygon": [
+ 0.5945,
+ 1.6092,
+ 1.3812,
+ 1.6092,
+ 1.3812,
+ 1.742,
+ 0.5945,
+ 1.742
+ ],
+ "spans": [
+ {
+ "offset": 59,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "INVOICE DATE: 11/15/2019",
+ "polygon": [
+ 6.2263,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 6.2263,
+ 1.7449
+ ],
+ "spans": [
+ {
+ "offset": 72,
+ "length": 24
+ }
+ ]
+ },
+ {
+ "content": "New York, NY, 10001",
+ "polygon": [
+ 0.5943,
+ 1.8307,
+ 1.9894,
+ 1.8307,
+ 1.9894,
+ 1.9675,
+ 0.5943,
+ 1.9675
+ ],
+ "spans": [
+ {
+ "offset": 97,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "content": "DUE DATE: 12/15/2019",
+ "polygon": [
+ 6.4966,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 6.4966,
+ 1.9515
+ ],
+ "spans": [
+ {
+ "offset": 117,
+ "length": 20
+ }
+ ]
+ },
+ {
+ "content": "CUSTOMER NAME: MICROSOFT CORPORATION",
+ "polygon": [
+ 4.9513,
+ 2.0388,
+ 7.9825,
+ 2.0388,
+ 7.9825,
+ 2.1389,
+ 4.9513,
+ 2.1389
+ ],
+ "spans": [
+ {
+ "offset": 138,
+ "length": 36
+ }
+ ]
+ },
+ {
+ "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019",
+ "polygon": [
+ 5.1667,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 5.1667,
+ 2.3615
+ ],
+ "spans": [
+ {
+ "offset": 175,
+ "length": 39
+ }
+ ]
+ },
+ {
+ "content": "CUSTOMER ID: CID-12345",
+ "polygon": [
+ 6.3253,
+ 2.4488,
+ 7.9951,
+ 2.4488,
+ 7.9951,
+ 2.5489,
+ 6.3253,
+ 2.5489
+ ],
+ "spans": [
+ {
+ "offset": 215,
+ "length": 22
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Corp",
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.586,
+ 2.6436,
+ 1.586,
+ 2.7871,
+ 0.5943,
+ 2.7871
+ ],
+ "spans": [
+ {
+ "offset": 238,
+ "length": 14
+ }
+ ]
+ },
+ {
+ "content": "123 Other St,",
+ "polygon": [
+ 0.5945,
+ 2.8476,
+ 1.4633,
+ 2.8476,
+ 1.4633,
+ 2.9845,
+ 0.5945,
+ 2.9845
+ ],
+ "spans": [
+ {
+ "offset": 253,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 0.5943,
+ 3.0513,
+ 2.0083,
+ 3.0513,
+ 2.0083,
+ 3.1878,
+ 0.5943,
+ 3.1878
+ ],
+ "spans": [
+ {
+ "offset": 267,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "BILL TO:",
+ "polygon": [
+ 0.5909,
+ 3.559,
+ 1.1032,
+ 3.559,
+ 1.1032,
+ 3.6592,
+ 0.5909,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 285,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "SHIP TO:",
+ "polygon": [
+ 3.3361,
+ 3.559,
+ 3.8903,
+ 3.559,
+ 3.8903,
+ 3.6592,
+ 3.3361,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 294,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "SERVICE ADDRESS:",
+ "polygon": [
+ 6.2104,
+ 3.559,
+ 7.4232,
+ 3.559,
+ 7.4232,
+ 3.6592,
+ 6.2104,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 303,
+ "length": 16
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Finance",
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.7878,
+ 3.7641,
+ 1.7878,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ],
+ "spans": [
+ {
+ "offset": 320,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Delivery",
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 4.5762,
+ 3.7641,
+ 4.5762,
+ 3.9076,
+ 3.3454,
+ 3.9076
+ ],
+ "spans": [
+ {
+ "offset": 338,
+ "length": 18
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Services",
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 7.4427,
+ 3.7641,
+ 7.4427,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ],
+ "spans": [
+ {
+ "offset": 357,
+ "length": 18
+ }
+ ]
+ },
+ {
+ "content": "123 Bill St,",
+ "polygon": [
+ 0.5945,
+ 3.9681,
+ 1.2765,
+ 3.9681,
+ 1.2765,
+ 4.1049,
+ 0.5945,
+ 4.1049
+ ],
+ "spans": [
+ {
+ "offset": 376,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "123 Ship St,",
+ "polygon": [
+ 3.3456,
+ 3.9681,
+ 4.1111,
+ 3.9681,
+ 4.1111,
+ 4.1109,
+ 3.3456,
+ 4.1109
+ ],
+ "spans": [
+ {
+ "offset": 389,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "123 Service St,",
+ "polygon": [
+ 6.2199,
+ 3.9734,
+ 7.1821,
+ 3.9734,
+ 7.1821,
+ 4.1049,
+ 6.2199,
+ 4.1049
+ ],
+ "spans": [
+ {
+ "offset": 402,
+ "length": 15
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 0.5943,
+ 4.1717,
+ 2.0083,
+ 4.1717,
+ 2.0083,
+ 4.3082,
+ 0.5943,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 418,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 3.3454,
+ 4.1717,
+ 4.7594,
+ 4.1717,
+ 4.7594,
+ 4.3082,
+ 3.3454,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 436,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 6.2197,
+ 4.1717,
+ 7.6337,
+ 4.1717,
+ 7.6337,
+ 4.3082,
+ 6.2197,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 454,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "SALESPERSON",
+ "polygon": [
+ 0.7018,
+ 4.6528,
+ 1.6092,
+ 4.6528,
+ 1.6092,
+ 4.7529,
+ 0.7018,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "P.O. NUMBER",
+ "polygon": [
+ 2.1216,
+ 4.6528,
+ 3.0155,
+ 4.6528,
+ 3.0155,
+ 4.7529,
+ 2.1216,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 484,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "REQUISITIONER",
+ "polygon": [
+ 3.4953,
+ 4.6528,
+ 4.5157,
+ 4.6528,
+ 4.5157,
+ 4.7687,
+ 3.4953,
+ 4.7687
+ ],
+ "spans": [
+ {
+ "offset": 496,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "content": "SHIPPED VIA",
+ "polygon": [
+ 4.81,
+ 4.6528,
+ 5.6317,
+ 4.6528,
+ 5.6317,
+ 4.7529,
+ 4.81,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 510,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "F.O.B. POINT",
+ "polygon": [
+ 5.8696,
+ 4.6528,
+ 6.706,
+ 4.6528,
+ 6.706,
+ 4.7529,
+ 5.8696,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 522,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "TERMS",
+ "polygon": [
+ 7.1806,
+ 4.6528,
+ 7.6304,
+ 4.6528,
+ 7.6304,
+ 4.7529,
+ 7.1806,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 535,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "PO-3333",
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ],
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "DATE",
+ "polygon": [
+ 0.7409,
+ 5.421,
+ 1.0744,
+ 5.421,
+ 1.0744,
+ 5.5186,
+ 0.7409,
+ 5.5186
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "ITEM CODE",
+ "polygon": [
+ 1.4213,
+ 5.4197,
+ 2.1407,
+ 5.4197,
+ 2.1407,
+ 5.5199,
+ 1.4213,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 554,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "DESCRIPTION",
+ "polygon": [
+ 2.8516,
+ 5.4197,
+ 3.7134,
+ 5.4197,
+ 3.7134,
+ 5.5199,
+ 2.8516,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 564,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "QTY",
+ "polygon": [
+ 4.4043,
+ 5.4197,
+ 4.6631,
+ 5.4197,
+ 4.6631,
+ 5.5357,
+ 4.4043,
+ 5.5357
+ ],
+ "spans": [
+ {
+ "offset": 576,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "UM",
+ "polygon": [
+ 5.049,
+ 5.421,
+ 5.2654,
+ 5.421,
+ 5.2654,
+ 5.5199,
+ 5.049,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 580,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "PRICE",
+ "polygon": [
+ 5.8563,
+ 5.4199,
+ 6.2163,
+ 5.4199,
+ 6.2163,
+ 5.5197,
+ 5.8563,
+ 5.5197
+ ],
+ "spans": [
+ {
+ "offset": 583,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.7169,
+ 5.421,
+ 6.974,
+ 5.421,
+ 6.974,
+ 5.5186,
+ 6.7169,
+ 5.5186
+ ],
+ "spans": [
+ {
+ "offset": 589,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 7.2847,
+ 5.4197,
+ 7.9039,
+ 5.4197,
+ 7.9039,
+ 5.5199,
+ 7.2847,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 593,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/4/2021",
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ],
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "A123",
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ],
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Consulting Services",
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.6278,
+ 5.6883,
+ 3.6278,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ],
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "content": "2",
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ],
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "content": "hours",
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ],
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ],
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "10%",
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ],
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "$60.00",
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ],
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/5/2021",
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ],
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "B456",
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Document Fee",
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "3",
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ],
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "5%",
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ],
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ],
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/6/2021",
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ],
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "C789",
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ],
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Printing Fee",
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 3.1351,
+ 6.2906,
+ 3.1351,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ],
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "10",
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ],
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "pages",
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ],
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$1.00",
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ],
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "20%",
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ],
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ],
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "SUBTOTAL",
+ "polygon": [
+ 6.0282,
+ 6.9118,
+ 6.7309,
+ 6.9118,
+ 6.7309,
+ 7.0199,
+ 6.0282,
+ 7.0199
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "$100.00",
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ],
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "SALES TAX",
+ "polygon": [
+ 6.0382,
+ 7.2089,
+ 6.728,
+ 7.2089,
+ 6.728,
+ 7.317,
+ 6.0382,
+ 7.317
+ ],
+ "spans": [
+ {
+ "offset": 776,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ],
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "TOTAL",
+ "polygon": [
+ 6.2969,
+ 7.5089,
+ 6.7309,
+ 7.5089,
+ 6.7309,
+ 7.617,
+ 6.2969,
+ 7.617
+ ],
+ "spans": [
+ {
+ "offset": 793,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$110.00",
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ],
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "PREVIOUS UNPAID BALANCE",
+ "polygon": [
+ 4.8126,
+ 7.8055,
+ 6.7249,
+ 7.8055,
+ 6.7249,
+ 7.9137,
+ 4.8126,
+ 7.9137
+ ],
+ "spans": [
+ {
+ "offset": 807,
+ "length": 23
+ }
+ ]
+ },
+ {
+ "content": "$500.00",
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ],
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "AMOUNT DUE",
+ "polygon": [
+ 5.7652,
+ 8.1022,
+ 6.725,
+ 8.1022,
+ 6.725,
+ 8.2104,
+ 5.7652,
+ 8.2104
+ ],
+ "spans": [
+ {
+ "offset": 839,
+ "length": 10
+ }
+ ]
+ },
+ {
+ "content": "$610.00",
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ],
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "THANK YOU FOR YOUR BUSINESS!",
+ "polygon": [
+ 3.129,
+ 8.539,
+ 5.356,
+ 8.539,
+ 5.356,
+ 8.6442,
+ 3.129,
+ 8.6442
+ ],
+ "spans": [
+ {
+ "offset": 858,
+ "length": 28
+ }
+ ]
+ },
+ {
+ "content": "REMIT TO:",
+ "polygon": [
+ 0.5909,
+ 9.1607,
+ 1.2603,
+ 9.1607,
+ 1.2603,
+ 9.2608,
+ 0.5909,
+ 9.2608
+ ],
+ "spans": [
+ {
+ "offset": 887,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "Contoso Billing",
+ "polygon": [
+ 0.5882,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 0.5882,
+ 9.5059
+ ],
+ "spans": [
+ {
+ "offset": 897,
+ "length": 15
+ }
+ ]
+ },
+ {
+ "content": "123 Remit St",
+ "polygon": [
+ 0.5945,
+ 9.5717,
+ 1.4337,
+ 9.5717,
+ 1.4337,
+ 9.681,
+ 0.5945,
+ 9.681
+ ],
+ "spans": [
+ {
+ "offset": 913,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "New York, NY, 10001",
+ "polygon": [
+ 0.5943,
+ 9.773,
+ 1.9882,
+ 9.773,
+ 1.9882,
+ 9.9098,
+ 0.5943,
+ 9.9098
+ ],
+ "spans": [
+ {
+ "offset": 926,
+ "length": 19
+ }
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 0,
+ "length": 958
+ }
+ ]
+ }
+ ],
+ "tables": [
+ {
+ "rowCount": 4,
+ "columnCount": 8,
+ "cells": [
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "DATE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4932,
+ 5.329,
+ 1.3011,
+ 5.3213,
+ 1.3011,
+ 5.6056,
+ 0.5009,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "ITEM CODE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.3213,
+ 2.2476,
+ 5.3213,
+ 2.2399,
+ 5.6056,
+ 1.3011,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 554,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "DESCRIPTION",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2476,
+ 5.3213,
+ 4.3174,
+ 5.329,
+ 4.3097,
+ 5.6056,
+ 2.2399,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 564,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "QTY",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3174,
+ 5.329,
+ 4.7483,
+ 5.329,
+ 4.7483,
+ 5.6056,
+ 4.3097,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 576,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "UM",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.329,
+ 5.5639,
+ 5.329,
+ 5.5639,
+ 5.6056,
+ 4.7483,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 580,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PRICE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.329,
+ 6.495,
+ 5.329,
+ 6.495,
+ 5.6056,
+ 5.5639,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 583,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TAX",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.329,
+ 7.1875,
+ 5.329,
+ 7.1952,
+ 5.6056,
+ 6.495,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 589,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "AMOUNT",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1875,
+ 5.329,
+ 7.9954,
+ 5.329,
+ 7.9954,
+ 5.598,
+ 7.1952,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 593,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/4/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5009,
+ 5.6056,
+ 1.3011,
+ 5.6056,
+ 1.3011,
+ 5.8976,
+ 0.5009,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "A123",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.6056,
+ 2.2399,
+ 5.6056,
+ 2.2322,
+ 5.8976,
+ 1.3011,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Consulting Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2399,
+ 5.6056,
+ 4.3097,
+ 5.6056,
+ 4.3097,
+ 5.8976,
+ 2.2322,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "2 :unselected:",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 5.6056,
+ 4.7483,
+ 5.6056,
+ 4.7483,
+ 5.8976,
+ 4.3097,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ },
+ {
+ "offset": 946,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "hours",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.6056,
+ 5.5639,
+ 5.6056,
+ 5.5639,
+ 5.8976,
+ 4.7483,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.6056,
+ 6.495,
+ 5.6056,
+ 6.495,
+ 5.8976,
+ 5.5639,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "10%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.6056,
+ 7.1952,
+ 5.6056,
+ 7.1952,
+ 5.8976,
+ 6.495,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 5.6056,
+ 7.9954,
+ 5.598,
+ 7.9954,
+ 5.9053,
+ 7.1952,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/5/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5009,
+ 5.8976,
+ 1.3011,
+ 5.8976,
+ 1.3011,
+ 6.1973,
+ 0.5086,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "B456",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.8976,
+ 2.2322,
+ 5.8976,
+ 2.2245,
+ 6.1973,
+ 1.3011,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Document Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2322,
+ 5.8976,
+ 4.3097,
+ 5.8976,
+ 4.3097,
+ 6.1973,
+ 2.2245,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 5.8976,
+ 4.7483,
+ 5.8976,
+ 4.7483,
+ 6.1973,
+ 4.3097,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.8976,
+ 5.5639,
+ 5.8976,
+ 5.5639,
+ 6.1973,
+ 4.7483,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.8976,
+ 6.495,
+ 5.8976,
+ 6.495,
+ 6.1973,
+ 5.5639,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "5%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.8976,
+ 7.1952,
+ 5.8976,
+ 7.1952,
+ 6.1973,
+ 6.495,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 5.8976,
+ 7.9954,
+ 5.9053,
+ 7.9954,
+ 6.1896,
+ 7.1952,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/6/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5086,
+ 6.1973,
+ 1.3011,
+ 6.1973,
+ 1.3011,
+ 6.4969,
+ 0.5086,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "C789",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 6.1973,
+ 2.2245,
+ 6.1973,
+ 2.2245,
+ 6.4969,
+ 1.3011,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Printing Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2245,
+ 6.1973,
+ 4.3097,
+ 6.1973,
+ 4.3097,
+ 6.4969,
+ 2.2245,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "10",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 6.1973,
+ 4.7483,
+ 6.1973,
+ 4.7483,
+ 6.4969,
+ 4.3097,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "pages",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 6.1973,
+ 5.5639,
+ 6.1973,
+ 5.5639,
+ 6.4969,
+ 4.7483,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$1.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 6.1973,
+ 6.495,
+ 6.1973,
+ 6.495,
+ 6.4969,
+ 5.5639,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "20%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 6.1973,
+ 7.1952,
+ 6.1973,
+ 7.1952,
+ 6.4969,
+ 6.495,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 6.1973,
+ 7.9954,
+ 6.1896,
+ 7.9954,
+ 6.5046,
+ 7.1952,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4901,
+ 5.3293,
+ 7.9946,
+ 5.3289,
+ 7.9954,
+ 6.5019,
+ 0.4906,
+ 6.502
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 209
+ },
+ {
+ "offset": 946,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowCount": 2,
+ "columnCount": 6,
+ "cells": [
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SALESPERSON",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4977,
+ 4.565,
+ 1.8042,
+ 4.565,
+ 1.8119,
+ 4.8388,
+ 0.5054,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "P.O. NUMBER",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.8042,
+ 4.565,
+ 3.3105,
+ 4.565,
+ 3.3105,
+ 4.8388,
+ 1.8119,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 484,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "REQUISITIONER",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3105,
+ 4.565,
+ 4.6939,
+ 4.565,
+ 4.6862,
+ 4.8388,
+ 3.3105,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 496,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SHIPPED VIA",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.6939,
+ 4.565,
+ 5.7468,
+ 4.565,
+ 5.7468,
+ 4.8388,
+ 4.6862,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 510,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "F.O.B. POINT",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.7468,
+ 4.565,
+ 6.815,
+ 4.565,
+ 6.815,
+ 4.8388,
+ 5.7468,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 522,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TERMS",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.815,
+ 4.565,
+ 7.9985,
+ 4.565,
+ 7.9985,
+ 4.8388,
+ 6.815,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 535,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5054,
+ 4.8388,
+ 1.8119,
+ 4.8388,
+ 1.8119,
+ 5.1058,
+ 0.5131,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PO-3333",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.8119,
+ 4.8388,
+ 3.3105,
+ 4.8388,
+ 3.3105,
+ 5.1058,
+ 1.8119,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3105,
+ 4.8388,
+ 4.6862,
+ 4.8388,
+ 4.6862,
+ 5.1058,
+ 3.3105,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.6862,
+ 4.8388,
+ 5.7468,
+ 4.8388,
+ 5.7468,
+ 5.1058,
+ 4.6862,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.7468,
+ 4.8388,
+ 6.815,
+ 4.8388,
+ 6.815,
+ 5.1058,
+ 5.7468,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.815,
+ 4.8388,
+ 7.9985,
+ 4.8388,
+ 7.9985,
+ 5.1125,
+ 6.815,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4971,
+ 4.565,
+ 7.9889,
+ 4.5653,
+ 7.989,
+ 5.1146,
+ 0.4963,
+ 5.1141
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 76
+ }
+ ]
+ },
+ {
+ "rowCount": 5,
+ "columnCount": 2,
+ "cells": [
+ {
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SUBTOTAL",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7474,
+ 6.7934,
+ 6.8058,
+ 6.7934,
+ 6.8105,
+ 7.0886,
+ 4.7474,
+ 7.0886
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$100.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8058,
+ 6.7934,
+ 7.9981,
+ 6.7934,
+ 7.9981,
+ 7.0934,
+ 6.8105,
+ 7.0886
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SALES TAX",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7474,
+ 7.0886,
+ 6.8105,
+ 7.0886,
+ 6.8105,
+ 7.3743,
+ 4.7427,
+ 7.3743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 776,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.0886,
+ 7.9981,
+ 7.0934,
+ 7.9981,
+ 7.3934,
+ 6.8105,
+ 7.3743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TOTAL",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.3743,
+ 6.8105,
+ 7.3743,
+ 6.8105,
+ 7.6839,
+ 4.7427,
+ 7.6839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 793,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$110.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.3743,
+ 7.9981,
+ 7.3934,
+ 7.9981,
+ 7.6886,
+ 6.8105,
+ 7.6839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PREVIOUS UNPAID BALANCE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.6839,
+ 6.8105,
+ 7.6839,
+ 6.8105,
+ 7.9743,
+ 4.7427,
+ 7.9743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 807,
+ "length": 23
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$500.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.6839,
+ 7.9981,
+ 7.6886,
+ 7.9981,
+ 7.9839,
+ 6.8105,
+ 7.9743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 4,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "AMOUNT DUE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.9743,
+ 6.8105,
+ 7.9743,
+ 6.8105,
+ 8.2839,
+ 4.7381,
+ 8.2839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 839,
+ "length": 10
+ }
+ ]
+ },
+ {
+ "rowIndex": 4,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$610.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.9743,
+ 7.9981,
+ 7.9839,
+ 7.9981,
+ 8.2839,
+ 6.8105,
+ 8.2839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7456,
+ 6.7793,
+ 8.0143,
+ 6.7788,
+ 8.0137,
+ 8.2981,
+ 4.7446,
+ 8.2981
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 98
+ }
+ ]
+ }
+ ],
+ "documents": [
+ {
+ "docType": "prebuilt:invoice",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "fields": {
+ "AmountDue": {
+ "type": "number",
+ "valueNumber": 610,
+ "content": "$610.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ },
+ "BillingAddress": {
+ "type": "string",
+ "valueString": "123 Bill St, Redmond WA, 98052",
+ "content": "123 Bill St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 3.9681,
+ 2.0083,
+ 3.9681,
+ 2.0083,
+ 4.3082,
+ 0.5943,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.947,
+ "spans": [
+ {
+ "offset": 376,
+ "length": 12
+ },
+ {
+ "offset": 418,
+ "length": 17
+ }
+ ]
+ },
+ "BillingAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Finance",
+ "content": "Microsoft Finance",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.7878,
+ 3.7641,
+ 1.7878,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ]
+ }
+ ],
+ "confidence": 0.957,
+ "spans": [
+ {
+ "offset": 320,
+ "length": 17
+ }
+ ]
+ },
+ "CustomerAddress": {
+ "type": "string",
+ "valueString": "123 Other St, Redmond WA, 98052",
+ "content": "123 Other St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 2.8476,
+ 2.0083,
+ 2.8476,
+ 2.0083,
+ 3.1878,
+ 0.5943,
+ 3.1878
+ ]
+ }
+ ],
+ "confidence": 0.947,
+ "spans": [
+ {
+ "offset": 253,
+ "length": 31
+ }
+ ]
+ },
+ "CustomerAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Corp",
+ "content": "Microsoft Corp",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.586,
+ 2.6436,
+ 1.586,
+ 2.7871,
+ 0.5943,
+ 2.7871
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 238,
+ "length": 14
+ }
+ ]
+ },
+ "CustomerId": {
+ "type": "string",
+ "valueString": "CID-12345",
+ "content": "CID-12345",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3369,
+ 2.4491,
+ 7.9951,
+ 2.4491,
+ 7.9951,
+ 2.5486,
+ 7.3369,
+ 2.5486
+ ]
+ }
+ ],
+ "confidence": 0.964,
+ "spans": [
+ {
+ "offset": 228,
+ "length": 9
+ }
+ ]
+ },
+ "CustomerName": {
+ "type": "string",
+ "valueString": "MICROSOFT CORPORATION",
+ "content": "MICROSOFT CORPORATION",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2419,
+ 2.0391,
+ 7.9825,
+ 2.0391,
+ 7.9825,
+ 2.1386,
+ 6.2419,
+ 2.1386
+ ]
+ }
+ ],
+ "confidence": 0.949,
+ "spans": [
+ {
+ "offset": 153,
+ "length": 21
+ }
+ ]
+ },
+ "DueDate": {
+ "type": "date",
+ "valueDate": "2019-12-15",
+ "content": "12/15/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2494,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 7.2494,
+ 1.9515
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 127,
+ "length": 10
+ }
+ ]
+ },
+ "InvoiceDate": {
+ "type": "date",
+ "valueDate": "2019-11-15",
+ "content": "11/15/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2528,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 7.2528,
+ 1.7449
+ ]
+ }
+ ],
+ "confidence": 0.972,
+ "spans": [
+ {
+ "offset": 86,
+ "length": 10
+ }
+ ]
+ },
+ "InvoiceId": {
+ "type": "string",
+ "valueString": "INV-100",
+ "content": "INV-100",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4959,
+ 1.422,
+ 7.9988,
+ 1.422,
+ 7.9988,
+ 1.5215,
+ 7.4959,
+ 1.5215
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 51,
+ "length": 7
+ }
+ ]
+ },
+ "InvoiceTotal": {
+ "type": "number",
+ "valueNumber": 110,
+ "content": "$110.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ "Items": {
+ "type": "array",
+ "valueArray": [
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 60,
+ "content": "$60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ]
+ }
+ ],
+ "confidence": 0.902,
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-04",
+ "content": "3/4/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ]
+ }
+ ],
+ "confidence": 0.938,
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Consulting Services",
+ "content": "Consulting Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.6278,
+ 5.6883,
+ 3.6278,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ]
+ }
+ ],
+ "confidence": 0.9,
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "A123",
+ "content": "A123",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ]
+ }
+ ],
+ "confidence": 0.877,
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 2,
+ "content": "2",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "10%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ]
+ }
+ ],
+ "confidence": 0.78,
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ "Unit": {
+ "type": "string",
+ "valueString": "hours",
+ "content": "hours",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 30,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ]
+ }
+ ],
+ "confidence": 0.828,
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ }
+ },
+ "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8312,
+ 0.592,
+ 5.8312
+ ]
+ }
+ ],
+ "confidence": 0.955,
+ "spans": [
+ {
+ "offset": 600,
+ "length": 59
+ }
+ ]
+ },
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 30,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ]
+ }
+ ],
+ "confidence": 0.916,
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-05",
+ "content": "3/5/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ]
+ }
+ ],
+ "confidence": 0.902,
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Document Fee",
+ "content": "Document Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.901,
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "B456",
+ "content": "B456",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.886,
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 3,
+ "content": "3",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.898,
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "5%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ]
+ }
+ ],
+ "confidence": 0.772,
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ]
+ }
+ ],
+ "confidence": 0.831,
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ }
+ },
+ "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.121,
+ 0.592,
+ 6.121
+ ]
+ }
+ ],
+ "confidence": 0.941,
+ "spans": [
+ {
+ "offset": 660,
+ "length": 45
+ }
+ ]
+ },
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ]
+ }
+ ],
+ "confidence": 0.959,
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-06",
+ "content": "3/6/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ]
+ }
+ ],
+ "confidence": 0.903,
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Printing Fee",
+ "content": "Printing Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 3.1351,
+ 6.2906,
+ 3.1351,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "C789",
+ "content": "C789",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ]
+ }
+ ],
+ "confidence": 0.898,
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "10",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ]
+ }
+ ],
+ "confidence": 0.903,
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "20%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ]
+ }
+ ],
+ "confidence": 0.791,
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ "Unit": {
+ "type": "string",
+ "valueString": "pages",
+ "content": "pages",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 1,
+ "content": "$1.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ]
+ }
+ ],
+ "confidence": 0.829,
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ }
+ },
+ "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4281,
+ 0.592,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 706,
+ "length": 52
+ }
+ ]
+ }
+ ]
+ },
+ "Locale": {
+ "type": "string",
+ "valueString": "en-US",
+ "confidence": 1
+ },
+ "PreviousUnpaidBalance": {
+ "type": "number",
+ "valueNumber": 500,
+ "content": "$500.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ]
+ }
+ ],
+ "confidence": 0.962,
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ "PurchaseOrder": {
+ "type": "string",
+ "valueString": "PO-3333",
+ "content": "PO-3333",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ]
+ }
+ ],
+ "confidence": 0.967,
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ "RemittanceAddress": {
+ "type": "string",
+ "valueString": "123 Remit St New York, NY, 10001",
+ "content": "123 Remit St New York, NY, 10001",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 9.5717,
+ 1.9882,
+ 9.5717,
+ 1.9882,
+ 9.9098,
+ 0.5943,
+ 9.9098
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 913,
+ "length": 32
+ }
+ ]
+ },
+ "RemittanceAddressRecipient": {
+ "type": "string",
+ "valueString": "Contoso Billing",
+ "content": "Contoso Billing",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5882,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 0.5882,
+ 9.5059
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 897,
+ "length": 15
+ }
+ ]
+ },
+ "ServiceAddress": {
+ "type": "string",
+ "valueString": "123 Service St, Redmond WA, 98052",
+ "content": "123 Service St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2197,
+ 3.9734,
+ 7.6337,
+ 3.9734,
+ 7.6337,
+ 4.3082,
+ 6.2197,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 402,
+ "length": 15
+ },
+ {
+ "offset": 454,
+ "length": 17
+ }
+ ]
+ },
+ "ServiceAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Services",
+ "content": "Microsoft Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 7.4427,
+ 3.7641,
+ 7.4427,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ]
+ }
+ ],
+ "confidence": 0.951,
+ "spans": [
+ {
+ "offset": 357,
+ "length": 18
+ }
+ ]
+ },
+ "ServiceEndDate": {
+ "type": "date",
+ "valueDate": "2019-11-14",
+ "content": "11/14/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2528,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 7.2528,
+ 2.3615
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 204,
+ "length": 10
+ }
+ ]
+ },
+ "ServiceStartDate": {
+ "type": "date",
+ "valueDate": "2019-10-14",
+ "content": "10/14/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.3357,
+ 2.2306,
+ 7.0749,
+ 2.2306,
+ 7.0749,
+ 2.3615,
+ 6.3357,
+ 2.3615
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 191,
+ "length": 10
+ }
+ ]
+ },
+ "ShippingAddress": {
+ "type": "string",
+ "valueString": "123 Ship St, Redmond WA, 98052",
+ "content": "123 Ship St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3454,
+ 3.9681,
+ 4.7594,
+ 3.9681,
+ 4.7594,
+ 4.3082,
+ 3.3454,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 389,
+ "length": 12
+ },
+ {
+ "offset": 436,
+ "length": 17
+ }
+ ]
+ },
+ "ShippingAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Delivery",
+ "content": "Microsoft Delivery",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 4.5762,
+ 3.7641,
+ 4.5762,
+ 3.9076,
+ 3.3454,
+ 3.9076
+ ]
+ }
+ ],
+ "confidence": 0.955,
+ "spans": [
+ {
+ "offset": 338,
+ "length": 18
+ }
+ ]
+ },
+ "SubTotal": {
+ "type": "number",
+ "valueNumber": 100,
+ "content": "$100.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ "TotalTax": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ "VendorAddress": {
+ "type": "string",
+ "valueString": "123 456th St New York, NY, 10001",
+ "content": "123 456th St New York, NY, 10001",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 1.6092,
+ 1.9894,
+ 1.6092,
+ 1.9894,
+ 1.9675,
+ 0.5943,
+ 1.9675
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 59,
+ "length": 12
+ },
+ {
+ "offset": 97,
+ "length": 19
+ }
+ ]
+ },
+ "VendorAddressRecipient": {
+ "type": "string",
+ "valueString": "Contoso Headquarters",
+ "content": "Contoso Headquarters",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5882,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 0.5882,
+ 1.5664
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 21,
+ "length": 20
+ }
+ ]
+ },
+ "VendorName": {
+ "type": "string",
+ "valueString": "CONTOSO LTD.",
+ "content": "CONTOSO LTD.",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 2.3181,
+ 0.6857,
+ 2.3181,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 0,
+ "length": 12
+ }
+ ]
+ }
+ },
+ "confidence": 1,
+ "spans": [
+ {
+ "offset": 0,
+ "length": 958
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetClassifyDocumentResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetClassifyDocumentResult.json
index 65b5cddd9c49..463f03b9ac35 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetClassifyDocumentResult.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetClassifyDocumentResult.json
@@ -1,104 +1,104 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "classifierId": "myClassifier",
- "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034"
- },
- "responses": {
- "200": {
- "body": {
- "status": "succeeded",
- "createdDateTime": "2021-09-24T13:00:46Z",
- "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
- "analyzeResult": {
- "apiVersion": "2023-02-28-preview",
- "modelId": "myClassifier",
- "stringIndexType": "textElements",
- "content": "",
- "pages": [
- {
- "kind": "document",
- "pageNumber": 1,
- "width": 8.5,
- "height": 11,
- "unit": "inch",
- "spans": []
- },
- {
- "kind": "document",
- "pageNumber": 2,
- "width": 8.5,
- "height": 11,
- "unit": "inch",
- "spans": []
- },
- {
- "kind": "document",
- "pageNumber": 3,
- "width": 8.5,
- "height": 11,
- "unit": "inch",
- "spans": []
- }
- ],
- "documents": [
- {
- "docType": "formA",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0,
- 0,
- 8.5,
- 0,
- 8.5,
- 11,
- 0,
- 11
- ]
- },
- {
- "pageNumber": 2,
- "polygon": [
- 0,
- 0,
- 8.5,
- 0,
- 8.5,
- 11,
- 0,
- 11
- ]
- }
- ],
- "confidence": 0.97,
- "spans": []
- },
- {
- "docType": "formB",
- "boundingRegions": [
- {
- "pageNumber": 3,
- "polygon": [
- 0,
- 0,
- 8.5,
- 0,
- 8.5,
- 11,
- 0,
- 11
- ]
- }
- ],
- "confidence": 0.97,
- "spans": []
- }
- ]
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "classifierId": "myClassifier",
+ "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "succeeded",
+ "createdDateTime": "2021-09-24T13:00:46Z",
+ "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
+ "analyzeResult": {
+ "apiVersion": "2023-02-28-preview",
+ "modelId": "myClassifier",
+ "stringIndexType": "textElements",
+ "content": "",
+ "pages": [
+ {
+ "kind": "document",
+ "pageNumber": 1,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "spans": []
+ },
+ {
+ "kind": "document",
+ "pageNumber": 2,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "spans": []
+ },
+ {
+ "kind": "document",
+ "pageNumber": 3,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "spans": []
+ }
+ ],
+ "documents": [
+ {
+ "docType": "formA",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ },
+ {
+ "pageNumber": 2,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "confidence": 0.97,
+ "spans": []
+ },
+ {
+ "docType": "formB",
+ "boundingRegions": [
+ {
+ "pageNumber": 3,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "confidence": 0.97,
+ "spans": []
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifier.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifier.json
index e42adaf9e2d9..229e119c518b 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifier.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifier.json
@@ -1,32 +1,32 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "classifierId": "myClassifier"
- },
- "responses": {
- "200": {
- "body": {
- "classifierId": "myClassifier",
- "description": "Classifier description",
- "createdDateTime": "2022-07-30T00:00:00Z",
- "expirationDateTime": "2023-01-01T00:00:00Z",
- "apiVersion": "2023-02-28-preview",
- "docTypes": {
- "formA": {
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "formADocs/"
- }
- },
- "formB": {
- "azureBlobFileListSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "fileList": "formB.jsonl"
- }
- }
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "classifierId": "myClassifier"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "classifierId": "myClassifier",
+ "description": "Classifier description",
+ "createdDateTime": "2022-07-30T00:00:00Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-02-28-preview",
+ "docTypes": {
+ "formA": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formADocs/"
+ }
+ },
+ "formB": {
+ "azureBlobFileListSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "fileList": "formB.jsonl"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifiers.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifiers.json
index aa9bc171fd40..13a20797656b 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifiers.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentClassifiers.json
@@ -1,57 +1,57 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "classifierId": "classifier1",
- "description": "Classifier1 description",
- "createdDateTime": "2022-07-30T00:00:00Z",
- "expirationDateTime": "2023-01-01T00:00:00Z",
- "apiVersion": "2023-02-28-preview",
- "docTypes": {
- "formA": {
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "formADocs/"
- }
- },
- "formB": {
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "formBDocs/"
- }
- }
- }
- },
- {
- "classifierId": "classifier2",
- "description": "Classifier2 description",
- "createdDateTime": "2022-07-30T00:00:00Z",
- "expirationDateTime": "2023-01-01T00:00:00Z",
- "apiVersion": "2023-02-28-preview",
- "docTypes": {
- "formB": {
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "formBDocs/"
- }
- },
- "formC": {
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "formCDocs/"
- }
- }
- }
- }
- ],
- "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentClassifiers?nextLink=nextLinkData"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "classifierId": "classifier1",
+ "description": "Classifier1 description",
+ "createdDateTime": "2022-07-30T00:00:00Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-02-28-preview",
+ "docTypes": {
+ "formA": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formADocs/"
+ }
+ },
+ "formB": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formBDocs/"
+ }
+ }
+ }
+ },
+ {
+ "classifierId": "classifier2",
+ "description": "Classifier2 description",
+ "createdDateTime": "2022-07-30T00:00:00Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-02-28-preview",
+ "docTypes": {
+ "formB": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formBDocs/"
+ }
+ },
+ "formC": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formCDocs/"
+ }
+ }
+ }
+ }
+ ],
+ "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentClassifiers?nextLink=nextLinkData"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Custom.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Custom.json
index 0917c51af2a5..0ce05931c2a1 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Custom.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Custom.json
@@ -1,42 +1,42 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "myCustomModel"
- },
- "responses": {
- "200": {
- "body": {
- "modelId": "myCustomModel",
- "description": "Custom model description",
- "createdDateTime": "2021-09-24T12:54:35Z",
- "expirationDateTime": "2023-01-01T00:00:00Z",
- "apiVersion": "2023-02-28-preview",
- "docTypes": {
- "myForm": {
- "fieldSchema": {
- "Name": {
- "type": "string"
- },
- "Date": {
- "type": "date"
- },
- "Amount": {
- "type": "number"
- }
- },
- "buildMode": "template",
- "fieldConfidence": {
- "Name": 0.9,
- "Date": 0.95,
- "Amount": 0.93
- }
- }
- },
- "tags": {
- "createdBy": "myUserId"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "myCustomModel"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelId": "myCustomModel",
+ "description": "Custom model description",
+ "createdDateTime": "2021-09-24T12:54:35Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-02-28-preview",
+ "docTypes": {
+ "myForm": {
+ "fieldSchema": {
+ "Name": {
+ "type": "string"
+ },
+ "Date": {
+ "type": "date"
+ },
+ "Amount": {
+ "type": "number"
+ }
+ },
+ "buildMode": "template",
+ "fieldConfidence": {
+ "Name": 0.9,
+ "Date": 0.95,
+ "Amount": 0.93
+ }
+ }
+ },
+ "tags": {
+ "createdBy": "myUserId"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Prebuilt.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Prebuilt.json
index 71eb2e816e55..99d5a85406cb 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Prebuilt.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModel_Prebuilt.json
@@ -1,134 +1,134 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "modelId": "prebuilt-invoice"
- },
- "responses": {
- "200": {
- "body": {
- "modelId": "prebuilt-invoice",
- "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.",
- "createdDateTime": "2021-07-30T00:00:00Z",
- "apiVersion": "2023-02-28-preview",
- "docTypes": {
- "prebuilt:invoice": {
- "fieldSchema": {
- "CustomerName": {
- "type": "string"
- },
- "CustomerId": {
- "type": "string"
- },
- "PurchaseOrder": {
- "type": "string"
- },
- "InvoiceId": {
- "type": "string"
- },
- "InvoiceDate": {
- "type": "date"
- },
- "DueDate": {
- "type": "date"
- },
- "VendorName": {
- "type": "string"
- },
- "VendorAddress": {
- "type": "string"
- },
- "VendorAddressRecipient": {
- "type": "string"
- },
- "CustomerAddress": {
- "type": "string"
- },
- "CustomerAddressRecipient": {
- "type": "string"
- },
- "BillingAddress": {
- "type": "string"
- },
- "BillingAddressRecipient": {
- "type": "string"
- },
- "ShippingAddress": {
- "type": "string"
- },
- "ShippingAddressRecipient": {
- "type": "string"
- },
- "SubTotal": {
- "type": "number"
- },
- "TotalTax": {
- "type": "number"
- },
- "InvoiceTotal": {
- "type": "number"
- },
- "AmountDue": {
- "type": "number"
- },
- "PreviousUnpaidBalance": {
- "type": "number"
- },
- "RemittanceAddress": {
- "type": "string"
- },
- "RemittanceAddressRecipient": {
- "type": "string"
- },
- "ServiceAddress": {
- "type": "string"
- },
- "ServiceAddressRecipient": {
- "type": "string"
- },
- "ServiceStartDate": {
- "type": "date"
- },
- "ServiceEndDate": {
- "type": "date"
- },
- "Items": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "Amount": {
- "type": "number"
- },
- "Date": {
- "type": "date"
- },
- "Description": {
- "type": "string"
- },
- "Quantity": {
- "type": "number"
- },
- "ProductCode": {
- "type": "string"
- },
- "Tax": {
- "type": "number"
- },
- "Unit": {
- "type": "string"
- },
- "UnitPrice": {
- "type": "number"
- }
- }
- }
- }
- }
- }
- },
- "tags": {}
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "modelId": "prebuilt-invoice"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelId": "prebuilt-invoice",
+ "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.",
+ "createdDateTime": "2021-07-30T00:00:00Z",
+ "apiVersion": "2023-02-28-preview",
+ "docTypes": {
+ "prebuilt:invoice": {
+ "fieldSchema": {
+ "CustomerName": {
+ "type": "string"
+ },
+ "CustomerId": {
+ "type": "string"
+ },
+ "PurchaseOrder": {
+ "type": "string"
+ },
+ "InvoiceId": {
+ "type": "string"
+ },
+ "InvoiceDate": {
+ "type": "date"
+ },
+ "DueDate": {
+ "type": "date"
+ },
+ "VendorName": {
+ "type": "string"
+ },
+ "VendorAddress": {
+ "type": "string"
+ },
+ "VendorAddressRecipient": {
+ "type": "string"
+ },
+ "CustomerAddress": {
+ "type": "string"
+ },
+ "CustomerAddressRecipient": {
+ "type": "string"
+ },
+ "BillingAddress": {
+ "type": "string"
+ },
+ "BillingAddressRecipient": {
+ "type": "string"
+ },
+ "ShippingAddress": {
+ "type": "string"
+ },
+ "ShippingAddressRecipient": {
+ "type": "string"
+ },
+ "SubTotal": {
+ "type": "number"
+ },
+ "TotalTax": {
+ "type": "number"
+ },
+ "InvoiceTotal": {
+ "type": "number"
+ },
+ "AmountDue": {
+ "type": "number"
+ },
+ "PreviousUnpaidBalance": {
+ "type": "number"
+ },
+ "RemittanceAddress": {
+ "type": "string"
+ },
+ "RemittanceAddressRecipient": {
+ "type": "string"
+ },
+ "ServiceAddress": {
+ "type": "string"
+ },
+ "ServiceAddressRecipient": {
+ "type": "string"
+ },
+ "ServiceStartDate": {
+ "type": "date"
+ },
+ "ServiceEndDate": {
+ "type": "date"
+ },
+ "Items": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "Amount": {
+ "type": "number"
+ },
+ "Date": {
+ "type": "date"
+ },
+ "Description": {
+ "type": "string"
+ },
+ "Quantity": {
+ "type": "number"
+ },
+ "ProductCode": {
+ "type": "string"
+ },
+ "Tax": {
+ "type": "number"
+ },
+ "Unit": {
+ "type": "string"
+ },
+ "UnitPrice": {
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "tags": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModels.json
index f6d133837115..c4957ba19785 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModels.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetDocumentModels.json
@@ -1,28 +1,28 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "modelId": "prebuilt-layout",
- "createdDateTime": "2021-07-30T00:00:00Z",
- "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.",
- "apiVersion": "2023-02-28-preview"
- },
- {
- "modelId": "myCustomModel",
- "createdDateTime": "2021-09-24T12:54:35Z",
- "expirationDateTime": "2023-01-01T00:00:00Z",
- "description": "Custom model description",
- "apiVersion": "2023-02-28-preview"
- }
- ],
- "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels?nextLink=nextLinkData"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "modelId": "prebuilt-layout",
+ "createdDateTime": "2021-07-30T00:00:00Z",
+ "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.",
+ "apiVersion": "2023-02-28-preview"
+ },
+ {
+ "modelId": "myCustomModel",
+ "createdDateTime": "2021-09-24T12:54:35Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "description": "Custom model description",
+ "apiVersion": "2023-02-28-preview"
+ }
+ ],
+ "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels?nextLink=nextLinkData"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperation.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperation.json
index 8a0d0e96a2d8..af1f7e48cba5 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperation.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperation.json
@@ -1,26 +1,26 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview",
- "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4"
- },
- "responses": {
- "200": {
- "body": {
- "operationId": "31533879936_426a3e4c-c6fb-4c83-937c-a92414c371a4",
- "status": "succeeded",
- "percentCompleted": 100,
- "createdDateTime": "2021-09-23T09:12:57Z",
- "lastUpdatedDateTime": "2021-09-23T09:13:01Z",
- "kind": "documentModelBuild",
- "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/myCustomModel",
- "result": {
- "modelId": "myCustomModel",
- "description": "Custom model description",
- "createdDateTime": "2021-09-23T09:13:01Z",
- "apiVersion": "2023-02-28-preview"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview",
+ "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "operationId": "31533879936_426a3e4c-c6fb-4c83-937c-a92414c371a4",
+ "status": "succeeded",
+ "percentCompleted": 100,
+ "createdDateTime": "2021-09-23T09:12:57Z",
+ "lastUpdatedDateTime": "2021-09-23T09:13:01Z",
+ "kind": "documentModelBuild",
+ "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/myCustomModel",
+ "result": {
+ "modelId": "myCustomModel",
+ "description": "Custom model description",
+ "createdDateTime": "2021-09-23T09:13:01Z",
+ "apiVersion": "2023-02-28-preview"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperations.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperations.json
index df4616e8bf85..16a81d490b8d 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperations.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetOperations.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4",
- "status": "running",
- "percentCompleted": 0,
- "createdDateTime": "2021-09-23T09:12:57Z",
- "lastUpdatedDateTime": "2021-09-23T09:12:58Z",
- "kind": "documentModelBuild",
- "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/myCustomModel",
- "apiVersion": "2023-02-28-preview"
- }
- ],
- "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations?nextLink=nextLinkData"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4",
+ "status": "running",
+ "percentCompleted": 0,
+ "createdDateTime": "2021-09-23T09:12:57Z",
+ "lastUpdatedDateTime": "2021-09-23T09:12:58Z",
+ "kind": "documentModelBuild",
+ "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/myCustomModel",
+ "apiVersion": "2023-02-28-preview"
+ }
+ ],
+ "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations?nextLink=nextLinkData"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetResourceDetails.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetResourceDetails.json
index de35e88df1d9..cbe0761545ff 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetResourceDetails.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/2023-02-28-preview/examples/GetResourceDetails.json
@@ -1,21 +1,21 @@
-{
- "parameters": {
- "endpoint": "https://myendpoint.cognitiveservices.azure.com",
- "api-version": "2023-02-28-preview"
- },
- "responses": {
- "200": {
- "body": {
- "customDocumentModels": {
- "count": 2,
- "limit": 13
- },
- "customNeuralDocumentModelBuilds": {
- "used": 1,
- "quota": 10,
- "quotaResetDateTime": "2023-03-01T00:00:00Z"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-02-28-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "customDocumentModels": {
+ "count": 2,
+ "limit": 13
+ },
+ "customNeuralDocumentModelBuilds": {
+ "used": 1,
+ "quota": 10,
+ "quotaResetDateTime": "2023-03-01T00:00:00Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md
index 477fc12d3762..6b0ff6ba2063 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/readme.md
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/readme.md
@@ -4,17 +4,24 @@
Configuration for generating Form Recognizer SDK.
-The current release is `2022-08-31`.
+The current release is `2023-07-31`.
``` yaml
-tag: 2022-08-31
+tag: 2023-07-31
add-credentials: true
openapi-type: data-plane
```
# Releases
+### Release 2023-07-31
+These settings apply only when `--tag=2023-07-31` is specified on the command line.
+``` yaml $(tag) == '2023-07-31'
+input-file:
+ - stable/2023-07-31/FormRecognizer.json
+```
+
### Release 2023-02-28-preview
These settings apply only when `--tag=2023-02-28-preview` is specified on the command line.
``` yaml $(tag) == '2023-02-28-preview'
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/FormRecognizer.json
index 1dead32e2159..05e2f4f08868 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/FormRecognizer.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/FormRecognizer.json
@@ -1,2220 +1,2220 @@
-{
- "swagger": "2.0",
- "info": {
- "title": "Form Recognizer Client",
- "description": "Extracts content, layout, and structured data from documents.",
- "version": "2022-08-31"
- },
- "securityDefinitions": {
- "apim_key": {
- "type": "apiKey",
- "name": "Ocp-Apim-Subscription-Key",
- "in": "header"
- }
- },
- "security": [
- {
- "apim_key": []
- }
- ],
- "x-ms-parameterized-host": {
- "hostTemplate": "{endpoint}/formrecognizer",
- "useSchemePrefix": false,
- "parameters": [
- {
- "$ref": "#/parameters/Endpoint"
- }
- ]
- },
- "schemes": [
- "https"
- ],
- "paths": {
- "/documentModels/{modelId}:analyze": {
- "post": {
- "summary": "Analyze document",
- "description": "Analyzes document with document model.",
- "operationId": "AnalyzeDocument",
- "tags": [
- "Analysis"
- ],
- "consumes": [
- "application/json",
- "application/octet-stream",
- "application/pdf",
- "image/jpeg",
- "image/png",
- "image/tiff",
- "image/bmp",
- "image/heif"
- ],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/PathDocumentModelId"
- },
- {
- "$ref": "#/parameters/QueryPages"
- },
- {
- "$ref": "#/parameters/QueryLocale"
- },
- {
- "$ref": "#/parameters/QueryStringIndexType"
- },
- {
- "$ref": "#/parameters/QueryApiVersion"
- },
- {
- "name": "analyzeRequest",
- "description": "Analyze request parameters.",
- "required": false,
- "in": "body",
- "schema": {
- "$ref": "#/definitions/AnalyzeDocumentRequest"
- }
- }
- ],
- "responses": {
- "202": {
- "description": "Request is queued successfully.",
- "headers": {
- "Operation-Location": {
- "type": "string",
- "description": "URL used to track the progress and obtain the result of the analyze operation."
- }
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-long-running-operation": true,
- "x-ms-examples": {
- "AnalyzeDocument_Url": {
- "$ref": "./examples/AnalyzeDocument_Url.json"
- },
- "AnalyzeDocument_Base64": {
- "$ref": "./examples/AnalyzeDocument_Base64.json"
- }
- }
- }
- },
- "/documentModels/{modelId}/analyzeResults/{resultId}": {
- "get": {
- "summary": "Get analyze result",
- "description": "Gets the result of document analysis.",
- "operationId": "GetAnalyzeDocumentResult",
- "tags": [
- "Analysis"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/PathDocumentModelId"
- },
- {
- "$ref": "#/parameters/PathResultId"
- },
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/AnalyzeResultOperation"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "GetAnalyzeDocumentResult": {
- "$ref": "./examples/GetAnalyzeDocumentResult.json"
- }
- }
- }
- },
- "/documentModels:build": {
- "post": {
- "summary": "Build document model",
- "description": "Builds a custom document analysis model.",
- "operationId": "BuildDocumentModel",
- "tags": [
- "Creation"
- ],
- "consumes": [
- "application/json"
- ],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/QueryApiVersion"
- },
- {
- "name": "buildRequest",
- "description": "Building request parameters.",
- "required": true,
- "in": "body",
- "schema": {
- "$ref": "#/definitions/BuildDocumentModelRequest"
- }
- }
- ],
- "responses": {
- "202": {
- "description": "Request is queued successfully.",
- "headers": {
- "Operation-Location": {
- "type": "string",
- "description": "Operation result URL."
- }
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-long-running-operation": true,
- "x-ms-examples": {
- "BuildDocumentModel": {
- "$ref": "./examples/BuildDocumentModel.json"
- }
- }
- }
- },
- "/documentModels:compose": {
- "post": {
- "summary": "Compose document model",
- "description": "Creates a new document model from document types of existing document models.",
- "operationId": "ComposeDocumentModel",
- "tags": [
- "Creation"
- ],
- "consumes": [
- "application/json"
- ],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/QueryApiVersion"
- },
- {
- "name": "composeRequest",
- "description": "Compose request parameters.",
- "in": "body",
- "required": true,
- "schema": {
- "$ref": "#/definitions/ComposeDocumentModelRequest"
- }
- }
- ],
- "responses": {
- "202": {
- "description": "Request is queued successfully.",
- "headers": {
- "Operation-Location": {
- "type": "string",
- "description": "Operation result URL."
- }
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-long-running-operation": true,
- "x-ms-examples": {
- "ComposeDocumentModel": {
- "$ref": "./examples/ComposeDocumentModel.json"
- }
- }
- }
- },
- "/documentModels:authorizeCopy": {
- "post": {
- "summary": "Generate copy authorization",
- "description": "Generates authorization to copy a document model to this location with specified modelId and optional description.",
- "operationId": "AuthorizeCopyDocumentModel",
- "tags": [
- "Creation"
- ],
- "consumes": [
- "application/json"
- ],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/QueryApiVersion"
- },
- {
- "name": "authorizeCopyRequest",
- "description": "Authorize copy request parameters.",
- "in": "body",
- "required": true,
- "schema": {
- "$ref": "#/definitions/AuthorizeCopyRequest"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/CopyAuthorization"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "AuthorizeCopyDocumentModel": {
- "$ref": "./examples/AuthorizeCopyDocumentModel.json"
- }
- }
- }
- },
- "/documentModels/{modelId}:copyTo": {
- "post": {
- "summary": "Copy document model",
- "description": "Copies document model to the target resource, region, and modelId.",
- "operationId": "CopyDocumentModelTo",
- "tags": [
- "Creation"
- ],
- "consumes": [
- "application/json"
- ],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/PathDocumentModelId"
- },
- {
- "$ref": "#/parameters/QueryApiVersion"
- },
- {
- "name": "copyToRequest",
- "description": "Copy to request parameters.",
- "in": "body",
- "required": true,
- "schema": {
- "$ref": "#/definitions/CopyAuthorization"
- }
- }
- ],
- "responses": {
- "202": {
- "description": "Request is queued successfully.",
- "headers": {
- "Operation-Location": {
- "type": "string",
- "description": "Operation result URL."
- }
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-long-running-operation": true,
- "x-ms-examples": {
- "CopyDocumentModelTo": {
- "$ref": "./examples/CopyDocumentModelTo.json"
- }
- }
- }
- },
- "/operations": {
- "get": {
- "summary": "List operations",
- "description": "Lists all operations.",
- "operationId": "GetOperations",
- "tags": [
- "Operation"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/GetOperationsResponse"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink",
- "itemName": "value"
- },
- "x-ms-examples": {
- "GetOperations": {
- "$ref": "./examples/GetOperations.json"
- }
- }
- }
- },
- "/operations/{operationId}": {
- "get": {
- "summary": "Get operation",
- "description": "Gets operation info.",
- "operationId": "GetOperation",
- "tags": [
- "Operation"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/PathOperationId"
- },
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/OperationDetails"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "GetOperation": {
- "$ref": "./examples/GetOperation.json"
- }
- }
- }
- },
- "/documentModels": {
- "get": {
- "summary": "List document models",
- "description": "List all document models",
- "operationId": "GetDocumentModels",
- "tags": [
- "Management"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/GetDocumentModelsResponse"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink",
- "itemName": "value"
- },
- "x-ms-examples": {
- "GetDocumentModels": {
- "$ref": "./examples/GetDocumentModels.json"
- }
- }
- }
- },
- "/documentModels/{modelId}": {
- "get": {
- "summary": "Get document model",
- "description": "Gets detailed document model information.",
- "operationId": "GetDocumentModel",
- "tags": [
- "Management"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/PathDocumentModelId"
- },
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/DocumentModelDetails"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "GetDocumentModel_Prebuilt": {
- "$ref": "./examples/GetDocumentModel_Prebuilt.json"
- },
- "GetDocumentModel_Custom": {
- "$ref": "./examples/GetDocumentModel_Custom.json"
- }
- }
- },
- "delete": {
- "summary": "Delete document model",
- "description": "Deletes document model.",
- "operationId": "DeleteDocumentModel",
- "tags": [
- "Management"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/PathDocumentModelId"
- },
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "204": {
- "description": "Deleting document model."
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "DeleteDocumentModel": {
- "$ref": "./examples/DeleteDocumentModel.json"
- }
- }
- }
- },
- "/info": {
- "get": {
- "summary": "Get resource info",
- "description": "Return information about the current resource.",
- "operationId": "GetResourceDetails",
- "tags": [
- "Management"
- ],
- "consumes": [],
- "produces": [
- "application/json"
- ],
- "parameters": [
- {
- "$ref": "#/parameters/QueryApiVersion"
- }
- ],
- "responses": {
- "200": {
- "description": "OK.",
- "schema": {
- "$ref": "#/definitions/ResourceDetails"
- }
- },
- "default": {
- "description": "Error encountered.",
- "schema": {
- "$ref": "#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "GetResourceDetails": {
- "$ref": "./examples/GetResourceDetails.json"
- }
- }
- }
- }
- },
- "definitions": {
- "AnalyzeDocumentRequest": {
- "description": "Document analysis parameters.",
- "type": "object",
- "properties": {
- "urlSource": {
- "description": "Document URL to analyze",
- "$ref": "#/definitions/UrlContentSource"
- },
- "base64Source": {
- "description": "Base64 encoding of the document to analyze",
- "$ref": "#/definitions/Base64ContentSource"
- }
- }
- },
- "BuildDocumentModelRequest": {
- "description": "Request body to build a new custom document model.",
- "type": "object",
- "required": [
- "modelId",
- "buildMode"
- ],
- "properties": {
- "modelId": {
- "$ref": "#/definitions/DocumentModelId"
- },
- "description": {
- "$ref": "#/definitions/DocumentModelDescription"
- },
- "buildMode": {
- "$ref": "#/definitions/DocumentBuildMode"
- },
- "azureBlobSource": {
- "description": "Azure Blob Storage location containing the training data.",
- "$ref": "#/definitions/AzureBlobContentSource"
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- }
- }
- },
- "ComposeDocumentModelRequest": {
- "description": "Request body to create a composed document model from component document models.",
- "type": "object",
- "required": [
- "modelId",
- "componentModels"
- ],
- "properties": {
- "modelId": {
- "$ref": "#/definitions/DocumentModelId"
- },
- "description": {
- "$ref": "#/definitions/DocumentModelDescription"
- },
- "componentModels": {
- "description": "List of component document models to compose.",
- "type": "array",
- "uniqueItems": true,
- "items": {
- "$ref": "#/definitions/ComponentDocumentModelDetails"
- }
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- }
- }
- },
- "ComponentDocumentModelDetails": {
- "description": "A component of a composed document model.",
- "type": "object",
- "required": [
- "modelId"
- ],
- "properties": {
- "modelId": {
- "$ref": "#/definitions/DocumentModelId"
- }
- }
- },
- "AuthorizeCopyRequest": {
- "description": "Request body to authorize document model copy.",
- "type": "object",
- "required": [
- "modelId"
- ],
- "properties": {
- "modelId": {
- "$ref": "#/definitions/DocumentModelId"
- },
- "description": {
- "$ref": "#/definitions/DocumentModelDescription"
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- }
- }
- },
- "GetOperationsResponse": {
- "description": "List Operations response object.",
- "type": "object",
- "required": [
- "value"
- ],
- "properties": {
- "value": {
- "description": "List of operations.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/OperationSummary"
- }
- },
- "nextLink": {
- "description": "Link to the next page of operations.",
- "type": "string"
- }
- }
- },
- "OperationDetails": {
- "description": "Get Operation response object.",
- "type": "object",
- "discriminator": "kind",
- "required": [
- "operationId",
- "status",
- "createdDateTime",
- "lastUpdatedDateTime",
- "kind",
- "resourceLocation"
- ],
- "properties": {
- "operationId": {
- "description": "Operation ID",
- "type": "string"
- },
- "status": {
- "description": "Operation status.",
- "type": "string",
- "enum": [
- "notStarted",
- "running",
- "failed",
- "succeeded",
- "canceled"
- ],
- "x-ms-enum": {
- "name": "OperationStatus",
- "modelAsString": false
- }
- },
- "percentCompleted": {
- "description": "Operation progress (0-100).",
- "type": "integer",
- "format": "int32",
- "minimum": 0,
- "maximum": 100
- },
- "createdDateTime": {
- "description": "Date and time (UTC) when the operation was created.",
- "type": "string",
- "format": "date-time"
- },
- "lastUpdatedDateTime": {
- "description": "Date and time (UTC) when the status was last updated.",
- "type": "string",
- "format": "date-time"
- },
- "kind": {
- "description": "Type of operation.",
- "type": "string"
- },
- "resourceLocation": {
- "description": "URL of the resource targeted by this operation.",
- "type": "string"
- },
- "apiVersion": {
- "description": "API version used to create this operation.",
- "type": "string"
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- },
- "error": {
- "description": "Encountered error.",
- "$ref": "#/definitions/Error"
- }
- }
- },
- "DocumentModelBuildOperationDetails": {
- "description": "Get Operation response object.",
- "x-ms-discriminator-value": "documentModelBuild",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/OperationDetails"
- }
- ],
- "properties": {
- "result": {
- "description": "Operation result upon success.",
- "$ref": "#/definitions/DocumentModelDetails"
- }
- }
- },
- "DocumentModelComposeOperationDetails": {
- "description": "Get Operation response object.",
- "x-ms-discriminator-value": "documentModelCompose",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/OperationDetails"
- }
- ],
- "properties": {
- "result": {
- "description": "Operation result upon success.",
- "$ref": "#/definitions/DocumentModelDetails"
- }
- }
- },
- "DocumentModelCopyToOperationDetails": {
- "description": "Get Operation response object.",
- "x-ms-discriminator-value": "documentModelCopyTo",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/OperationDetails"
- }
- ],
- "properties": {
- "result": {
- "description": "Operation result upon success.",
- "$ref": "#/definitions/DocumentModelDetails"
- }
- }
- },
- "GetDocumentModelsResponse": {
- "description": "List document models response object.",
- "type": "object",
- "required": [
- "value"
- ],
- "properties": {
- "value": {
- "description": "List of document models.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentModelSummary"
- }
- },
- "nextLink": {
- "description": "Link to the next page of document models.",
- "type": "string"
- }
- }
- },
- "ResourceDetails": {
- "description": "General information regarding the current resource.",
- "type": "object",
- "required": [
- "customDocumentModels"
- ],
- "properties": {
- "customDocumentModels": {
- "$ref": "#/definitions/CustomDocumentModelsDetails"
- }
- }
- },
- "CustomDocumentModelsDetails": {
- "description": "Details regarding custom document models.",
- "type": "object",
- "required": [
- "count",
- "limit"
- ],
- "properties": {
- "count": {
- "description": "Number of custom document models in the current resource.",
- "type": "integer",
- "format": "int32"
- },
- "limit": {
- "description": "Maximum number of custom document models supported in the current resource.",
- "type": "integer",
- "format": "int32"
- }
- }
- },
- "ApiVersion": {
- "description": "API version.",
- "type": "string",
- "enum": [
- "2022-08-31"
- ],
- "x-ms-enum": {
- "name": "ApiVersion",
- "modelAsString": true
- }
- },
- "ErrorResponse": {
- "description": "Error response object.",
- "type": "object",
- "required": [
- "error"
- ],
- "properties": {
- "error": {
- "$ref": "#/definitions/Error"
- }
- }
- },
- "Error": {
- "description": "Error info.",
- "type": "object",
- "required": [
- "code",
- "message"
- ],
- "properties": {
- "code": {
- "description": "Error code.",
- "type": "string"
- },
- "message": {
- "description": "Error message.",
- "type": "string"
- },
- "target": {
- "description": "Target of the error.",
- "type": "string"
- },
- "details": {
- "description": "List of detailed errors.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/Error"
- }
- },
- "innererror": {
- "$ref": "#/definitions/InnerError"
- }
- }
- },
- "InnerError": {
- "description": "Detailed error.",
- "type": "object",
- "required": [
- "code"
- ],
- "properties": {
- "code": {
- "description": "Error code.",
- "type": "string"
- },
- "message": {
- "description": "Error message.",
- "type": "string"
- },
- "innererror": {
- "$ref": "#/definitions/InnerError"
- }
- }
- },
- "UrlContentSource": {
- "description": "Content at specified URL.",
- "type": "string",
- "format": "uri"
- },
- "Base64ContentSource": {
- "description": "Content represented via Base64 encoding.",
- "type": "string",
- "format": "byte"
- },
- "AzureBlobContentSource": {
- "description": "Azure Blob Storage content.",
- "type": "object",
- "required": [
- "containerUrl"
- ],
- "properties": {
- "containerUrl": {
- "description": "Azure Blob Storage container URL.",
- "type": "string",
- "format": "uri"
- },
- "prefix": {
- "description": "Blob name prefix.",
- "type": "string"
- }
- }
- },
- "CopyAuthorization": {
- "description": "Authorization to copy a document model to the specified target resource and modelId.",
- "type": "object",
- "required": [
- "targetResourceId",
- "targetResourceRegion",
- "targetModelId",
- "targetModelLocation",
- "accessToken",
- "expirationDateTime"
- ],
- "properties": {
- "targetResourceId": {
- "description": "ID of the target Azure resource where the document model should be copied to.",
- "type": "string",
- "x-ms-azure-resource": true
- },
- "targetResourceRegion": {
- "description": "Location of the target Azure resource where the document model should be copied to.",
- "type": "string"
- },
- "targetModelId": {
- "description": "Identifier of the target document model.",
- "$ref": "#/definitions/DocumentModelId"
- },
- "targetModelLocation": {
- "description": "URL of the copied document model in the target account.",
- "type": "string"
- },
- "accessToken": {
- "description": "Token used to authorize the request.",
- "type": "string"
- },
- "expirationDateTime": {
- "description": "Date/time when the access token expires.",
- "type": "string",
- "format": "date-time"
- }
- }
- },
- "OperationSummary": {
- "description": "Operation info.",
- "type": "object",
- "required": [
- "operationId",
- "status",
- "createdDateTime",
- "lastUpdatedDateTime",
- "kind",
- "resourceLocation"
- ],
- "properties": {
- "operationId": {
- "description": "Operation ID",
- "type": "string"
- },
- "status": {
- "description": "Operation status.",
- "type": "string",
- "enum": [
- "notStarted",
- "running",
- "failed",
- "succeeded",
- "canceled"
- ],
- "x-ms-enum": {
- "name": "OperationStatus",
- "modelAsString": false
- }
- },
- "percentCompleted": {
- "description": "Operation progress (0-100).",
- "type": "integer",
- "format": "int32",
- "minimum": 0,
- "maximum": 100
- },
- "createdDateTime": {
- "description": "Date and time (UTC) when the operation was created.",
- "type": "string",
- "format": "date-time"
- },
- "lastUpdatedDateTime": {
- "description": "Date and time (UTC) when the status was last updated.",
- "type": "string",
- "format": "date-time"
- },
- "kind": {
- "description": "Type of operation.",
- "type": "string",
- "enum": [
- "documentModelBuild",
- "documentModelCompose",
- "documentModelCopyTo"
- ],
- "x-ms-enum": {
- "name": "OperationKind",
- "modelAsString": true
- }
- },
- "resourceLocation": {
- "description": "URL of the resource targeted by this operation.",
- "type": "string"
- },
- "apiVersion": {
- "description": "API version used to create this operation.",
- "type": "string"
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- }
- }
- },
- "DocumentModelSummary": {
- "description": "Document model summary.",
- "type": "object",
- "required": [
- "modelId",
- "createdDateTime"
- ],
- "properties": {
- "modelId": {
- "$ref": "#/definitions/DocumentModelId"
- },
- "description": {
- "$ref": "#/definitions/DocumentModelDescription"
- },
- "createdDateTime": {
- "description": "Date and time (UTC) when the document model was created.",
- "type": "string",
- "format": "date-time"
- },
- "apiVersion": {
- "description": "API version used to create this document model.",
- "type": "string"
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- }
- }
- },
- "DocumentModelDetails": {
- "description": "Document model info.",
- "type": "object",
- "required": [
- "modelId",
- "createdDateTime"
- ],
- "properties": {
- "modelId": {
- "$ref": "#/definitions/DocumentModelId"
- },
- "description": {
- "$ref": "#/definitions/DocumentModelDescription"
- },
- "createdDateTime": {
- "description": "Date and time (UTC) when the document model was created.",
- "type": "string",
- "format": "date-time"
- },
- "apiVersion": {
- "description": "API version used to create this document model.",
- "type": "string"
- },
- "tags": {
- "description": "List of key-value tag attributes associated with the document model.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- },
- "docTypes": {
- "description": "Supported document types.",
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/DocumentTypeDetails"
- }
- }
- }
- },
- "DocumentTypeDetails": {
- "description": "Document type info.",
- "type": "object",
- "required": [
- "fieldSchema"
- ],
- "properties": {
- "description": {
- "$ref": "#/definitions/DocumentModelDescription"
- },
- "buildMode": {
- "$ref": "#/definitions/DocumentBuildMode"
- },
- "fieldSchema": {
- "$ref": "#/definitions/DocTypeSchema"
- },
- "fieldConfidence": {
- "description": "Estimated confidence for each field.",
- "type": "object",
- "additionalProperties": {
- "type": "number",
- "minimum": 0,
- "maximum": 1
- }
- }
- }
- },
- "DocTypeSchema": {
- "description": "Description of the document semantic schema using a JSON Schema style syntax.",
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/DocumentFieldSchema"
- }
- },
- "DocumentFieldSchema": {
- "description": "Description of the field semantic schema using a JSON Schema style syntax.",
- "type": "object",
- "required": [
- "type"
- ],
- "properties": {
- "type": {
- "$ref": "#/definitions/DocumentFieldType"
- },
- "description": {
- "description": "Field description.",
- "type": "string"
- },
- "example": {
- "description": "Example field content.",
- "type": "string"
- },
- "items": {
- "description": "Field type schema of each array element.",
- "$ref": "#/definitions/DocumentFieldSchema"
- },
- "properties": {
- "description": "Named sub-fields of the object field.",
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/DocumentFieldSchema"
- }
- }
- }
- },
- "AnalyzeResultOperation": {
- "description": "Status and result of the analyze operation.",
- "type": "object",
- "required": [
- "status",
- "createdDateTime",
- "lastUpdatedDateTime"
- ],
- "properties": {
- "status": {
- "description": "Operation status.",
- "type": "string",
- "enum": [
- "notStarted",
- "running",
- "failed",
- "succeeded"
- ],
- "x-ms-enum": {
- "name": "AnalyzeResultOperationStatus",
- "modelAsString": false
- }
- },
- "createdDateTime": {
- "description": "Date and time (UTC) when the analyze operation was submitted.",
- "type": "string",
- "format": "date-time"
- },
- "lastUpdatedDateTime": {
- "description": "Date and time (UTC) when the status was last updated.",
- "type": "string",
- "format": "date-time"
- },
- "error": {
- "description": "Encountered error during document analysis.",
- "$ref": "#/definitions/Error"
- },
- "analyzeResult": {
- "$ref": "#/definitions/AnalyzeResult"
- }
- }
- },
- "AnalyzeResult": {
- "description": "Document analysis result.",
- "type": "object",
- "required": [
- "apiVersion",
- "modelId",
- "stringIndexType",
- "content",
- "pages"
- ],
- "properties": {
- "apiVersion": {
- "description": "API version used to produce this result.",
- "$ref": "#/definitions/ApiVersion"
- },
- "modelId": {
- "description": "Document model ID used to produce this result.",
- "$ref": "#/definitions/DocumentModelId"
- },
- "stringIndexType": {
- "description": "Method used to compute string offset and length.",
- "$ref": "#/definitions/StringIndexType"
- },
- "content": {
- "description": "Concatenate string representation of all textual and visual elements in reading order.",
- "type": "string"
- },
- "pages": {
- "description": "Analyzed pages.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentPage"
- }
- },
- "paragraphs": {
- "description": "Extracted paragraphs.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentParagraph"
- }
- },
- "tables": {
- "description": "Extracted tables.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentTable"
- }
- },
- "keyValuePairs": {
- "description": "Extracted key-value pairs.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentKeyValuePair"
- }
- },
- "styles": {
- "description": "Extracted font styles.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentStyle"
- }
- },
- "languages": {
- "description": "Detected languages.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentLanguage"
- }
- },
- "documents": {
- "description": "Extracted documents.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/Document"
- }
- }
- }
- },
- "DocumentPage": {
- "description": "Content and layout elements extracted from a page from the input.",
- "type": "object",
- "required": [
- "pageNumber",
- "spans"
- ],
- "properties": {
- "pageNumber": {
- "description": "1-based page number in the input document.",
- "type": "integer",
- "format": "int32",
- "minimum": 1
- },
- "angle": {
- "description": "The general orientation of the content in clockwise direction, measured in degrees between (-180, 180].",
- "type": "number",
- "minimum": -180,
- "maximum": 180,
- "exclusiveMinimum": true
- },
- "width": {
- "description": "The width of the image/PDF in pixels/inches, respectively.",
- "type": "number",
- "minimum": 0
- },
- "height": {
- "description": "The height of the image/PDF in pixels/inches, respectively.",
- "type": "number",
- "minimum": 0
- },
- "unit": {
- "description": "The unit used by the width, height, and polygon properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".",
- "type": "string",
- "enum": [
- "pixel",
- "inch"
- ],
- "x-ms-enum": {
- "name": "LengthUnit",
- "modelAsString": true
- }
- },
- "spans": {
- "description": "Location of the page in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- },
- "words": {
- "description": "Extracted words from the page.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentWord"
- }
- },
- "selectionMarks": {
- "description": "Extracted selection marks from the page.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSelectionMark"
- }
- },
- "lines": {
- "description": "Extracted lines from the page, potentially containing both textual and visual elements.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentLine"
- }
- }
- }
- },
- "DocumentWord": {
- "description": "A word object consisting of a contiguous sequence of characters. For non-space delimited languages, such as Chinese, Japanese, and Korean, each character is represented as its own word.",
- "type": "object",
- "required": [
- "content",
- "span",
- "confidence"
- ],
- "properties": {
- "content": {
- "description": "Text content of the word.",
- "type": "string"
- },
- "polygon": {
- "description": "Bounding polygon of the word.",
- "$ref": "#/definitions/BoundingPolygon"
- },
- "span": {
- "description": "Location of the word in the reading order concatenated content.",
- "$ref": "#/definitions/DocumentSpan"
- },
- "confidence": {
- "description": "Confidence of correctly extracting the word.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "DocumentSelectionMark": {
- "description": "A selection mark object representing check boxes, radio buttons, and other elements indicating a selection.",
- "type": "object",
- "required": [
- "state",
- "span",
- "confidence"
- ],
- "properties": {
- "state": {
- "description": "State of the selection mark.",
- "$ref": "#/definitions/DocumentSelectionMarkState"
- },
- "polygon": {
- "description": "Bounding polygon of the selection mark.",
- "$ref": "#/definitions/BoundingPolygon"
- },
- "span": {
- "description": "Location of the selection mark in the reading order concatenated content.",
- "$ref": "#/definitions/DocumentSpan"
- },
- "confidence": {
- "description": "Confidence of correctly extracting the selection mark.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "DocumentSelectionMarkState": {
- "description": "State of the selection mark.",
- "type": "string",
- "enum": [
- "selected",
- "unselected"
- ],
- "x-ms-enum": {
- "name": "SelectionMarkState",
- "modelAsString": true
- }
- },
- "DocumentLine": {
- "description": "A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.",
- "type": "object",
- "required": [
- "content",
- "spans"
- ],
- "properties": {
- "content": {
- "description": "Concatenated content of the contained elements in reading order.",
- "type": "string"
- },
- "polygon": {
- "description": "Bounding polygon of the line.",
- "$ref": "#/definitions/BoundingPolygon"
- },
- "spans": {
- "description": "Location of the line in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- }
- }
- },
- "DocumentParagraph": {
- "description": "A paragraph object consisting with contiguous lines generally with common alignment and spacing.",
- "type": "object",
- "required": [
- "content",
- "spans"
- ],
- "properties": {
- "role": {
- "description": "Semantic role of the paragraph.",
- "type": "string",
- "enum": [
- "pageHeader",
- "pageFooter",
- "pageNumber",
- "title",
- "sectionHeading",
- "footnote"
- ],
- "x-ms-enum": {
- "name": "ParagraphRole",
- "modelAsString": true
- }
- },
- "content": {
- "description": "Concatenated content of the paragraph in reading order.",
- "type": "string"
- },
- "boundingRegions": {
- "description": "Bounding regions covering the paragraph.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/BoundingRegion"
- }
- },
- "spans": {
- "description": "Location of the paragraph in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- }
- }
- },
- "DocumentTable": {
- "description": "A table object consisting table cells arranged in a rectangular layout.",
- "type": "object",
- "required": [
- "rowCount",
- "columnCount",
- "cells",
- "spans"
- ],
- "properties": {
- "rowCount": {
- "description": "Number of rows in the table.",
- "type": "integer",
- "format": "int32",
- "minimum": 1
- },
- "columnCount": {
- "description": "Number of columns in the table.",
- "type": "integer",
- "format": "int32",
- "minimum": 1
- },
- "cells": {
- "description": "Cells contained within the table.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentTableCell"
- }
- },
- "boundingRegions": {
- "description": "Bounding regions covering the table.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/BoundingRegion"
- }
- },
- "spans": {
- "description": "Location of the table in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- }
- }
- },
- "DocumentTableCell": {
- "description": "An object representing the location and content of a table cell.",
- "type": "object",
- "required": [
- "rowIndex",
- "columnIndex",
- "content",
- "spans"
- ],
- "properties": {
- "kind": {
- "description": "Table cell kind.",
- "type": "string",
- "enum": [
- "content",
- "rowHeader",
- "columnHeader",
- "stubHead",
- "description"
- ],
- "default": "content",
- "x-ms-enum": {
- "name": "DocumentTableCellKind",
- "modelAsString": true
- }
- },
- "rowIndex": {
- "description": "Row index of the cell.",
- "type": "integer",
- "format": "int32"
- },
- "columnIndex": {
- "description": "Column index of the cell.",
- "type": "integer",
- "format": "int32"
- },
- "rowSpan": {
- "description": "Number of rows spanned by this cell.",
- "type": "integer",
- "format": "int32",
- "minimum": 1,
- "default": 1
- },
- "columnSpan": {
- "description": "Number of columns spanned by this cell.",
- "type": "integer",
- "format": "int32",
- "minimum": 1,
- "default": 1
- },
- "content": {
- "description": "Concatenated content of the table cell in reading order.",
- "type": "string"
- },
- "boundingRegions": {
- "description": "Bounding regions covering the table cell.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/BoundingRegion"
- }
- },
- "spans": {
- "description": "Location of the table cell in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- }
- }
- },
- "DocumentKeyValuePair": {
- "description": "An object representing a form field with distinct field label (key) and field value (may be empty).",
- "type": "object",
- "required": [
- "key",
- "confidence"
- ],
- "properties": {
- "key": {
- "description": "Field label of the key-value pair.",
- "$ref": "#/definitions/DocumentKeyValueElement"
- },
- "value": {
- "description": "Field value of the key-value pair.",
- "$ref": "#/definitions/DocumentKeyValueElement"
- },
- "confidence": {
- "description": "Confidence of correctly extracting the key-value pair.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "DocumentKeyValueElement": {
- "description": "An object representing the field key or value in a key-value pair.",
- "type": "object",
- "required": [
- "content",
- "spans"
- ],
- "properties": {
- "content": {
- "description": "Concatenated content of the key-value element in reading order.",
- "type": "string"
- },
- "boundingRegions": {
- "description": "Bounding regions covering the key-value element.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/BoundingRegion"
- }
- },
- "spans": {
- "description": "Location of the key-value element in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- }
- }
- },
- "DocumentStyle": {
- "description": "An object representing observed text styles.",
- "type": "object",
- "required": [
- "spans",
- "confidence"
- ],
- "properties": {
- "isHandwritten": {
- "description": "Is content handwritten?",
- "type": "boolean"
- },
- "spans": {
- "description": "Location of the text elements in the concatenated content the style applies to.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- },
- "confidence": {
- "description": "Confidence of correctly identifying the style.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "DocumentLanguage": {
- "description": "An object representing the detected language for a given text span.",
- "type": "object",
- "required": [
- "locale",
- "spans",
- "confidence"
- ],
- "properties": {
- "locale": {
- "description": "Detected language. Value may an ISO 639-1 language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"zh-Hans\").",
- "type": "string"
- },
- "spans": {
- "description": "Location of the text elements in the concatenated content the language applies to.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- },
- "confidence": {
- "description": "Confidence of correctly identifying the language.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "Document": {
- "description": "An object describing the location and semantic content of a document.",
- "type": "object",
- "required": [
- "docType",
- "spans",
- "confidence"
- ],
- "properties": {
- "docType": {
- "description": "Document type.",
- "$ref": "#/definitions/DocType"
- },
- "boundingRegions": {
- "description": "Bounding regions covering the document.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/BoundingRegion"
- }
- },
- "spans": {
- "description": "Location of the document in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- },
- "fields": {
- "description": "Dictionary of named field values.",
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/DocumentField"
- }
- },
- "confidence": {
- "description": "Confidence of correctly extracting the document.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "DocumentField": {
- "description": "An object representing the content and location of a field value.",
- "type": "object",
- "required": [
- "type"
- ],
- "properties": {
- "type": {
- "description": "Data type of the field value.",
- "$ref": "#/definitions/DocumentFieldType"
- },
- "valueString": {
- "description": "String value.",
- "type": "string"
- },
- "valueDate": {
- "description": "Date value in YYYY-MM-DD format (ISO 8601).",
- "type": "string",
- "format": "date"
- },
- "valueTime": {
- "description": "Time value in hh:mm:ss format (ISO 8601).",
- "type": "string",
- "format": "time"
- },
- "valuePhoneNumber": {
- "description": "Phone number value in E.164 format (ex. +19876543210).",
- "type": "string"
- },
- "valueNumber": {
- "description": "Floating point value.",
- "type": "number"
- },
- "valueInteger": {
- "description": "Integer value.",
- "type": "integer",
- "format": "int64"
- },
- "valueSelectionMark": {
- "description": "Selection mark value.",
- "$ref": "#/definitions/DocumentSelectionMarkState"
- },
- "valueSignature": {
- "description": "Presence of signature.",
- "type": "string",
- "enum": [
- "signed",
- "unsigned"
- ],
- "x-ms-enum": {
- "name": "DocumentSignatureType",
- "modelAsString": true
- }
- },
- "valueCountryRegion": {
- "description": "3-letter country code value (ISO 3166-1 alpha-3).",
- "type": "string"
- },
- "valueArray": {
- "description": "Array of field values.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentField"
- }
- },
- "valueObject": {
- "description": "Dictionary of named field values.",
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/DocumentField"
- }
- },
- "valueCurrency": {
- "description": "Currency value.",
- "$ref": "#/definitions/CurrencyValue"
- },
- "valueAddress": {
- "description": "Address value.",
- "$ref": "#/definitions/AddressValue"
- },
- "content": {
- "description": "Field content.",
- "type": "string"
- },
- "boundingRegions": {
- "description": "Bounding regions covering the field.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/BoundingRegion"
- }
- },
- "spans": {
- "description": "Location of the field in the reading order concatenated content.",
- "type": "array",
- "items": {
- "$ref": "#/definitions/DocumentSpan"
- }
- },
- "confidence": {
- "description": "Confidence of correctly extracting the field.",
- "$ref": "#/definitions/Confidence"
- }
- }
- },
- "DocumentFieldType": {
- "description": "Semantic data type of the field value.",
- "type": "string",
- "enum": [
- "string",
- "date",
- "time",
- "phoneNumber",
- "number",
- "integer",
- "selectionMark",
- "countryRegion",
- "signature",
- "array",
- "object",
- "currency",
- "address"
- ],
- "x-ms-enum": {
- "name": "DocumentFieldType",
- "modelAsString": true
- }
- },
- "CurrencyValue": {
- "description": "Currency field value.",
- "type": "object",
- "required": [
- "amount"
- ],
- "properties": {
- "amount": {
- "description": "Currency amount.",
- "type": "number",
- "format": "double"
- },
- "currencySymbol": {
- "description": "Currency symbol label, if any.",
- "type": "string"
- }
- }
- },
- "AddressValue": {
- "description": "Address field value.",
- "type": "object",
- "properties": {
- "houseNumber": {
- "description": "House or building number.",
- "type": "string"
- },
- "poBox": {
- "description": "Post office box number.",
- "type": "string"
- },
- "road": {
- "description": "Street name.",
- "type": "string"
- },
- "city": {
- "description": "Name of city, town, village, etc.",
- "type": "string"
- },
- "state": {
- "description": "First-level administrative division.",
- "type": "string"
- },
- "postalCode": {
- "description": "Postal code used for mail sorting.",
- "type": "string"
- },
- "countryRegion": {
- "description": "Country/region.",
- "type": "string"
- },
- "streetAddress": {
- "description": "Street-level address, excluding city, state, countryRegion, and postalCode.",
- "type": "string"
- }
- }
- },
- "DocumentModelId": {
- "description": "Unique document model name.",
- "type": "string",
- "pattern": "[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}"
- },
- "DocumentModelDescription": {
- "description": "Document model description.",
- "type": "string",
- "maxLength": 4096
- },
- "DocumentBuildMode": {
- "description": "Custom document model build mode.",
- "type": "string",
- "enum": [
- "template",
- "neural"
- ],
- "x-ms-enum": {
- "name": "DocumentBuildMode",
- "modelAsString": true
- }
- },
- "DocType": {
- "description": "Document type name.",
- "type": "string",
- "minLength": 2,
- "maxLength": 64
- },
- "BoundingPolygon": {
- "description": "Bounding polygon, with coordinates specified relative to the top-left of the page. The numbers represent the x, y values of the polygon vertices, clockwise from the left (-180 degrees inclusive) relative to the element orientation.",
- "type": "array",
- "items": {
- "type": "number",
- "minimum": 0
- }
- },
- "BoundingRegion": {
- "description": "Bounding polygon on a specific page of the input.",
- "type": "object",
- "required": [
- "pageNumber",
- "polygon"
- ],
- "properties": {
- "pageNumber": {
- "description": "1-based page number of page containing the bounding region.",
- "type": "integer",
- "format": "int32",
- "minimum": 1
- },
- "polygon": {
- "description": "Bounding polygon on the page, or the entire page if not specified.",
- "$ref": "#/definitions/BoundingPolygon"
- }
- }
- },
- "Confidence": {
- "description": "Prediction confidence.",
- "type": "number",
- "minimum": 0,
- "maximum": 1
- },
- "DocumentSpan": {
- "description": "Contiguous region of the concatenated content property, specified as an offset and length.",
- "type": "object",
- "required": [
- "offset",
- "length"
- ],
- "properties": {
- "offset": {
- "description": "Zero-based index of the content represented by the span.",
- "type": "integer",
- "format": "int32",
- "minimum": 0
- },
- "length": {
- "description": "Number of characters in the content represented by the span.",
- "type": "integer",
- "format": "int32",
- "minimum": 0
- }
- }
- },
- "StringIndexType": {
- "description": "Method used to compute string offset and length.",
- "type": "string",
- "enum": [
- "textElements",
- "unicodeCodePoint",
- "utf16CodeUnit"
- ],
- "x-ms-enum": {
- "name": "StringIndexType",
- "modelAsString": true
- },
- "default": "textElements"
- }
- },
- "parameters": {
- "Endpoint": {
- "name": "endpoint",
- "description": "Supported Cognitive Services endpoints (protocol and hostname, for\nexample: https://westus2.api.cognitive.microsoft.com).",
- "x-ms-parameter-location": "client",
- "required": true,
- "type": "string",
- "in": "path",
- "x-ms-skip-url-encoding": true
- },
- "QueryApiVersion": {
- "name": "api-version",
- "description": "Requested API version.",
- "required": true,
- "type": "string",
- "in": "query",
- "enum": [
- "2022-08-31"
- ],
- "x-ms-enum": {
- "name": "ApiVersion",
- "modelAsString": true
- },
- "x-ms-parameter-location": "client"
- },
- "PathDocumentModelId": {
- "name": "modelId",
- "description": "Unique document model name.",
- "required": true,
- "type": "string",
- "pattern": "[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}",
- "in": "path",
- "x-ms-parameter-location": "method"
- },
- "PathOperationId": {
- "name": "operationId",
- "description": "Unique operation ID.",
- "required": true,
- "type": "string",
- "in": "path",
- "x-ms-parameter-location": "method"
- },
- "PathResultId": {
- "name": "resultId",
- "description": "Analyze operation result ID.",
- "required": true,
- "type": "string",
- "in": "path",
- "x-ms-parameter-location": "method"
- },
- "QueryPages": {
- "name": "pages",
- "description": "List of 1-based page numbers to analyze. Ex. \"1-3,5,7-9\"",
- "required": false,
- "type": "string",
- "in": "query",
- "pattern": "^(\\d+(-\\d+)?)(,\\s*(\\d+(-\\d+)?))*$",
- "x-ms-parameter-location": "method"
- },
- "QueryLocale": {
- "name": "locale",
- "description": "Locale hint for text recognition and document analysis. Value may contain only the language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"en-US\").",
- "required": false,
- "type": "string",
- "in": "query",
- "x-ms-parameter-location": "method"
- },
- "QueryStringIndexType": {
- "name": "stringIndexType",
- "description": "Method used to compute string offset and length.",
- "required": false,
- "in": "query",
- "type": "string",
- "enum": [
- "textElements",
- "unicodeCodePoint",
- "utf16CodeUnit"
- ],
- "x-ms-enum": {
- "name": "StringIndexType",
- "modelAsString": true
- },
- "default": "textElements",
- "x-ms-parameter-location": "method"
- }
- }
-}
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Form Recognizer Client",
+ "description": "Extracts content, layout, and structured data from documents.",
+ "version": "2022-08-31"
+ },
+ "securityDefinitions": {
+ "apim_key": {
+ "type": "apiKey",
+ "name": "Ocp-Apim-Subscription-Key",
+ "in": "header"
+ }
+ },
+ "security": [
+ {
+ "apim_key": []
+ }
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "{endpoint}/formrecognizer",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "$ref": "#/parameters/Endpoint"
+ }
+ ]
+ },
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/documentModels/{modelId}:analyze": {
+ "post": {
+ "summary": "Analyze document",
+ "description": "Analyzes document with document model.",
+ "operationId": "AnalyzeDocument",
+ "tags": [
+ "Analysis"
+ ],
+ "consumes": [
+ "application/json",
+ "application/octet-stream",
+ "application/pdf",
+ "image/jpeg",
+ "image/png",
+ "image/tiff",
+ "image/bmp",
+ "image/heif"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryPages"
+ },
+ {
+ "$ref": "#/parameters/QueryLocale"
+ },
+ {
+ "$ref": "#/parameters/QueryStringIndexType"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "analyzeRequest",
+ "description": "Analyze request parameters.",
+ "required": false,
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/AnalyzeDocumentRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "URL used to track the progress and obtain the result of the analyze operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "AnalyzeDocument_Url": {
+ "$ref": "./examples/AnalyzeDocument_Url.json"
+ },
+ "AnalyzeDocument_Base64": {
+ "$ref": "./examples/AnalyzeDocument_Base64.json"
+ }
+ }
+ }
+ },
+ "/documentModels/{modelId}/analyzeResults/{resultId}": {
+ "get": {
+ "summary": "Get analyze result",
+ "description": "Gets the result of document analysis.",
+ "operationId": "GetAnalyzeDocumentResult",
+ "tags": [
+ "Analysis"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/PathResultId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/AnalyzeResultOperation"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "GetAnalyzeDocumentResult": {
+ "$ref": "./examples/GetAnalyzeDocumentResult.json"
+ }
+ }
+ }
+ },
+ "/documentModels:build": {
+ "post": {
+ "summary": "Build document model",
+ "description": "Builds a custom document analysis model.",
+ "operationId": "BuildDocumentModel",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "buildRequest",
+ "description": "Building request parameters.",
+ "required": true,
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BuildDocumentModelRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL."
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "BuildDocumentModel": {
+ "$ref": "./examples/BuildDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentModels:compose": {
+ "post": {
+ "summary": "Compose document model",
+ "description": "Creates a new document model from document types of existing document models.",
+ "operationId": "ComposeDocumentModel",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "composeRequest",
+ "description": "Compose request parameters.",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ComposeDocumentModelRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL."
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "ComposeDocumentModel": {
+ "$ref": "./examples/ComposeDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentModels:authorizeCopy": {
+ "post": {
+ "summary": "Generate copy authorization",
+ "description": "Generates authorization to copy a document model to this location with specified modelId and optional description.",
+ "operationId": "AuthorizeCopyDocumentModel",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "authorizeCopyRequest",
+ "description": "Authorize copy request parameters.",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AuthorizeCopyRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/CopyAuthorization"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AuthorizeCopyDocumentModel": {
+ "$ref": "./examples/AuthorizeCopyDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentModels/{modelId}:copyTo": {
+ "post": {
+ "summary": "Copy document model",
+ "description": "Copies document model to the target resource, region, and modelId.",
+ "operationId": "CopyDocumentModelTo",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "copyToRequest",
+ "description": "Copy to request parameters.",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CopyAuthorization"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL."
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "CopyDocumentModelTo": {
+ "$ref": "./examples/CopyDocumentModelTo.json"
+ }
+ }
+ }
+ },
+ "/operations": {
+ "get": {
+ "summary": "List operations",
+ "description": "Lists all operations.",
+ "operationId": "GetOperations",
+ "tags": [
+ "Operation"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GetOperationsResponse"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "GetOperations": {
+ "$ref": "./examples/GetOperations.json"
+ }
+ }
+ }
+ },
+ "/operations/{operationId}": {
+ "get": {
+ "summary": "Get operation",
+ "description": "Gets operation info.",
+ "operationId": "GetOperation",
+ "tags": [
+ "Operation"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathOperationId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "GetOperation": {
+ "$ref": "./examples/GetOperation.json"
+ }
+ }
+ }
+ },
+ "/documentModels": {
+ "get": {
+ "summary": "List document models",
+ "description": "List all document models",
+ "operationId": "GetDocumentModels",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GetDocumentModelsResponse"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "GetDocumentModels": {
+ "$ref": "./examples/GetDocumentModels.json"
+ }
+ }
+ }
+ },
+ "/documentModels/{modelId}": {
+ "get": {
+ "summary": "Get document model",
+ "description": "Gets detailed document model information.",
+ "operationId": "GetDocumentModel",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "GetDocumentModel_Prebuilt": {
+ "$ref": "./examples/GetDocumentModel_Prebuilt.json"
+ },
+ "GetDocumentModel_Custom": {
+ "$ref": "./examples/GetDocumentModel_Custom.json"
+ }
+ }
+ },
+ "delete": {
+ "summary": "Delete document model",
+ "description": "Deletes document model.",
+ "operationId": "DeleteDocumentModel",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Deleting document model."
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "DeleteDocumentModel": {
+ "$ref": "./examples/DeleteDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/info": {
+ "get": {
+ "summary": "Get resource info",
+ "description": "Return information about the current resource.",
+ "operationId": "GetResourceDetails",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/ResourceDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "GetResourceDetails": {
+ "$ref": "./examples/GetResourceDetails.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AnalyzeDocumentRequest": {
+ "description": "Document analysis parameters.",
+ "type": "object",
+ "properties": {
+ "urlSource": {
+ "description": "Document URL to analyze",
+ "$ref": "#/definitions/UrlContentSource"
+ },
+ "base64Source": {
+ "description": "Base64 encoding of the document to analyze",
+ "$ref": "#/definitions/Base64ContentSource"
+ }
+ }
+ },
+ "BuildDocumentModelRequest": {
+ "description": "Request body to build a new custom document model.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "buildMode"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "buildMode": {
+ "$ref": "#/definitions/DocumentBuildMode"
+ },
+ "azureBlobSource": {
+ "description": "Azure Blob Storage location containing the training data.",
+ "$ref": "#/definitions/AzureBlobContentSource"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ComposeDocumentModelRequest": {
+ "description": "Request body to create a composed document model from component document models.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "componentModels"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "componentModels": {
+ "description": "List of component document models to compose.",
+ "type": "array",
+ "uniqueItems": true,
+ "items": {
+ "$ref": "#/definitions/ComponentDocumentModelDetails"
+ }
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ComponentDocumentModelDetails": {
+ "description": "A component of a composed document model.",
+ "type": "object",
+ "required": [
+ "modelId"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ }
+ }
+ },
+ "AuthorizeCopyRequest": {
+ "description": "Request body to authorize document model copy.",
+ "type": "object",
+ "required": [
+ "modelId"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "GetOperationsResponse": {
+ "description": "List Operations response object.",
+ "type": "object",
+ "required": [
+ "value"
+ ],
+ "properties": {
+ "value": {
+ "description": "List of operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationSummary"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next page of operations.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDetails": {
+ "description": "Get Operation response object.",
+ "type": "object",
+ "discriminator": "kind",
+ "required": [
+ "operationId",
+ "status",
+ "createdDateTime",
+ "lastUpdatedDateTime",
+ "kind",
+ "resourceLocation"
+ ],
+ "properties": {
+ "operationId": {
+ "description": "Operation ID",
+ "type": "string"
+ },
+ "status": {
+ "description": "Operation status.",
+ "type": "string",
+ "enum": [
+ "notStarted",
+ "running",
+ "failed",
+ "succeeded",
+ "canceled"
+ ],
+ "x-ms-enum": {
+ "name": "OperationStatus",
+ "modelAsString": false
+ }
+ },
+ "percentCompleted": {
+ "description": "Operation progress (0-100).",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the operation was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedDateTime": {
+ "description": "Date and time (UTC) when the status was last updated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "kind": {
+ "description": "Type of operation.",
+ "type": "string"
+ },
+ "resourceLocation": {
+ "description": "URL of the resource targeted by this operation.",
+ "type": "string"
+ },
+ "apiVersion": {
+ "description": "API version used to create this operation.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "description": "Encountered error.",
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "DocumentModelBuildOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentModelBuild",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ }
+ },
+ "DocumentModelComposeOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentModelCompose",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ }
+ },
+ "DocumentModelCopyToOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentModelCopyTo",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ }
+ },
+ "GetDocumentModelsResponse": {
+ "description": "List document models response object.",
+ "type": "object",
+ "required": [
+ "value"
+ ],
+ "properties": {
+ "value": {
+ "description": "List of document models.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentModelSummary"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next page of document models.",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceDetails": {
+ "description": "General information regarding the current resource.",
+ "type": "object",
+ "required": [
+ "customDocumentModels"
+ ],
+ "properties": {
+ "customDocumentModels": {
+ "$ref": "#/definitions/CustomDocumentModelsDetails"
+ }
+ }
+ },
+ "CustomDocumentModelsDetails": {
+ "description": "Details regarding custom document models.",
+ "type": "object",
+ "required": [
+ "count",
+ "limit"
+ ],
+ "properties": {
+ "count": {
+ "description": "Number of custom document models in the current resource.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "limit": {
+ "description": "Maximum number of custom document models supported in the current resource.",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "ApiVersion": {
+ "description": "API version.",
+ "type": "string",
+ "enum": [
+ "2022-08-31"
+ ],
+ "x-ms-enum": {
+ "name": "ApiVersion",
+ "modelAsString": true
+ }
+ },
+ "ErrorResponse": {
+ "description": "Error response object.",
+ "type": "object",
+ "required": [
+ "error"
+ ],
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "Error": {
+ "description": "Error info.",
+ "type": "object",
+ "required": [
+ "code",
+ "message"
+ ],
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "Target of the error.",
+ "type": "string"
+ },
+ "details": {
+ "description": "List of detailed errors.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "InnerError": {
+ "description": "Detailed error.",
+ "type": "object",
+ "required": [
+ "code"
+ ],
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Error message.",
+ "type": "string"
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "UrlContentSource": {
+ "description": "Content at specified URL.",
+ "type": "string",
+ "format": "uri"
+ },
+ "Base64ContentSource": {
+ "description": "Content represented via Base64 encoding.",
+ "type": "string",
+ "format": "byte"
+ },
+ "AzureBlobContentSource": {
+ "description": "Azure Blob Storage content.",
+ "type": "object",
+ "required": [
+ "containerUrl"
+ ],
+ "properties": {
+ "containerUrl": {
+ "description": "Azure Blob Storage container URL.",
+ "type": "string",
+ "format": "uri"
+ },
+ "prefix": {
+ "description": "Blob name prefix.",
+ "type": "string"
+ }
+ }
+ },
+ "CopyAuthorization": {
+ "description": "Authorization to copy a document model to the specified target resource and modelId.",
+ "type": "object",
+ "required": [
+ "targetResourceId",
+ "targetResourceRegion",
+ "targetModelId",
+ "targetModelLocation",
+ "accessToken",
+ "expirationDateTime"
+ ],
+ "properties": {
+ "targetResourceId": {
+ "description": "ID of the target Azure resource where the document model should be copied to.",
+ "type": "string",
+ "x-ms-azure-resource": true
+ },
+ "targetResourceRegion": {
+ "description": "Location of the target Azure resource where the document model should be copied to.",
+ "type": "string"
+ },
+ "targetModelId": {
+ "description": "Identifier of the target document model.",
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "targetModelLocation": {
+ "description": "URL of the copied document model in the target account.",
+ "type": "string"
+ },
+ "accessToken": {
+ "description": "Token used to authorize the request.",
+ "type": "string"
+ },
+ "expirationDateTime": {
+ "description": "Date/time when the access token expires.",
+ "type": "string",
+ "format": "date-time"
+ }
+ }
+ },
+ "OperationSummary": {
+ "description": "Operation info.",
+ "type": "object",
+ "required": [
+ "operationId",
+ "status",
+ "createdDateTime",
+ "lastUpdatedDateTime",
+ "kind",
+ "resourceLocation"
+ ],
+ "properties": {
+ "operationId": {
+ "description": "Operation ID",
+ "type": "string"
+ },
+ "status": {
+ "description": "Operation status.",
+ "type": "string",
+ "enum": [
+ "notStarted",
+ "running",
+ "failed",
+ "succeeded",
+ "canceled"
+ ],
+ "x-ms-enum": {
+ "name": "OperationStatus",
+ "modelAsString": false
+ }
+ },
+ "percentCompleted": {
+ "description": "Operation progress (0-100).",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the operation was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedDateTime": {
+ "description": "Date and time (UTC) when the status was last updated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "kind": {
+ "description": "Type of operation.",
+ "type": "string",
+ "enum": [
+ "documentModelBuild",
+ "documentModelCompose",
+ "documentModelCopyTo"
+ ],
+ "x-ms-enum": {
+ "name": "OperationKind",
+ "modelAsString": true
+ }
+ },
+ "resourceLocation": {
+ "description": "URL of the resource targeted by this operation.",
+ "type": "string"
+ },
+ "apiVersion": {
+ "description": "API version used to create this operation.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "DocumentModelSummary": {
+ "description": "Document model summary.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "createdDateTime"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the document model was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "apiVersion": {
+ "description": "API version used to create this document model.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "DocumentModelDetails": {
+ "description": "Document model info.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "createdDateTime"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the document model was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "apiVersion": {
+ "description": "API version used to create this document model.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "docTypes": {
+ "description": "Supported document types.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentTypeDetails"
+ }
+ }
+ }
+ },
+ "DocumentTypeDetails": {
+ "description": "Document type info.",
+ "type": "object",
+ "required": [
+ "fieldSchema"
+ ],
+ "properties": {
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "buildMode": {
+ "$ref": "#/definitions/DocumentBuildMode"
+ },
+ "fieldSchema": {
+ "$ref": "#/definitions/DocTypeSchema"
+ },
+ "fieldConfidence": {
+ "description": "Estimated confidence for each field.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1
+ }
+ }
+ }
+ },
+ "DocTypeSchema": {
+ "description": "Description of the document semantic schema using a JSON Schema style syntax.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentFieldSchema"
+ }
+ },
+ "DocumentFieldSchema": {
+ "description": "Description of the field semantic schema using a JSON Schema style syntax.",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/DocumentFieldType"
+ },
+ "description": {
+ "description": "Field description.",
+ "type": "string"
+ },
+ "example": {
+ "description": "Example field content.",
+ "type": "string"
+ },
+ "items": {
+ "description": "Field type schema of each array element.",
+ "$ref": "#/definitions/DocumentFieldSchema"
+ },
+ "properties": {
+ "description": "Named sub-fields of the object field.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentFieldSchema"
+ }
+ }
+ }
+ },
+ "AnalyzeResultOperation": {
+ "description": "Status and result of the analyze operation.",
+ "type": "object",
+ "required": [
+ "status",
+ "createdDateTime",
+ "lastUpdatedDateTime"
+ ],
+ "properties": {
+ "status": {
+ "description": "Operation status.",
+ "type": "string",
+ "enum": [
+ "notStarted",
+ "running",
+ "failed",
+ "succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "AnalyzeResultOperationStatus",
+ "modelAsString": false
+ }
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the analyze operation was submitted.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedDateTime": {
+ "description": "Date and time (UTC) when the status was last updated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "error": {
+ "description": "Encountered error during document analysis.",
+ "$ref": "#/definitions/Error"
+ },
+ "analyzeResult": {
+ "$ref": "#/definitions/AnalyzeResult"
+ }
+ }
+ },
+ "AnalyzeResult": {
+ "description": "Document analysis result.",
+ "type": "object",
+ "required": [
+ "apiVersion",
+ "modelId",
+ "stringIndexType",
+ "content",
+ "pages"
+ ],
+ "properties": {
+ "apiVersion": {
+ "description": "API version used to produce this result.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "modelId": {
+ "description": "Document model ID used to produce this result.",
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "stringIndexType": {
+ "description": "Method used to compute string offset and length.",
+ "$ref": "#/definitions/StringIndexType"
+ },
+ "content": {
+ "description": "Concatenate string representation of all textual and visual elements in reading order.",
+ "type": "string"
+ },
+ "pages": {
+ "description": "Analyzed pages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentPage"
+ }
+ },
+ "paragraphs": {
+ "description": "Extracted paragraphs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentParagraph"
+ }
+ },
+ "tables": {
+ "description": "Extracted tables.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentTable"
+ }
+ },
+ "keyValuePairs": {
+ "description": "Extracted key-value pairs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentKeyValuePair"
+ }
+ },
+ "styles": {
+ "description": "Extracted font styles.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentStyle"
+ }
+ },
+ "languages": {
+ "description": "Detected languages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentLanguage"
+ }
+ },
+ "documents": {
+ "description": "Extracted documents.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Document"
+ }
+ }
+ }
+ },
+ "DocumentPage": {
+ "description": "Content and layout elements extracted from a page from the input.",
+ "type": "object",
+ "required": [
+ "pageNumber",
+ "spans"
+ ],
+ "properties": {
+ "pageNumber": {
+ "description": "1-based page number in the input document.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "angle": {
+ "description": "The general orientation of the content in clockwise direction, measured in degrees between (-180, 180].",
+ "type": "number",
+ "minimum": -180,
+ "maximum": 180,
+ "exclusiveMinimum": true
+ },
+ "width": {
+ "description": "The width of the image/PDF in pixels/inches, respectively.",
+ "type": "number",
+ "minimum": 0
+ },
+ "height": {
+ "description": "The height of the image/PDF in pixels/inches, respectively.",
+ "type": "number",
+ "minimum": 0
+ },
+ "unit": {
+ "description": "The unit used by the width, height, and polygon properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".",
+ "type": "string",
+ "enum": [
+ "pixel",
+ "inch"
+ ],
+ "x-ms-enum": {
+ "name": "LengthUnit",
+ "modelAsString": true
+ }
+ },
+ "spans": {
+ "description": "Location of the page in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "words": {
+ "description": "Extracted words from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentWord"
+ }
+ },
+ "selectionMarks": {
+ "description": "Extracted selection marks from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSelectionMark"
+ }
+ },
+ "lines": {
+ "description": "Extracted lines from the page, potentially containing both textual and visual elements.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentLine"
+ }
+ }
+ }
+ },
+ "DocumentWord": {
+ "description": "A word object consisting of a contiguous sequence of characters. For non-space delimited languages, such as Chinese, Japanese, and Korean, each character is represented as its own word.",
+ "type": "object",
+ "required": [
+ "content",
+ "span",
+ "confidence"
+ ],
+ "properties": {
+ "content": {
+ "description": "Text content of the word.",
+ "type": "string"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the word.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "span": {
+ "description": "Location of the word in the reading order concatenated content.",
+ "$ref": "#/definitions/DocumentSpan"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the word.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentSelectionMark": {
+ "description": "A selection mark object representing check boxes, radio buttons, and other elements indicating a selection.",
+ "type": "object",
+ "required": [
+ "state",
+ "span",
+ "confidence"
+ ],
+ "properties": {
+ "state": {
+ "description": "State of the selection mark.",
+ "$ref": "#/definitions/DocumentSelectionMarkState"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the selection mark.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "span": {
+ "description": "Location of the selection mark in the reading order concatenated content.",
+ "$ref": "#/definitions/DocumentSpan"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the selection mark.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentSelectionMarkState": {
+ "description": "State of the selection mark.",
+ "type": "string",
+ "enum": [
+ "selected",
+ "unselected"
+ ],
+ "x-ms-enum": {
+ "name": "SelectionMarkState",
+ "modelAsString": true
+ }
+ },
+ "DocumentLine": {
+ "description": "A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.",
+ "type": "object",
+ "required": [
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "content": {
+ "description": "Concatenated content of the contained elements in reading order.",
+ "type": "string"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the line.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "spans": {
+ "description": "Location of the line in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentParagraph": {
+ "description": "A paragraph object consisting with contiguous lines generally with common alignment and spacing.",
+ "type": "object",
+ "required": [
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "role": {
+ "description": "Semantic role of the paragraph.",
+ "type": "string",
+ "enum": [
+ "pageHeader",
+ "pageFooter",
+ "pageNumber",
+ "title",
+ "sectionHeading",
+ "footnote"
+ ],
+ "x-ms-enum": {
+ "name": "ParagraphRole",
+ "modelAsString": true
+ }
+ },
+ "content": {
+ "description": "Concatenated content of the paragraph in reading order.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the paragraph.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the paragraph in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentTable": {
+ "description": "A table object consisting table cells arranged in a rectangular layout.",
+ "type": "object",
+ "required": [
+ "rowCount",
+ "columnCount",
+ "cells",
+ "spans"
+ ],
+ "properties": {
+ "rowCount": {
+ "description": "Number of rows in the table.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "columnCount": {
+ "description": "Number of columns in the table.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "cells": {
+ "description": "Cells contained within the table.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentTableCell"
+ }
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the table.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the table in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentTableCell": {
+ "description": "An object representing the location and content of a table cell.",
+ "type": "object",
+ "required": [
+ "rowIndex",
+ "columnIndex",
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "kind": {
+ "description": "Table cell kind.",
+ "type": "string",
+ "enum": [
+ "content",
+ "rowHeader",
+ "columnHeader",
+ "stubHead",
+ "description"
+ ],
+ "default": "content",
+ "x-ms-enum": {
+ "name": "DocumentTableCellKind",
+ "modelAsString": true
+ }
+ },
+ "rowIndex": {
+ "description": "Row index of the cell.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "columnIndex": {
+ "description": "Column index of the cell.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "rowSpan": {
+ "description": "Number of rows spanned by this cell.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "default": 1
+ },
+ "columnSpan": {
+ "description": "Number of columns spanned by this cell.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "default": 1
+ },
+ "content": {
+ "description": "Concatenated content of the table cell in reading order.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the table cell.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the table cell in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentKeyValuePair": {
+ "description": "An object representing a form field with distinct field label (key) and field value (may be empty).",
+ "type": "object",
+ "required": [
+ "key",
+ "confidence"
+ ],
+ "properties": {
+ "key": {
+ "description": "Field label of the key-value pair.",
+ "$ref": "#/definitions/DocumentKeyValueElement"
+ },
+ "value": {
+ "description": "Field value of the key-value pair.",
+ "$ref": "#/definitions/DocumentKeyValueElement"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the key-value pair.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentKeyValueElement": {
+ "description": "An object representing the field key or value in a key-value pair.",
+ "type": "object",
+ "required": [
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "content": {
+ "description": "Concatenated content of the key-value element in reading order.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the key-value element.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the key-value element in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentStyle": {
+ "description": "An object representing observed text styles.",
+ "type": "object",
+ "required": [
+ "spans",
+ "confidence"
+ ],
+ "properties": {
+ "isHandwritten": {
+ "description": "Is content handwritten?",
+ "type": "boolean"
+ },
+ "spans": {
+ "description": "Location of the text elements in the concatenated content the style applies to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly identifying the style.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentLanguage": {
+ "description": "An object representing the detected language for a given text span.",
+ "type": "object",
+ "required": [
+ "locale",
+ "spans",
+ "confidence"
+ ],
+ "properties": {
+ "locale": {
+ "description": "Detected language. Value may an ISO 639-1 language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"zh-Hans\").",
+ "type": "string"
+ },
+ "spans": {
+ "description": "Location of the text elements in the concatenated content the language applies to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly identifying the language.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "Document": {
+ "description": "An object describing the location and semantic content of a document.",
+ "type": "object",
+ "required": [
+ "docType",
+ "spans",
+ "confidence"
+ ],
+ "properties": {
+ "docType": {
+ "description": "Document type.",
+ "$ref": "#/definitions/DocType"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the document.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the document in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "fields": {
+ "description": "Dictionary of named field values.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentField"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the document.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentField": {
+ "description": "An object representing the content and location of a field value.",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "description": "Data type of the field value.",
+ "$ref": "#/definitions/DocumentFieldType"
+ },
+ "valueString": {
+ "description": "String value.",
+ "type": "string"
+ },
+ "valueDate": {
+ "description": "Date value in YYYY-MM-DD format (ISO 8601).",
+ "type": "string",
+ "format": "date"
+ },
+ "valueTime": {
+ "description": "Time value in hh:mm:ss format (ISO 8601).",
+ "type": "string",
+ "format": "time"
+ },
+ "valuePhoneNumber": {
+ "description": "Phone number value in E.164 format (ex. +19876543210).",
+ "type": "string"
+ },
+ "valueNumber": {
+ "description": "Floating point value.",
+ "type": "number"
+ },
+ "valueInteger": {
+ "description": "Integer value.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "valueSelectionMark": {
+ "description": "Selection mark value.",
+ "$ref": "#/definitions/DocumentSelectionMarkState"
+ },
+ "valueSignature": {
+ "description": "Presence of signature.",
+ "type": "string",
+ "enum": [
+ "signed",
+ "unsigned"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentSignatureType",
+ "modelAsString": true
+ }
+ },
+ "valueCountryRegion": {
+ "description": "3-letter country code value (ISO 3166-1 alpha-3).",
+ "type": "string"
+ },
+ "valueArray": {
+ "description": "Array of field values.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentField"
+ }
+ },
+ "valueObject": {
+ "description": "Dictionary of named field values.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentField"
+ }
+ },
+ "valueCurrency": {
+ "description": "Currency value.",
+ "$ref": "#/definitions/CurrencyValue"
+ },
+ "valueAddress": {
+ "description": "Address value.",
+ "$ref": "#/definitions/AddressValue"
+ },
+ "content": {
+ "description": "Field content.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the field.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the field in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the field.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentFieldType": {
+ "description": "Semantic data type of the field value.",
+ "type": "string",
+ "enum": [
+ "string",
+ "date",
+ "time",
+ "phoneNumber",
+ "number",
+ "integer",
+ "selectionMark",
+ "countryRegion",
+ "signature",
+ "array",
+ "object",
+ "currency",
+ "address"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentFieldType",
+ "modelAsString": true
+ }
+ },
+ "CurrencyValue": {
+ "description": "Currency field value.",
+ "type": "object",
+ "required": [
+ "amount"
+ ],
+ "properties": {
+ "amount": {
+ "description": "Currency amount.",
+ "type": "number",
+ "format": "double"
+ },
+ "currencySymbol": {
+ "description": "Currency symbol label, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "AddressValue": {
+ "description": "Address field value.",
+ "type": "object",
+ "properties": {
+ "houseNumber": {
+ "description": "House or building number.",
+ "type": "string"
+ },
+ "poBox": {
+ "description": "Post office box number.",
+ "type": "string"
+ },
+ "road": {
+ "description": "Street name.",
+ "type": "string"
+ },
+ "city": {
+ "description": "Name of city, town, village, etc.",
+ "type": "string"
+ },
+ "state": {
+ "description": "First-level administrative division.",
+ "type": "string"
+ },
+ "postalCode": {
+ "description": "Postal code used for mail sorting.",
+ "type": "string"
+ },
+ "countryRegion": {
+ "description": "Country/region.",
+ "type": "string"
+ },
+ "streetAddress": {
+ "description": "Street-level address, excluding city, state, countryRegion, and postalCode.",
+ "type": "string"
+ }
+ }
+ },
+ "DocumentModelId": {
+ "description": "Unique document model name.",
+ "type": "string",
+ "pattern": "[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}"
+ },
+ "DocumentModelDescription": {
+ "description": "Document model description.",
+ "type": "string",
+ "maxLength": 4096
+ },
+ "DocumentBuildMode": {
+ "description": "Custom document model build mode.",
+ "type": "string",
+ "enum": [
+ "template",
+ "neural"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentBuildMode",
+ "modelAsString": true
+ }
+ },
+ "DocType": {
+ "description": "Document type name.",
+ "type": "string",
+ "minLength": 2,
+ "maxLength": 64
+ },
+ "BoundingPolygon": {
+ "description": "Bounding polygon, with coordinates specified relative to the top-left of the page. The numbers represent the x, y values of the polygon vertices, clockwise from the left (-180 degrees inclusive) relative to the element orientation.",
+ "type": "array",
+ "items": {
+ "type": "number",
+ "minimum": 0
+ }
+ },
+ "BoundingRegion": {
+ "description": "Bounding polygon on a specific page of the input.",
+ "type": "object",
+ "required": [
+ "pageNumber",
+ "polygon"
+ ],
+ "properties": {
+ "pageNumber": {
+ "description": "1-based page number of page containing the bounding region.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "polygon": {
+ "description": "Bounding polygon on the page, or the entire page if not specified.",
+ "$ref": "#/definitions/BoundingPolygon"
+ }
+ }
+ },
+ "Confidence": {
+ "description": "Prediction confidence.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1
+ },
+ "DocumentSpan": {
+ "description": "Contiguous region of the concatenated content property, specified as an offset and length.",
+ "type": "object",
+ "required": [
+ "offset",
+ "length"
+ ],
+ "properties": {
+ "offset": {
+ "description": "Zero-based index of the content represented by the span.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0
+ },
+ "length": {
+ "description": "Number of characters in the content represented by the span.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0
+ }
+ }
+ },
+ "StringIndexType": {
+ "description": "Method used to compute string offset and length.",
+ "type": "string",
+ "enum": [
+ "textElements",
+ "unicodeCodePoint",
+ "utf16CodeUnit"
+ ],
+ "x-ms-enum": {
+ "name": "StringIndexType",
+ "modelAsString": true
+ },
+ "default": "textElements"
+ }
+ },
+ "parameters": {
+ "Endpoint": {
+ "name": "endpoint",
+ "description": "Supported Cognitive Services endpoints (protocol and hostname, for\nexample: https://westus2.api.cognitive.microsoft.com).",
+ "x-ms-parameter-location": "client",
+ "required": true,
+ "type": "string",
+ "in": "path",
+ "x-ms-skip-url-encoding": true
+ },
+ "QueryApiVersion": {
+ "name": "api-version",
+ "description": "Requested API version.",
+ "required": true,
+ "type": "string",
+ "in": "query",
+ "enum": [
+ "2022-08-31"
+ ],
+ "x-ms-enum": {
+ "name": "ApiVersion",
+ "modelAsString": true
+ },
+ "x-ms-parameter-location": "client"
+ },
+ "PathDocumentModelId": {
+ "name": "modelId",
+ "description": "Unique document model name.",
+ "required": true,
+ "type": "string",
+ "pattern": "[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}",
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "PathOperationId": {
+ "name": "operationId",
+ "description": "Unique operation ID.",
+ "required": true,
+ "type": "string",
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "PathResultId": {
+ "name": "resultId",
+ "description": "Analyze operation result ID.",
+ "required": true,
+ "type": "string",
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryPages": {
+ "name": "pages",
+ "description": "List of 1-based page numbers to analyze. Ex. \"1-3,5,7-9\"",
+ "required": false,
+ "type": "string",
+ "in": "query",
+ "pattern": "^(\\d+(-\\d+)?)(,\\s*(\\d+(-\\d+)?))*$",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryLocale": {
+ "name": "locale",
+ "description": "Locale hint for text recognition and document analysis. Value may contain only the language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"en-US\").",
+ "required": false,
+ "type": "string",
+ "in": "query",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryStringIndexType": {
+ "name": "stringIndexType",
+ "description": "Method used to compute string offset and length.",
+ "required": false,
+ "in": "query",
+ "type": "string",
+ "enum": [
+ "textElements",
+ "unicodeCodePoint",
+ "utf16CodeUnit"
+ ],
+ "x-ms-enum": {
+ "name": "StringIndexType",
+ "modelAsString": true
+ },
+ "default": "textElements",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Base64.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Base64.json
index 9f4032ce41cd..aa2417ead468 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Base64.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Base64.json
@@ -1,20 +1,20 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "prebuilt-layout",
- "pages": "1-2,4",
- "locale": "en-US",
- "stringIndexType": "textElements",
- "analyzeRequest": {
- "base64Source": "{base64EncodedPdf}"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "{endpoint}/formrecognizer/documentModels/prebuilt-layout/analyzeResults/{resultId}?api-version={apiVersion}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "prebuilt-layout",
+ "pages": "1-2,4",
+ "locale": "en-US",
+ "stringIndexType": "textElements",
+ "analyzeRequest": {
+ "base64Source": "{base64EncodedPdf}"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "{endpoint}/formrecognizer/documentModels/prebuilt-layout/analyzeResults/{resultId}?api-version={apiVersion}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Url.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Url.json
index cf5915e79d9e..026e5753980c 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Url.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AnalyzeDocument_Url.json
@@ -1,20 +1,20 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "customModel",
- "pages": "1-2,4",
- "locale": "en-US",
- "stringIndexType": "textElements",
- "analyzeRequest": {
- "urlSource": "http://host.com/doc.pdf"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "{endpoint}/formrecognizer/documentModels/customModel/analyzeResults/{resultId}?api-version={apiVersion}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "customModel",
+ "pages": "1-2,4",
+ "locale": "en-US",
+ "stringIndexType": "textElements",
+ "analyzeRequest": {
+ "urlSource": "http://host.com/doc.pdf"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "{endpoint}/formrecognizer/documentModels/customModel/analyzeResults/{resultId}?api-version={apiVersion}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AuthorizeCopyDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AuthorizeCopyDocumentModel.json
index 8108f410fc4f..660c79dd27e1 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AuthorizeCopyDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/AuthorizeCopyDocumentModel.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "authorizeCopyRequest": {
- "modelId": "{targetModelId}",
- "description": "{targetModelDescription}"
- }
- },
- "responses": {
- "200": {
- "body": {
- "targetResourceId": "{targetResourceId}",
- "targetResourceRegion": "{targetResourceRegion}",
- "targetModelId": "{targetModelId}",
- "targetModelLocation": "{targetEndpoint}/formrecognizer/documentModels/{targetModelId}?api-version={apiVersion}",
- "accessToken": "{accessToken}",
- "expirationDateTime": "2021-09-23T09:12:54.552Z"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "authorizeCopyRequest": {
+ "modelId": "{targetModelId}",
+ "description": "{targetModelDescription}"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "targetResourceId": "{targetResourceId}",
+ "targetResourceRegion": "{targetResourceRegion}",
+ "targetModelId": "{targetModelId}",
+ "targetModelLocation": "{targetEndpoint}/formrecognizer/documentModels/{targetModelId}?api-version={apiVersion}",
+ "accessToken": "{accessToken}",
+ "expirationDateTime": "2021-09-23T09:12:54.552Z"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/BuildDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/BuildDocumentModel.json
index eb7df0221a39..60f6db4ac355 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/BuildDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/BuildDocumentModel.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "buildRequest": {
- "modelId": "{modelId}",
- "description": "{modelDescription}",
- "buildMode": "template",
- "azureBlobSource": {
- "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
- "prefix": "{blobNamePrefix}"
- },
- "tags": {
- "createdBy": "{userId}"
- }
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "{endpoint}/formrecognizer/operations/{operationId}?api-version={apiVersion}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "buildRequest": {
+ "modelId": "{modelId}",
+ "description": "{modelDescription}",
+ "buildMode": "template",
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "{blobNamePrefix}"
+ },
+ "tags": {
+ "createdBy": "{userId}"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "{endpoint}/formrecognizer/operations/{operationId}?api-version={apiVersion}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/ComposeDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/ComposeDocumentModel.json
index 5cf1165da148..b59559fdb6b5 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/ComposeDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/ComposeDocumentModel.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "composeRequest": {
- "modelId": "{composedModelId}",
- "description": "{composedModelDescription}",
- "componentModels": [
- {
- "modelId": "{modelId1}"
- },
- {
- "modelId": "{modelId2}"
- }
- ]
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "{endpoint}/formrecognizer/operations/{operationId}?api-version={apiVersion}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "composeRequest": {
+ "modelId": "{composedModelId}",
+ "description": "{composedModelDescription}",
+ "componentModels": [
+ {
+ "modelId": "{modelId1}"
+ },
+ {
+ "modelId": "{modelId2}"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "{endpoint}/formrecognizer/operations/{operationId}?api-version={apiVersion}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/CopyDocumentModelTo.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/CopyDocumentModelTo.json
index 1151bf29bc32..6c55bc8d1939 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/CopyDocumentModelTo.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/CopyDocumentModelTo.json
@@ -1,22 +1,22 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "sourceModel",
- "copyToRequest": {
- "targetResourceId": "{targetResourceId}",
- "targetResourceRegion": "{targetResourceRegion}",
- "targetModelId": "targetModel",
- "targetModelLocation": "{targetEndpoint}/formrecognizer/documentModels/targetModel?api-version={apiVersion}",
- "accessToken": "{accessToken}",
- "expirationDateTime": "2021-09-23T09:12:54.552Z"
- }
- },
- "responses": {
- "202": {
- "headers": {
- "Operation-Location": "{endpoint}/formrecognizer/operations/{operationId}?api-version={apiVersion}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "sourceModel",
+ "copyToRequest": {
+ "targetResourceId": "{targetResourceId}",
+ "targetResourceRegion": "{targetResourceRegion}",
+ "targetModelId": "targetModel",
+ "targetModelLocation": "{targetEndpoint}/formrecognizer/documentModels/targetModel?api-version={apiVersion}",
+ "accessToken": "{accessToken}",
+ "expirationDateTime": "2021-09-23T09:12:54.552Z"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "{endpoint}/formrecognizer/operations/{operationId}?api-version={apiVersion}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/DeleteDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/DeleteDocumentModel.json
index 5b856e0a7ed7..5b86b604dbf9 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/DeleteDocumentModel.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/DeleteDocumentModel.json
@@ -1,10 +1,10 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "{modelId}"
- },
- "responses": {
- "204": {}
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "{modelId}"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetAnalyzeDocumentResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetAnalyzeDocumentResult.json
index 2295fa64a3f3..428019fd08e2 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetAnalyzeDocumentResult.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetAnalyzeDocumentResult.json
@@ -1,7219 +1,7219 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "prebuilt-invoice",
- "resultId": "{resultId}"
- },
- "responses": {
- "200": {
- "body": {
- "status": "succeeded",
- "createdDateTime": "2021-09-24T13:00:46Z",
- "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
- "analyzeResult": {
- "apiVersion": "{apiVersion}",
- "modelId": "prebuilt-invoice",
- "stringIndexType": "textElements",
- "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:",
- "pages": [
- {
- "pageNumber": 1,
- "angle": 0,
- "width": 8.5,
- "height": 11,
- "unit": "inch",
- "words": [
- {
- "content": "CONTOSO",
- "polygon": [
- 0.5911,
- 0.6857,
- 1.7451,
- 0.6857,
- 1.7451,
- 0.8664,
- 0.5911,
- 0.8664
- ],
- "confidence": 1,
- "span": {
- "offset": 0,
- "length": 7
- }
- },
- {
- "content": "LTD.",
- "polygon": [
- 1.8441,
- 0.6879,
- 2.3181,
- 0.6879,
- 2.3181,
- 0.865,
- 1.8441,
- 0.865
- ],
- "confidence": 1,
- "span": {
- "offset": 8,
- "length": 4
- }
- },
- {
- "content": "INVOICE",
- "polygon": [
- 7.0751,
- 0.589,
- 7.9886,
- 0.589,
- 7.9886,
- 0.7697,
- 7.0751,
- 0.7697
- ],
- "confidence": 1,
- "span": {
- "offset": 13,
- "length": 7
- }
- },
- {
- "content": "Contoso",
- "polygon": [
- 0.5882,
- 1.4303,
- 1.1337,
- 1.4303,
- 1.1337,
- 1.5383,
- 0.5882,
- 1.5383
- ],
- "confidence": 1,
- "span": {
- "offset": 21,
- "length": 7
- }
- },
- {
- "content": "Headquarters",
- "polygon": [
- 1.1905,
- 1.4239,
- 2.0978,
- 1.4239,
- 2.0978,
- 1.5664,
- 1.1905,
- 1.5664
- ],
- "confidence": 1,
- "span": {
- "offset": 29,
- "length": 12
- }
- },
- {
- "content": "INVOICE:",
- "polygon": [
- 6.8599,
- 1.4217,
- 7.4328,
- 1.4217,
- 7.4328,
- 1.5218,
- 6.8599,
- 1.5218
- ],
- "confidence": 1,
- "span": {
- "offset": 42,
- "length": 8
- }
- },
- {
- "content": "INV-100",
- "polygon": [
- 7.4959,
- 1.422,
- 7.9988,
- 1.422,
- 7.9988,
- 1.5215,
- 7.4959,
- 1.5215
- ],
- "confidence": 1,
- "span": {
- "offset": 51,
- "length": 7
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 1.6339,
- 0.8213,
- 1.6339,
- 0.8213,
- 1.742,
- 0.5945,
- 1.742
- ],
- "confidence": 1,
- "span": {
- "offset": 59,
- "length": 3
- }
- },
- {
- "content": "456th",
- "polygon": [
- 0.874,
- 1.6092,
- 1.2102,
- 1.6092,
- 1.2102,
- 1.742,
- 0.874,
- 1.742
- ],
- "confidence": 1,
- "span": {
- "offset": 63,
- "length": 5
- }
- },
- {
- "content": "St",
- "polygon": [
- 1.2598,
- 1.6339,
- 1.3812,
- 1.6339,
- 1.3812,
- 1.742,
- 1.2598,
- 1.742
- ],
- "confidence": 1,
- "span": {
- "offset": 69,
- "length": 2
- }
- },
- {
- "content": "INVOICE",
- "polygon": [
- 6.2263,
- 1.6254,
- 6.7562,
- 1.6254,
- 6.7562,
- 1.7256,
- 6.2263,
- 1.7256
- ],
- "confidence": 1,
- "span": {
- "offset": 72,
- "length": 7
- }
- },
- {
- "content": "DATE:",
- "polygon": [
- 6.8132,
- 1.6267,
- 7.1891,
- 1.6267,
- 7.1891,
- 1.7248,
- 6.8132,
- 1.7248
- ],
- "confidence": 1,
- "span": {
- "offset": 80,
- "length": 5
- }
- },
- {
- "content": "11/15/2019",
- "polygon": [
- 7.2528,
- 1.6139,
- 7.993,
- 1.6139,
- 7.993,
- 1.7449,
- 7.2528,
- 1.7449
- ],
- "confidence": 1,
- "span": {
- "offset": 86,
- "length": 10
- }
- },
- {
- "content": "New",
- "polygon": [
- 0.5943,
- 1.8385,
- 0.8848,
- 1.8385,
- 0.8848,
- 1.9454,
- 0.5943,
- 1.9454
- ],
- "confidence": 1,
- "span": {
- "offset": 97,
- "length": 3
- }
- },
- {
- "content": "York,",
- "polygon": [
- 0.9293,
- 1.8307,
- 1.2568,
- 1.8307,
- 1.2568,
- 1.9675,
- 0.9293,
- 1.9675
- ],
- "confidence": 1,
- "span": {
- "offset": 101,
- "length": 5
- }
- },
- {
- "content": "NY,",
- "polygon": [
- 1.3205,
- 1.8382,
- 1.5242,
- 1.8382,
- 1.5242,
- 1.9675,
- 1.3205,
- 1.9675
- ],
- "confidence": 1,
- "span": {
- "offset": 107,
- "length": 3
- }
- },
- {
- "content": "10001",
- "polygon": [
- 1.5915,
- 1.8372,
- 1.9894,
- 1.8372,
- 1.9894,
- 1.9454,
- 1.5915,
- 1.9454
- ],
- "confidence": 1,
- "span": {
- "offset": 111,
- "length": 5
- }
- },
- {
- "content": "DUE",
- "polygon": [
- 6.4966,
- 1.8333,
- 6.7569,
- 1.8333,
- 6.7569,
- 1.9322,
- 6.4966,
- 1.9322
- ],
- "confidence": 1,
- "span": {
- "offset": 117,
- "length": 3
- }
- },
- {
- "content": "DATE:",
- "polygon": [
- 6.8126,
- 1.8333,
- 7.1846,
- 1.8333,
- 7.1846,
- 1.9315,
- 6.8126,
- 1.9315
- ],
- "confidence": 1,
- "span": {
- "offset": 121,
- "length": 5
- }
- },
- {
- "content": "12/15/2019",
- "polygon": [
- 7.2494,
- 1.8206,
- 7.993,
- 1.8206,
- 7.993,
- 1.9515,
- 7.2494,
- 1.9515
- ],
- "confidence": 1,
- "span": {
- "offset": 127,
- "length": 10
- }
- },
- {
- "content": "CUSTOMER",
- "polygon": [
- 4.9513,
- 2.0388,
- 5.6868,
- 2.0388,
- 5.6868,
- 2.1389,
- 4.9513,
- 2.1389
- ],
- "confidence": 1,
- "span": {
- "offset": 138,
- "length": 8
- }
- },
- {
- "content": "NAME:",
- "polygon": [
- 5.7412,
- 2.04,
- 6.1764,
- 2.04,
- 6.1764,
- 2.1381,
- 5.7412,
- 2.1381
- ],
- "confidence": 1,
- "span": {
- "offset": 147,
- "length": 5
- }
- },
- {
- "content": "MICROSOFT",
- "polygon": [
- 6.2419,
- 2.0391,
- 6.9981,
- 2.0391,
- 6.9981,
- 2.1386,
- 6.2419,
- 2.1386
- ],
- "confidence": 1,
- "span": {
- "offset": 153,
- "length": 9
- }
- },
- {
- "content": "CORPORATION",
- "polygon": [
- 7.0448,
- 2.0391,
- 7.9825,
- 2.0391,
- 7.9825,
- 2.1386,
- 7.0448,
- 2.1386
- ],
- "confidence": 1,
- "span": {
- "offset": 163,
- "length": 11
- }
- },
- {
- "content": "SERVICE",
- "polygon": [
- 5.1667,
- 2.2421,
- 5.6923,
- 2.2421,
- 5.6923,
- 2.3422,
- 5.1667,
- 2.3422
- ],
- "confidence": 1,
- "span": {
- "offset": 175,
- "length": 7
- }
- },
- {
- "content": "PERIOD:",
- "polygon": [
- 5.748,
- 2.2421,
- 6.2721,
- 2.2421,
- 6.2721,
- 2.3422,
- 5.748,
- 2.3422
- ],
- "confidence": 1,
- "span": {
- "offset": 183,
- "length": 7
- }
- },
- {
- "content": "10/14/2019",
- "polygon": [
- 6.3357,
- 2.2306,
- 7.0749,
- 2.2306,
- 7.0749,
- 2.3615,
- 6.3357,
- 2.3615
- ],
- "confidence": 1,
- "span": {
- "offset": 191,
- "length": 10
- }
- },
- {
- "content": "–",
- "polygon": [
- 7.122,
- 2.2922,
- 7.1995,
- 2.2922,
- 7.1995,
- 2.3037,
- 7.122,
- 2.3037
- ],
- "confidence": 1,
- "span": {
- "offset": 202,
- "length": 1
- }
- },
- {
- "content": "11/14/2019",
- "polygon": [
- 7.2528,
- 2.2306,
- 7.9952,
- 2.2306,
- 7.9952,
- 2.3615,
- 7.2528,
- 2.3615
- ],
- "confidence": 1,
- "span": {
- "offset": 204,
- "length": 10
- }
- },
- {
- "content": "CUSTOMER",
- "polygon": [
- 6.3253,
- 2.4488,
- 7.0608,
- 2.4488,
- 7.0608,
- 2.5489,
- 6.3253,
- 2.5489
- ],
- "confidence": 1,
- "span": {
- "offset": 215,
- "length": 8
- }
- },
- {
- "content": "ID:",
- "polygon": [
- 7.1153,
- 2.45,
- 7.2809,
- 2.45,
- 7.2809,
- 2.5481,
- 7.1153,
- 2.5481
- ],
- "confidence": 1,
- "span": {
- "offset": 224,
- "length": 3
- }
- },
- {
- "content": "CID-12345",
- "polygon": [
- 7.3369,
- 2.4491,
- 7.9951,
- 2.4491,
- 7.9951,
- 2.5486,
- 7.3369,
- 2.5486
- ],
- "confidence": 1,
- "span": {
- "offset": 228,
- "length": 9
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 0.5943,
- 2.6436,
- 1.2303,
- 2.6436,
- 1.2303,
- 2.759,
- 0.5943,
- 2.759
- ],
- "confidence": 1,
- "span": {
- "offset": 238,
- "length": 9
- }
- },
- {
- "content": "Corp",
- "polygon": [
- 1.2808,
- 2.651,
- 1.586,
- 2.651,
- 1.586,
- 2.7871,
- 1.2808,
- 2.7871
- ],
- "confidence": 1,
- "span": {
- "offset": 248,
- "length": 4
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 2.8541,
- 0.8213,
- 2.8541,
- 0.8213,
- 2.9623,
- 0.5945,
- 2.9623
- ],
- "confidence": 1,
- "span": {
- "offset": 253,
- "length": 3
- }
- },
- {
- "content": "Other",
- "polygon": [
- 0.875,
- 2.8476,
- 1.262,
- 2.8476,
- 1.262,
- 2.9623,
- 0.875,
- 2.9623
- ],
- "confidence": 1,
- "span": {
- "offset": 257,
- "length": 5
- }
- },
- {
- "content": "St,",
- "polygon": [
- 1.3058,
- 2.8541,
- 1.4633,
- 2.8541,
- 1.4633,
- 2.9845,
- 1.3058,
- 2.9845
- ],
- "confidence": 1,
- "span": {
- "offset": 263,
- "length": 3
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 0.5943,
- 3.0513,
- 1.2222,
- 3.0513,
- 1.2222,
- 3.1656,
- 0.5943,
- 3.1656
- ],
- "confidence": 1,
- "span": {
- "offset": 267,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 1.2753,
- 3.0585,
- 1.5468,
- 3.0585,
- 1.5468,
- 3.1878,
- 1.2753,
- 3.1878
- ],
- "confidence": 1,
- "span": {
- "offset": 275,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 1.6033,
- 3.0575,
- 2.0083,
- 3.0575,
- 2.0083,
- 3.1656,
- 1.6033,
- 3.1656
- ],
- "confidence": 1,
- "span": {
- "offset": 279,
- "length": 5
- }
- },
- {
- "content": "BILL",
- "polygon": [
- 0.5909,
- 3.5603,
- 0.8438,
- 3.5603,
- 0.8438,
- 3.6579,
- 0.5909,
- 3.6579
- ],
- "confidence": 1,
- "span": {
- "offset": 285,
- "length": 4
- }
- },
- {
- "content": "TO:",
- "polygon": [
- 0.8846,
- 3.559,
- 1.1032,
- 3.559,
- 1.1032,
- 3.6592,
- 0.8846,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 290,
- "length": 3
- }
- },
- {
- "content": "SHIP",
- "polygon": [
- 3.3361,
- 3.559,
- 3.6278,
- 3.559,
- 3.6278,
- 3.6592,
- 3.3361,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 294,
- "length": 4
- }
- },
- {
- "content": "TO:",
- "polygon": [
- 3.6716,
- 3.559,
- 3.8903,
- 3.559,
- 3.8903,
- 3.6592,
- 3.6716,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 299,
- "length": 3
- }
- },
- {
- "content": "SERVICE",
- "polygon": [
- 6.2104,
- 3.559,
- 6.7361,
- 3.559,
- 6.7361,
- 3.6592,
- 6.2104,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 303,
- "length": 7
- }
- },
- {
- "content": "ADDRESS:",
- "polygon": [
- 6.7828,
- 3.559,
- 7.4232,
- 3.559,
- 7.4232,
- 3.6592,
- 6.7828,
- 3.6592
- ],
- "confidence": 1,
- "span": {
- "offset": 311,
- "length": 8
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 0.5943,
- 3.7641,
- 1.2303,
- 3.7641,
- 1.2303,
- 3.8794,
- 0.5943,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 320,
- "length": 9
- }
- },
- {
- "content": "Finance",
- "polygon": [
- 1.287,
- 3.7701,
- 1.7878,
- 3.7701,
- 1.7878,
- 3.8794,
- 1.287,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 330,
- "length": 7
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 3.3454,
- 3.7641,
- 3.9814,
- 3.7641,
- 3.9814,
- 3.8794,
- 3.3454,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 338,
- "length": 9
- }
- },
- {
- "content": "Delivery",
- "polygon": [
- 4.0381,
- 3.7647,
- 4.5762,
- 3.7647,
- 4.5762,
- 3.9076,
- 4.0381,
- 3.9076
- ],
- "confidence": 1,
- "span": {
- "offset": 348,
- "length": 8
- }
- },
- {
- "content": "Microsoft",
- "polygon": [
- 6.2197,
- 3.7641,
- 6.8557,
- 3.7641,
- 6.8557,
- 3.8794,
- 6.2197,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 357,
- "length": 9
- }
- },
- {
- "content": "Services",
- "polygon": [
- 6.9042,
- 3.7701,
- 7.4427,
- 3.7701,
- 7.4427,
- 3.8794,
- 6.9042,
- 3.8794
- ],
- "confidence": 1,
- "span": {
- "offset": 367,
- "length": 8
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 3.9746,
- 0.8213,
- 3.9746,
- 0.8213,
- 4.0827,
- 0.5945,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 376,
- "length": 3
- }
- },
- {
- "content": "Bill",
- "polygon": [
- 0.8842,
- 3.9681,
- 1.0657,
- 3.9681,
- 1.0657,
- 4.0817,
- 0.8842,
- 4.0817
- ],
- "confidence": 1,
- "span": {
- "offset": 380,
- "length": 4
- }
- },
- {
- "content": "St,",
- "polygon": [
- 1.1222,
- 3.9746,
- 1.2765,
- 3.9746,
- 1.2765,
- 4.1049,
- 1.1222,
- 4.1049
- ],
- "confidence": 1,
- "span": {
- "offset": 385,
- "length": 3
- }
- },
- {
- "content": "123",
- "polygon": [
- 3.3456,
- 3.9746,
- 3.5724,
- 3.9746,
- 3.5724,
- 4.0827,
- 3.3456,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 389,
- "length": 3
- }
- },
- {
- "content": "Ship",
- "polygon": [
- 3.6239,
- 3.9681,
- 3.9042,
- 3.9681,
- 3.9042,
- 4.1109,
- 3.6239,
- 4.1109
- ],
- "confidence": 1,
- "span": {
- "offset": 393,
- "length": 4
- }
- },
- {
- "content": "St,",
- "polygon": [
- 3.9536,
- 3.9746,
- 4.1111,
- 3.9746,
- 4.1111,
- 4.1049,
- 3.9536,
- 4.1049
- ],
- "confidence": 1,
- "span": {
- "offset": 398,
- "length": 3
- }
- },
- {
- "content": "123",
- "polygon": [
- 6.2199,
- 3.9746,
- 6.4467,
- 3.9746,
- 6.4467,
- 4.0827,
- 6.2199,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 402,
- "length": 3
- }
- },
- {
- "content": "Service",
- "polygon": [
- 6.4985,
- 3.9734,
- 6.9738,
- 3.9734,
- 6.9738,
- 4.0827,
- 6.4985,
- 4.0827
- ],
- "confidence": 1,
- "span": {
- "offset": 406,
- "length": 7
- }
- },
- {
- "content": "St,",
- "polygon": [
- 7.0246,
- 3.9746,
- 7.1821,
- 3.9746,
- 7.1821,
- 4.1049,
- 7.0246,
- 4.1049
- ],
- "confidence": 1,
- "span": {
- "offset": 414,
- "length": 3
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 0.5943,
- 4.1717,
- 1.2222,
- 4.1717,
- 1.2222,
- 4.2861,
- 0.5943,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 418,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 1.2753,
- 4.1789,
- 1.5468,
- 4.1789,
- 1.5468,
- 4.3082,
- 1.2753,
- 4.3082
- ],
- "confidence": 1,
- "span": {
- "offset": 426,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 1.6033,
- 4.1779,
- 2.0083,
- 4.1779,
- 2.0083,
- 4.2861,
- 1.6033,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 430,
- "length": 5
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 3.3454,
- 4.1717,
- 3.9732,
- 4.1717,
- 3.9732,
- 4.2861,
- 3.3454,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 436,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 4.0264,
- 4.1789,
- 4.2979,
- 4.1789,
- 4.2979,
- 4.3082,
- 4.0264,
- 4.3082
- ],
- "confidence": 1,
- "span": {
- "offset": 444,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 4.3544,
- 4.1779,
- 4.7594,
- 4.1779,
- 4.7594,
- 4.2861,
- 4.3544,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 448,
- "length": 5
- }
- },
- {
- "content": "Redmond",
- "polygon": [
- 6.2197,
- 4.1717,
- 6.8475,
- 4.1717,
- 6.8475,
- 4.2861,
- 6.2197,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 454,
- "length": 7
- }
- },
- {
- "content": "WA,",
- "polygon": [
- 6.9007,
- 4.1789,
- 7.1722,
- 4.1789,
- 7.1722,
- 4.3082,
- 6.9007,
- 4.3082
- ],
- "confidence": 1,
- "span": {
- "offset": 462,
- "length": 3
- }
- },
- {
- "content": "98052",
- "polygon": [
- 7.2287,
- 4.1779,
- 7.6337,
- 4.1779,
- 7.6337,
- 4.2861,
- 7.2287,
- 4.2861
- ],
- "confidence": 1,
- "span": {
- "offset": 466,
- "length": 5
- }
- },
- {
- "content": "SALESPERSON",
- "polygon": [
- 0.7018,
- 4.6528,
- 1.6092,
- 4.6528,
- 1.6092,
- 4.7529,
- 0.7018,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 472,
- "length": 11
- }
- },
- {
- "content": "P.O.",
- "polygon": [
- 2.1216,
- 4.6528,
- 2.3788,
- 4.6528,
- 2.3788,
- 4.7529,
- 2.1216,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 484,
- "length": 4
- }
- },
- {
- "content": "NUMBER",
- "polygon": [
- 2.4376,
- 4.654,
- 3.0155,
- 4.654,
- 3.0155,
- 4.7529,
- 2.4376,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 489,
- "length": 6
- }
- },
- {
- "content": "REQUISITIONER",
- "polygon": [
- 3.4953,
- 4.6528,
- 4.5157,
- 4.6528,
- 4.5157,
- 4.7687,
- 3.4953,
- 4.7687
- ],
- "confidence": 1,
- "span": {
- "offset": 496,
- "length": 13
- }
- },
- {
- "content": "SHIPPED",
- "polygon": [
- 4.81,
- 4.6528,
- 5.362,
- 4.6528,
- 5.362,
- 4.7529,
- 4.81,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 510,
- "length": 7
- }
- },
- {
- "content": "VIA",
- "polygon": [
- 5.409,
- 4.654,
- 5.6317,
- 4.654,
- 5.6317,
- 4.7517,
- 5.409,
- 4.7517
- ],
- "confidence": 1,
- "span": {
- "offset": 518,
- "length": 3
- }
- },
- {
- "content": "F.O.B.",
- "polygon": [
- 5.8696,
- 4.6528,
- 6.2467,
- 4.6528,
- 6.2467,
- 4.7529,
- 5.8696,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 522,
- "length": 6
- }
- },
- {
- "content": "POINT",
- "polygon": [
- 6.3054,
- 4.6528,
- 6.706,
- 4.6528,
- 6.706,
- 4.7529,
- 6.3054,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 529,
- "length": 5
- }
- },
- {
- "content": "TERMS",
- "polygon": [
- 7.1806,
- 4.6528,
- 7.6304,
- 4.6528,
- 7.6304,
- 4.7529,
- 7.1806,
- 4.7529
- ],
- "confidence": 1,
- "span": {
- "offset": 535,
- "length": 5
- }
- },
- {
- "content": "PO-3333",
- "polygon": [
- 1.9114,
- 4.9282,
- 2.4718,
- 4.9282,
- 2.4718,
- 5.0363,
- 1.9114,
- 5.0363
- ],
- "confidence": 1,
- "span": {
- "offset": 541,
- "length": 7
- }
- },
- {
- "content": "DATE",
- "polygon": [
- 0.7409,
- 5.421,
- 1.0744,
- 5.421,
- 1.0744,
- 5.5186,
- 0.7409,
- 5.5186
- ],
- "confidence": 1,
- "span": {
- "offset": 549,
- "length": 4
- }
- },
- {
- "content": "ITEM",
- "polygon": [
- 1.4213,
- 5.421,
- 1.7338,
- 5.421,
- 1.7338,
- 5.5186,
- 1.4213,
- 5.5186
- ],
- "confidence": 1,
- "span": {
- "offset": 554,
- "length": 4
- }
- },
- {
- "content": "CODE",
- "polygon": [
- 1.7893,
- 5.4197,
- 2.1407,
- 5.4197,
- 2.1407,
- 5.5199,
- 1.7893,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 559,
- "length": 4
- }
- },
- {
- "content": "DESCRIPTION",
- "polygon": [
- 2.8516,
- 5.4197,
- 3.7134,
- 5.4197,
- 3.7134,
- 5.5199,
- 2.8516,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 564,
- "length": 11
- }
- },
- {
- "content": "QTY",
- "polygon": [
- 4.4043,
- 5.4197,
- 4.6631,
- 5.4197,
- 4.6631,
- 5.5357,
- 4.4043,
- 5.5357
- ],
- "confidence": 1,
- "span": {
- "offset": 576,
- "length": 3
- }
- },
- {
- "content": "UM",
- "polygon": [
- 5.049,
- 5.421,
- 5.2654,
- 5.421,
- 5.2654,
- 5.5199,
- 5.049,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 580,
- "length": 2
- }
- },
- {
- "content": "PRICE",
- "polygon": [
- 5.8563,
- 5.4199,
- 6.2163,
- 5.4199,
- 6.2163,
- 5.5197,
- 5.8563,
- 5.5197
- ],
- "confidence": 1,
- "span": {
- "offset": 583,
- "length": 5
- }
- },
- {
- "content": "TAX",
- "polygon": [
- 6.7169,
- 5.421,
- 6.974,
- 5.421,
- 6.974,
- 5.5186,
- 6.7169,
- 5.5186
- ],
- "confidence": 1,
- "span": {
- "offset": 589,
- "length": 3
- }
- },
- {
- "content": "AMOUNT",
- "polygon": [
- 7.2847,
- 5.4197,
- 7.9039,
- 5.4197,
- 7.9039,
- 5.5199,
- 7.2847,
- 5.5199
- ],
- "confidence": 1,
- "span": {
- "offset": 593,
- "length": 6
- }
- },
- {
- "content": "3/4/2021",
- "polygon": [
- 0.592,
- 5.682,
- 1.2092,
- 5.682,
- 1.2092,
- 5.8243,
- 0.592,
- 5.8243
- ],
- "confidence": 1,
- "span": {
- "offset": 600,
- "length": 8
- }
- },
- {
- "content": "A123",
- "polygon": [
- 1.6069,
- 5.6948,
- 1.9417,
- 5.6948,
- 1.9417,
- 5.803,
- 1.6069,
- 5.803
- ],
- "confidence": 1,
- "span": {
- "offset": 609,
- "length": 4
- }
- },
- {
- "content": "Consulting",
- "polygon": [
- 2.3388,
- 5.6883,
- 3.0438,
- 5.6883,
- 3.0438,
- 5.8312,
- 2.3388,
- 5.8312
- ],
- "confidence": 1,
- "span": {
- "offset": 614,
- "length": 10
- }
- },
- {
- "content": "Services",
- "polygon": [
- 3.0925,
- 5.6937,
- 3.6278,
- 5.6937,
- 3.6278,
- 5.803,
- 3.0925,
- 5.803
- ],
- "confidence": 1,
- "span": {
- "offset": 625,
- "length": 8
- }
- },
- {
- "content": "2",
- "polygon": [
- 4.5977,
- 5.6948,
- 4.6635,
- 5.6948,
- 4.6635,
- 5.8017,
- 4.5977,
- 5.8017
- ],
- "confidence": 1,
- "span": {
- "offset": 634,
- "length": 1
- }
- },
- {
- "content": "hours",
- "polygon": [
- 4.8444,
- 5.6883,
- 5.2071,
- 5.6883,
- 5.2071,
- 5.803,
- 4.8444,
- 5.803
- ],
- "confidence": 1,
- "span": {
- "offset": 636,
- "length": 5
- }
- },
- {
- "content": "$30.00",
- "polygon": [
- 5.9669,
- 5.6777,
- 6.4142,
- 5.6777,
- 6.4142,
- 5.8215,
- 5.9669,
- 5.8215
- ],
- "confidence": 1,
- "span": {
- "offset": 642,
- "length": 6
- }
- },
- {
- "content": "10%",
- "polygon": [
- 6.7168,
- 5.6932,
- 6.9826,
- 5.6932,
- 6.9826,
- 5.8045,
- 6.7168,
- 5.8045
- ],
- "confidence": 1,
- "span": {
- "offset": 649,
- "length": 3
- }
- },
- {
- "content": "$60.00",
- "polygon": [
- 7.4642,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8215,
- 7.4642,
- 5.8215
- ],
- "confidence": 1,
- "span": {
- "offset": 653,
- "length": 6
- }
- },
- {
- "content": "3/5/2021",
- "polygon": [
- 0.592,
- 5.9787,
- 1.2088,
- 5.9787,
- 1.2088,
- 6.121,
- 0.592,
- 6.121
- ],
- "confidence": 1,
- "span": {
- "offset": 660,
- "length": 8
- }
- },
- {
- "content": "B456",
- "polygon": [
- 1.6214,
- 5.9915,
- 1.9419,
- 5.9915,
- 1.9419,
- 6.0997,
- 1.6214,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 669,
- "length": 4
- }
- },
- {
- "content": "Document",
- "polygon": [
- 2.345,
- 5.993,
- 3.0318,
- 5.993,
- 3.0318,
- 6.0997,
- 2.345,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 674,
- "length": 8
- }
- },
- {
- "content": "Fee",
- "polygon": [
- 3.0887,
- 5.993,
- 3.3096,
- 5.993,
- 3.3096,
- 6.0997,
- 3.0887,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 683,
- "length": 3
- }
- },
- {
- "content": "3",
- "polygon": [
- 4.5967,
- 5.9915,
- 4.6627,
- 5.9915,
- 4.6627,
- 6.0997,
- 4.5967,
- 6.0997
- ],
- "confidence": 1,
- "span": {
- "offset": 687,
- "length": 1
- }
- },
- {
- "content": "$10.00",
- "polygon": [
- 5.9669,
- 5.9743,
- 6.4142,
- 5.9743,
- 6.4142,
- 6.1182,
- 5.9669,
- 6.1182
- ],
- "confidence": 1,
- "span": {
- "offset": 689,
- "length": 6
- }
- },
- {
- "content": "5%",
- "polygon": [
- 6.7508,
- 5.9898,
- 6.9393,
- 5.9898,
- 6.9393,
- 6.1012,
- 6.7508,
- 6.1012
- ],
- "confidence": 1,
- "span": {
- "offset": 696,
- "length": 2
- }
- },
- {
- "content": "$30.00",
- "polygon": [
- 7.4642,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.1182,
- 7.4642,
- 6.1182
- ],
- "confidence": 1,
- "span": {
- "offset": 699,
- "length": 6
- }
- },
- {
- "content": "3/6/2021",
- "polygon": [
- 0.592,
- 6.2789,
- 1.2088,
- 6.2789,
- 1.2088,
- 6.4213,
- 0.592,
- 6.4213
- ],
- "confidence": 1,
- "span": {
- "offset": 706,
- "length": 8
- }
- },
- {
- "content": "C789",
- "polygon": [
- 1.6152,
- 6.2918,
- 1.94,
- 6.2918,
- 1.94,
- 6.3999,
- 1.6152,
- 6.3999
- ],
- "confidence": 1,
- "span": {
- "offset": 715,
- "length": 4
- }
- },
- {
- "content": "Printing",
- "polygon": [
- 2.345,
- 6.2906,
- 2.8575,
- 6.2906,
- 2.8575,
- 6.4281,
- 2.345,
- 6.4281
- ],
- "confidence": 1,
- "span": {
- "offset": 720,
- "length": 8
- }
- },
- {
- "content": "Fee",
- "polygon": [
- 2.9143,
- 6.2933,
- 3.1351,
- 6.2933,
- 3.1351,
- 6.3999,
- 2.9143,
- 6.3999
- ],
- "confidence": 1,
- "span": {
- "offset": 729,
- "length": 3
- }
- },
- {
- "content": "10",
- "polygon": [
- 4.5158,
- 6.2918,
- 4.6637,
- 6.2918,
- 4.6637,
- 6.3999,
- 4.5158,
- 6.3999
- ],
- "confidence": 1,
- "span": {
- "offset": 733,
- "length": 2
- }
- },
- {
- "content": "pages",
- "polygon": [
- 4.8444,
- 6.3196,
- 5.2199,
- 6.3196,
- 5.2199,
- 6.4281,
- 4.8444,
- 6.4281
- ],
- "confidence": 1,
- "span": {
- "offset": 736,
- "length": 5
- }
- },
- {
- "content": "$1.00",
- "polygon": [
- 6.0502,
- 6.2746,
- 6.4142,
- 6.2746,
- 6.4142,
- 6.4184,
- 6.0502,
- 6.4184
- ],
- "confidence": 1,
- "span": {
- "offset": 742,
- "length": 5
- }
- },
- {
- "content": "20%",
- "polygon": [
- 6.712,
- 6.2901,
- 6.9826,
- 6.2901,
- 6.9826,
- 6.4014,
- 6.712,
- 6.4014
- ],
- "confidence": 1,
- "span": {
- "offset": 748,
- "length": 3
- }
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4642,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4184,
- 7.4642,
- 6.4184
- ],
- "confidence": 1,
- "span": {
- "offset": 752,
- "length": 6
- }
- },
- {
- "content": "SUBTOTAL",
- "polygon": [
- 6.0282,
- 6.9118,
- 6.7309,
- 6.9118,
- 6.7309,
- 7.0199,
- 6.0282,
- 7.0199
- ],
- "confidence": 1,
- "span": {
- "offset": 759,
- "length": 8
- }
- },
- {
- "content": "$100.00",
- "polygon": [
- 7.3842,
- 6.8679,
- 7.9181,
- 6.8679,
- 7.9181,
- 7.0118,
- 7.3842,
- 7.0118
- ],
- "confidence": 1,
- "span": {
- "offset": 768,
- "length": 7
- }
- },
- {
- "content": "SALES",
- "polygon": [
- 6.0382,
- 7.2089,
- 6.4262,
- 7.2089,
- 6.4262,
- 7.317,
- 6.0382,
- 7.317
- ],
- "confidence": 1,
- "span": {
- "offset": 776,
- "length": 5
- }
- },
- {
- "content": "TAX",
- "polygon": [
- 6.4702,
- 7.2099,
- 6.728,
- 7.2099,
- 6.728,
- 7.316,
- 6.4702,
- 7.316
- ],
- "confidence": 1,
- "span": {
- "offset": 782,
- "length": 3
- }
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4709,
- 7.165,
- 7.9182,
- 7.165,
- 7.9182,
- 7.3089,
- 7.4709,
- 7.3089
- ],
- "confidence": 1,
- "span": {
- "offset": 786,
- "length": 6
- }
- },
- {
- "content": "TOTAL",
- "polygon": [
- 6.2969,
- 7.5089,
- 6.7309,
- 7.5089,
- 6.7309,
- 7.617,
- 6.2969,
- 7.617
- ],
- "confidence": 1,
- "span": {
- "offset": 793,
- "length": 5
- }
- },
- {
- "content": "$110.00",
- "polygon": [
- 7.3842,
- 7.465,
- 7.9181,
- 7.465,
- 7.9181,
- 7.6089,
- 7.3842,
- 7.6089
- ],
- "confidence": 1,
- "span": {
- "offset": 799,
- "length": 7
- }
- },
- {
- "content": "PREVIOUS",
- "polygon": [
- 4.8126,
- 7.8055,
- 5.4789,
- 7.8055,
- 5.4789,
- 7.9137,
- 4.8126,
- 7.9137
- ],
- "confidence": 1,
- "span": {
- "offset": 807,
- "length": 8
- }
- },
- {
- "content": "UNPAID",
- "polygon": [
- 5.5362,
- 7.8065,
- 6.057,
- 7.8065,
- 6.057,
- 7.9137,
- 5.5362,
- 7.9137
- ],
- "confidence": 1,
- "span": {
- "offset": 816,
- "length": 6
- }
- },
- {
- "content": "BALANCE",
- "polygon": [
- 6.1164,
- 7.8057,
- 6.7249,
- 7.8057,
- 6.7249,
- 7.9135,
- 6.1164,
- 7.9135
- ],
- "confidence": 1,
- "span": {
- "offset": 823,
- "length": 7
- }
- },
- {
- "content": "$500.00",
- "polygon": [
- 7.3842,
- 7.7617,
- 7.9181,
- 7.7617,
- 7.9181,
- 7.9055,
- 7.3842,
- 7.9055
- ],
- "confidence": 1,
- "span": {
- "offset": 831,
- "length": 7
- }
- },
- {
- "content": "AMOUNT",
- "polygon": [
- 5.7652,
- 8.1022,
- 6.4055,
- 8.1022,
- 6.4055,
- 8.2104,
- 5.7652,
- 8.2104
- ],
- "confidence": 1,
- "span": {
- "offset": 839,
- "length": 6
- }
- },
- {
- "content": "DUE",
- "polygon": [
- 6.4562,
- 8.1032,
- 6.725,
- 8.1032,
- 6.725,
- 8.2104,
- 6.4562,
- 8.2104
- ],
- "confidence": 1,
- "span": {
- "offset": 846,
- "length": 3
- }
- },
- {
- "content": "$610.00",
- "polygon": [
- 7.3842,
- 8.0584,
- 7.9181,
- 8.0584,
- 7.9181,
- 8.2022,
- 7.3842,
- 8.2022
- ],
- "confidence": 1,
- "span": {
- "offset": 850,
- "length": 7
- }
- },
- {
- "content": "THANK",
- "polygon": [
- 3.129,
- 8.5453,
- 3.5887,
- 8.5453,
- 3.5887,
- 8.6429,
- 3.129,
- 8.6429
- ],
- "confidence": 1,
- "span": {
- "offset": 858,
- "length": 5
- }
- },
- {
- "content": "YOU",
- "polygon": [
- 3.6316,
- 8.544,
- 3.9064,
- 8.544,
- 3.9064,
- 8.6442,
- 3.6316,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 864,
- "length": 3
- }
- },
- {
- "content": "FOR",
- "polygon": [
- 3.9671,
- 8.544,
- 4.2187,
- 8.544,
- 4.2187,
- 8.6442,
- 3.9671,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 868,
- "length": 3
- }
- },
- {
- "content": "YOUR",
- "polygon": [
- 4.2638,
- 8.544,
- 4.6347,
- 8.544,
- 4.6347,
- 8.6442,
- 4.2638,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 872,
- "length": 4
- }
- },
- {
- "content": "BUSINESS!",
- "polygon": [
- 4.6859,
- 8.539,
- 5.356,
- 8.539,
- 5.356,
- 8.6442,
- 4.6859,
- 8.6442
- ],
- "confidence": 1,
- "span": {
- "offset": 877,
- "length": 9
- }
- },
- {
- "content": "REMIT",
- "polygon": [
- 0.5909,
- 9.1619,
- 1.0014,
- 9.1619,
- 1.0014,
- 9.2596,
- 0.5909,
- 9.2596
- ],
- "confidence": 1,
- "span": {
- "offset": 887,
- "length": 5
- }
- },
- {
- "content": "TO:",
- "polygon": [
- 1.0446,
- 9.1607,
- 1.2603,
- 9.1607,
- 1.2603,
- 9.2608,
- 1.0446,
- 9.2608
- ],
- "confidence": 1,
- "span": {
- "offset": 893,
- "length": 3
- }
- },
- {
- "content": "Contoso",
- "polygon": [
- 0.5882,
- 9.3697,
- 1.1337,
- 9.3697,
- 1.1337,
- 9.4777,
- 0.5882,
- 9.4777
- ],
- "confidence": 1,
- "span": {
- "offset": 897,
- "length": 7
- }
- },
- {
- "content": "Billing",
- "polygon": [
- 1.1905,
- 9.3631,
- 1.5828,
- 9.3631,
- 1.5828,
- 9.5059,
- 1.1905,
- 9.5059
- ],
- "confidence": 1,
- "span": {
- "offset": 905,
- "length": 7
- }
- },
- {
- "content": "123",
- "polygon": [
- 0.5945,
- 9.5728,
- 0.8213,
- 9.5728,
- 0.8213,
- 9.681,
- 0.5945,
- 9.681
- ],
- "confidence": 1,
- "span": {
- "offset": 913,
- "length": 3
- }
- },
- {
- "content": "Remit",
- "polygon": [
- 0.881,
- 9.5717,
- 1.264,
- 9.5717,
- 1.264,
- 9.681,
- 0.881,
- 9.681
- ],
- "confidence": 1,
- "span": {
- "offset": 917,
- "length": 5
- }
- },
- {
- "content": "St",
- "polygon": [
- 1.3125,
- 9.5728,
- 1.4337,
- 9.5728,
- 1.4337,
- 9.681,
- 1.3125,
- 9.681
- ],
- "confidence": 1,
- "span": {
- "offset": 923,
- "length": 2
- }
- },
- {
- "content": "New",
- "polygon": [
- 0.5943,
- 9.7808,
- 0.8848,
- 9.7808,
- 0.8848,
- 9.8877,
- 0.5943,
- 9.8877
- ],
- "confidence": 1,
- "span": {
- "offset": 926,
- "length": 3
- }
- },
- {
- "content": "York,",
- "polygon": [
- 0.9293,
- 9.773,
- 1.2568,
- 9.773,
- 1.2568,
- 9.9098,
- 0.9293,
- 9.9098
- ],
- "confidence": 1,
- "span": {
- "offset": 930,
- "length": 5
- }
- },
- {
- "content": "NY,",
- "polygon": [
- 1.3205,
- 9.7805,
- 1.5233,
- 9.7805,
- 1.5233,
- 9.9098,
- 1.3205,
- 9.9098
- ],
- "confidence": 1,
- "span": {
- "offset": 936,
- "length": 3
- }
- },
- {
- "content": "10001",
- "polygon": [
- 1.5903,
- 9.7795,
- 1.9882,
- 9.7795,
- 1.9882,
- 9.8877,
- 1.5903,
- 9.8877
- ],
- "confidence": 1,
- "span": {
- "offset": 940,
- "length": 5
- }
- }
- ],
- "selectionMarks": [
- {
- "state": "unselected",
- "polygon": [
- 4.3231,
- 5.6279,
- 4.7562,
- 5.6279,
- 4.7562,
- 5.8654,
- 4.3231,
- 5.8654
- ],
- "confidence": 0.212,
- "span": {
- "offset": 946,
- "length": 12
- }
- }
- ],
- "lines": [
- {
- "content": "CONTOSO LTD.",
- "polygon": [
- 0.5911,
- 0.6857,
- 2.3181,
- 0.6857,
- 2.3181,
- 0.8664,
- 0.5911,
- 0.8664
- ],
- "spans": [
- {
- "offset": 0,
- "length": 12
- }
- ]
- },
- {
- "content": "INVOICE",
- "polygon": [
- 7.0751,
- 0.589,
- 7.9886,
- 0.589,
- 7.9886,
- 0.7697,
- 7.0751,
- 0.7697
- ],
- "spans": [
- {
- "offset": 13,
- "length": 7
- }
- ]
- },
- {
- "content": "Contoso Headquarters",
- "polygon": [
- 0.5882,
- 1.4239,
- 2.0978,
- 1.4239,
- 2.0978,
- 1.5664,
- 0.5882,
- 1.5664
- ],
- "spans": [
- {
- "offset": 21,
- "length": 20
- }
- ]
- },
- {
- "content": "INVOICE: INV-100",
- "polygon": [
- 6.8599,
- 1.4217,
- 7.9988,
- 1.4217,
- 7.9988,
- 1.5218,
- 6.8599,
- 1.5218
- ],
- "spans": [
- {
- "offset": 42,
- "length": 16
- }
- ]
- },
- {
- "content": "123 456th St",
- "polygon": [
- 0.5945,
- 1.6092,
- 1.3812,
- 1.6092,
- 1.3812,
- 1.742,
- 0.5945,
- 1.742
- ],
- "spans": [
- {
- "offset": 59,
- "length": 12
- }
- ]
- },
- {
- "content": "INVOICE DATE: 11/15/2019",
- "polygon": [
- 6.2263,
- 1.6139,
- 7.993,
- 1.6139,
- 7.993,
- 1.7449,
- 6.2263,
- 1.7449
- ],
- "spans": [
- {
- "offset": 72,
- "length": 24
- }
- ]
- },
- {
- "content": "New York, NY, 10001",
- "polygon": [
- 0.5943,
- 1.8307,
- 1.9894,
- 1.8307,
- 1.9894,
- 1.9675,
- 0.5943,
- 1.9675
- ],
- "spans": [
- {
- "offset": 97,
- "length": 19
- }
- ]
- },
- {
- "content": "DUE DATE: 12/15/2019",
- "polygon": [
- 6.4966,
- 1.8206,
- 7.993,
- 1.8206,
- 7.993,
- 1.9515,
- 6.4966,
- 1.9515
- ],
- "spans": [
- {
- "offset": 117,
- "length": 20
- }
- ]
- },
- {
- "content": "CUSTOMER NAME: MICROSOFT CORPORATION",
- "polygon": [
- 4.9513,
- 2.0388,
- 7.9825,
- 2.0388,
- 7.9825,
- 2.1389,
- 4.9513,
- 2.1389
- ],
- "spans": [
- {
- "offset": 138,
- "length": 36
- }
- ]
- },
- {
- "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019",
- "polygon": [
- 5.1667,
- 2.2306,
- 7.9952,
- 2.2306,
- 7.9952,
- 2.3615,
- 5.1667,
- 2.3615
- ],
- "spans": [
- {
- "offset": 175,
- "length": 39
- }
- ]
- },
- {
- "content": "CUSTOMER ID: CID-12345",
- "polygon": [
- 6.3253,
- 2.4488,
- 7.9951,
- 2.4488,
- 7.9951,
- 2.5489,
- 6.3253,
- 2.5489
- ],
- "spans": [
- {
- "offset": 215,
- "length": 22
- }
- ]
- },
- {
- "content": "Microsoft Corp",
- "polygon": [
- 0.5943,
- 2.6436,
- 1.586,
- 2.6436,
- 1.586,
- 2.7871,
- 0.5943,
- 2.7871
- ],
- "spans": [
- {
- "offset": 238,
- "length": 14
- }
- ]
- },
- {
- "content": "123 Other St,",
- "polygon": [
- 0.5945,
- 2.8476,
- 1.4633,
- 2.8476,
- 1.4633,
- 2.9845,
- 0.5945,
- 2.9845
- ],
- "spans": [
- {
- "offset": 253,
- "length": 13
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 0.5943,
- 3.0513,
- 2.0083,
- 3.0513,
- 2.0083,
- 3.1878,
- 0.5943,
- 3.1878
- ],
- "spans": [
- {
- "offset": 267,
- "length": 17
- }
- ]
- },
- {
- "content": "BILL TO:",
- "polygon": [
- 0.5909,
- 3.559,
- 1.1032,
- 3.559,
- 1.1032,
- 3.6592,
- 0.5909,
- 3.6592
- ],
- "spans": [
- {
- "offset": 285,
- "length": 8
- }
- ]
- },
- {
- "content": "SHIP TO:",
- "polygon": [
- 3.3361,
- 3.559,
- 3.8903,
- 3.559,
- 3.8903,
- 3.6592,
- 3.3361,
- 3.6592
- ],
- "spans": [
- {
- "offset": 294,
- "length": 8
- }
- ]
- },
- {
- "content": "SERVICE ADDRESS:",
- "polygon": [
- 6.2104,
- 3.559,
- 7.4232,
- 3.559,
- 7.4232,
- 3.6592,
- 6.2104,
- 3.6592
- ],
- "spans": [
- {
- "offset": 303,
- "length": 16
- }
- ]
- },
- {
- "content": "Microsoft Finance",
- "polygon": [
- 0.5943,
- 3.7641,
- 1.7878,
- 3.7641,
- 1.7878,
- 3.8794,
- 0.5943,
- 3.8794
- ],
- "spans": [
- {
- "offset": 320,
- "length": 17
- }
- ]
- },
- {
- "content": "Microsoft Delivery",
- "polygon": [
- 3.3454,
- 3.7641,
- 4.5762,
- 3.7641,
- 4.5762,
- 3.9076,
- 3.3454,
- 3.9076
- ],
- "spans": [
- {
- "offset": 338,
- "length": 18
- }
- ]
- },
- {
- "content": "Microsoft Services",
- "polygon": [
- 6.2197,
- 3.7641,
- 7.4427,
- 3.7641,
- 7.4427,
- 3.8794,
- 6.2197,
- 3.8794
- ],
- "spans": [
- {
- "offset": 357,
- "length": 18
- }
- ]
- },
- {
- "content": "123 Bill St,",
- "polygon": [
- 0.5945,
- 3.9681,
- 1.2765,
- 3.9681,
- 1.2765,
- 4.1049,
- 0.5945,
- 4.1049
- ],
- "spans": [
- {
- "offset": 376,
- "length": 12
- }
- ]
- },
- {
- "content": "123 Ship St,",
- "polygon": [
- 3.3456,
- 3.9681,
- 4.1111,
- 3.9681,
- 4.1111,
- 4.1109,
- 3.3456,
- 4.1109
- ],
- "spans": [
- {
- "offset": 389,
- "length": 12
- }
- ]
- },
- {
- "content": "123 Service St,",
- "polygon": [
- 6.2199,
- 3.9734,
- 7.1821,
- 3.9734,
- 7.1821,
- 4.1049,
- 6.2199,
- 4.1049
- ],
- "spans": [
- {
- "offset": 402,
- "length": 15
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 0.5943,
- 4.1717,
- 2.0083,
- 4.1717,
- 2.0083,
- 4.3082,
- 0.5943,
- 4.3082
- ],
- "spans": [
- {
- "offset": 418,
- "length": 17
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 3.3454,
- 4.1717,
- 4.7594,
- 4.1717,
- 4.7594,
- 4.3082,
- 3.3454,
- 4.3082
- ],
- "spans": [
- {
- "offset": 436,
- "length": 17
- }
- ]
- },
- {
- "content": "Redmond WA, 98052",
- "polygon": [
- 6.2197,
- 4.1717,
- 7.6337,
- 4.1717,
- 7.6337,
- 4.3082,
- 6.2197,
- 4.3082
- ],
- "spans": [
- {
- "offset": 454,
- "length": 17
- }
- ]
- },
- {
- "content": "SALESPERSON",
- "polygon": [
- 0.7018,
- 4.6528,
- 1.6092,
- 4.6528,
- 1.6092,
- 4.7529,
- 0.7018,
- 4.7529
- ],
- "spans": [
- {
- "offset": 472,
- "length": 11
- }
- ]
- },
- {
- "content": "P.O. NUMBER",
- "polygon": [
- 2.1216,
- 4.6528,
- 3.0155,
- 4.6528,
- 3.0155,
- 4.7529,
- 2.1216,
- 4.7529
- ],
- "spans": [
- {
- "offset": 484,
- "length": 11
- }
- ]
- },
- {
- "content": "REQUISITIONER",
- "polygon": [
- 3.4953,
- 4.6528,
- 4.5157,
- 4.6528,
- 4.5157,
- 4.7687,
- 3.4953,
- 4.7687
- ],
- "spans": [
- {
- "offset": 496,
- "length": 13
- }
- ]
- },
- {
- "content": "SHIPPED VIA",
- "polygon": [
- 4.81,
- 4.6528,
- 5.6317,
- 4.6528,
- 5.6317,
- 4.7529,
- 4.81,
- 4.7529
- ],
- "spans": [
- {
- "offset": 510,
- "length": 11
- }
- ]
- },
- {
- "content": "F.O.B. POINT",
- "polygon": [
- 5.8696,
- 4.6528,
- 6.706,
- 4.6528,
- 6.706,
- 4.7529,
- 5.8696,
- 4.7529
- ],
- "spans": [
- {
- "offset": 522,
- "length": 12
- }
- ]
- },
- {
- "content": "TERMS",
- "polygon": [
- 7.1806,
- 4.6528,
- 7.6304,
- 4.6528,
- 7.6304,
- 4.7529,
- 7.1806,
- 4.7529
- ],
- "spans": [
- {
- "offset": 535,
- "length": 5
- }
- ]
- },
- {
- "content": "PO-3333",
- "polygon": [
- 1.9114,
- 4.9282,
- 2.4718,
- 4.9282,
- 2.4718,
- 5.0363,
- 1.9114,
- 5.0363
- ],
- "spans": [
- {
- "offset": 541,
- "length": 7
- }
- ]
- },
- {
- "content": "DATE",
- "polygon": [
- 0.7409,
- 5.421,
- 1.0744,
- 5.421,
- 1.0744,
- 5.5186,
- 0.7409,
- 5.5186
- ],
- "spans": [
- {
- "offset": 549,
- "length": 4
- }
- ]
- },
- {
- "content": "ITEM CODE",
- "polygon": [
- 1.4213,
- 5.4197,
- 2.1407,
- 5.4197,
- 2.1407,
- 5.5199,
- 1.4213,
- 5.5199
- ],
- "spans": [
- {
- "offset": 554,
- "length": 9
- }
- ]
- },
- {
- "content": "DESCRIPTION",
- "polygon": [
- 2.8516,
- 5.4197,
- 3.7134,
- 5.4197,
- 3.7134,
- 5.5199,
- 2.8516,
- 5.5199
- ],
- "spans": [
- {
- "offset": 564,
- "length": 11
- }
- ]
- },
- {
- "content": "QTY",
- "polygon": [
- 4.4043,
- 5.4197,
- 4.6631,
- 5.4197,
- 4.6631,
- 5.5357,
- 4.4043,
- 5.5357
- ],
- "spans": [
- {
- "offset": 576,
- "length": 3
- }
- ]
- },
- {
- "content": "UM",
- "polygon": [
- 5.049,
- 5.421,
- 5.2654,
- 5.421,
- 5.2654,
- 5.5199,
- 5.049,
- 5.5199
- ],
- "spans": [
- {
- "offset": 580,
- "length": 2
- }
- ]
- },
- {
- "content": "PRICE",
- "polygon": [
- 5.8563,
- 5.4199,
- 6.2163,
- 5.4199,
- 6.2163,
- 5.5197,
- 5.8563,
- 5.5197
- ],
- "spans": [
- {
- "offset": 583,
- "length": 5
- }
- ]
- },
- {
- "content": "TAX",
- "polygon": [
- 6.7169,
- 5.421,
- 6.974,
- 5.421,
- 6.974,
- 5.5186,
- 6.7169,
- 5.5186
- ],
- "spans": [
- {
- "offset": 589,
- "length": 3
- }
- ]
- },
- {
- "content": "AMOUNT",
- "polygon": [
- 7.2847,
- 5.4197,
- 7.9039,
- 5.4197,
- 7.9039,
- 5.5199,
- 7.2847,
- 5.5199
- ],
- "spans": [
- {
- "offset": 593,
- "length": 6
- }
- ]
- },
- {
- "content": "3/4/2021",
- "polygon": [
- 0.592,
- 5.682,
- 1.2092,
- 5.682,
- 1.2092,
- 5.8243,
- 0.592,
- 5.8243
- ],
- "spans": [
- {
- "offset": 600,
- "length": 8
- }
- ]
- },
- {
- "content": "A123",
- "polygon": [
- 1.6069,
- 5.6948,
- 1.9417,
- 5.6948,
- 1.9417,
- 5.803,
- 1.6069,
- 5.803
- ],
- "spans": [
- {
- "offset": 609,
- "length": 4
- }
- ]
- },
- {
- "content": "Consulting Services",
- "polygon": [
- 2.3388,
- 5.6883,
- 3.6278,
- 5.6883,
- 3.6278,
- 5.8312,
- 2.3388,
- 5.8312
- ],
- "spans": [
- {
- "offset": 614,
- "length": 19
- }
- ]
- },
- {
- "content": "2",
- "polygon": [
- 4.5977,
- 5.6948,
- 4.6635,
- 5.6948,
- 4.6635,
- 5.8017,
- 4.5977,
- 5.8017
- ],
- "spans": [
- {
- "offset": 634,
- "length": 1
- }
- ]
- },
- {
- "content": "hours",
- "polygon": [
- 4.8444,
- 5.6883,
- 5.2071,
- 5.6883,
- 5.2071,
- 5.803,
- 4.8444,
- 5.803
- ],
- "spans": [
- {
- "offset": 636,
- "length": 5
- }
- ]
- },
- {
- "content": "$30.00",
- "polygon": [
- 5.9669,
- 5.6777,
- 6.4142,
- 5.6777,
- 6.4142,
- 5.8215,
- 5.9669,
- 5.8215
- ],
- "spans": [
- {
- "offset": 642,
- "length": 6
- }
- ]
- },
- {
- "content": "10%",
- "polygon": [
- 6.7168,
- 5.6932,
- 6.9826,
- 5.6932,
- 6.9826,
- 5.8045,
- 6.7168,
- 5.8045
- ],
- "spans": [
- {
- "offset": 649,
- "length": 3
- }
- ]
- },
- {
- "content": "$60.00",
- "polygon": [
- 7.4642,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8215,
- 7.4642,
- 5.8215
- ],
- "spans": [
- {
- "offset": 653,
- "length": 6
- }
- ]
- },
- {
- "content": "3/5/2021",
- "polygon": [
- 0.592,
- 5.9787,
- 1.2088,
- 5.9787,
- 1.2088,
- 6.121,
- 0.592,
- 6.121
- ],
- "spans": [
- {
- "offset": 660,
- "length": 8
- }
- ]
- },
- {
- "content": "B456",
- "polygon": [
- 1.6214,
- 5.9915,
- 1.9419,
- 5.9915,
- 1.9419,
- 6.0997,
- 1.6214,
- 6.0997
- ],
- "spans": [
- {
- "offset": 669,
- "length": 4
- }
- ]
- },
- {
- "content": "Document Fee",
- "polygon": [
- 2.345,
- 5.993,
- 3.3096,
- 5.993,
- 3.3096,
- 6.0997,
- 2.345,
- 6.0997
- ],
- "spans": [
- {
- "offset": 674,
- "length": 12
- }
- ]
- },
- {
- "content": "3",
- "polygon": [
- 4.5967,
- 5.9915,
- 4.6627,
- 5.9915,
- 4.6627,
- 6.0997,
- 4.5967,
- 6.0997
- ],
- "spans": [
- {
- "offset": 687,
- "length": 1
- }
- ]
- },
- {
- "content": "$10.00",
- "polygon": [
- 5.9669,
- 5.9743,
- 6.4142,
- 5.9743,
- 6.4142,
- 6.1182,
- 5.9669,
- 6.1182
- ],
- "spans": [
- {
- "offset": 689,
- "length": 6
- }
- ]
- },
- {
- "content": "5%",
- "polygon": [
- 6.7508,
- 5.9898,
- 6.9393,
- 5.9898,
- 6.9393,
- 6.1012,
- 6.7508,
- 6.1012
- ],
- "spans": [
- {
- "offset": 696,
- "length": 2
- }
- ]
- },
- {
- "content": "$30.00",
- "polygon": [
- 7.4642,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.1182,
- 7.4642,
- 6.1182
- ],
- "spans": [
- {
- "offset": 699,
- "length": 6
- }
- ]
- },
- {
- "content": "3/6/2021",
- "polygon": [
- 0.592,
- 6.2789,
- 1.2088,
- 6.2789,
- 1.2088,
- 6.4213,
- 0.592,
- 6.4213
- ],
- "spans": [
- {
- "offset": 706,
- "length": 8
- }
- ]
- },
- {
- "content": "C789",
- "polygon": [
- 1.6152,
- 6.2918,
- 1.94,
- 6.2918,
- 1.94,
- 6.3999,
- 1.6152,
- 6.3999
- ],
- "spans": [
- {
- "offset": 715,
- "length": 4
- }
- ]
- },
- {
- "content": "Printing Fee",
- "polygon": [
- 2.345,
- 6.2906,
- 3.1351,
- 6.2906,
- 3.1351,
- 6.4281,
- 2.345,
- 6.4281
- ],
- "spans": [
- {
- "offset": 720,
- "length": 12
- }
- ]
- },
- {
- "content": "10",
- "polygon": [
- 4.5158,
- 6.2918,
- 4.6637,
- 6.2918,
- 4.6637,
- 6.3999,
- 4.5158,
- 6.3999
- ],
- "spans": [
- {
- "offset": 733,
- "length": 2
- }
- ]
- },
- {
- "content": "pages",
- "polygon": [
- 4.8444,
- 6.3196,
- 5.2199,
- 6.3196,
- 5.2199,
- 6.4281,
- 4.8444,
- 6.4281
- ],
- "spans": [
- {
- "offset": 736,
- "length": 5
- }
- ]
- },
- {
- "content": "$1.00",
- "polygon": [
- 6.0502,
- 6.2746,
- 6.4142,
- 6.2746,
- 6.4142,
- 6.4184,
- 6.0502,
- 6.4184
- ],
- "spans": [
- {
- "offset": 742,
- "length": 5
- }
- ]
- },
- {
- "content": "20%",
- "polygon": [
- 6.712,
- 6.2901,
- 6.9826,
- 6.2901,
- 6.9826,
- 6.4014,
- 6.712,
- 6.4014
- ],
- "spans": [
- {
- "offset": 748,
- "length": 3
- }
- ]
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4642,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4184,
- 7.4642,
- 6.4184
- ],
- "spans": [
- {
- "offset": 752,
- "length": 6
- }
- ]
- },
- {
- "content": "SUBTOTAL",
- "polygon": [
- 6.0282,
- 6.9118,
- 6.7309,
- 6.9118,
- 6.7309,
- 7.0199,
- 6.0282,
- 7.0199
- ],
- "spans": [
- {
- "offset": 759,
- "length": 8
- }
- ]
- },
- {
- "content": "$100.00",
- "polygon": [
- 7.3842,
- 6.8679,
- 7.9181,
- 6.8679,
- 7.9181,
- 7.0118,
- 7.3842,
- 7.0118
- ],
- "spans": [
- {
- "offset": 768,
- "length": 7
- }
- ]
- },
- {
- "content": "SALES TAX",
- "polygon": [
- 6.0382,
- 7.2089,
- 6.728,
- 7.2089,
- 6.728,
- 7.317,
- 6.0382,
- 7.317
- ],
- "spans": [
- {
- "offset": 776,
- "length": 9
- }
- ]
- },
- {
- "content": "$10.00",
- "polygon": [
- 7.4709,
- 7.165,
- 7.9182,
- 7.165,
- 7.9182,
- 7.3089,
- 7.4709,
- 7.3089
- ],
- "spans": [
- {
- "offset": 786,
- "length": 6
- }
- ]
- },
- {
- "content": "TOTAL",
- "polygon": [
- 6.2969,
- 7.5089,
- 6.7309,
- 7.5089,
- 6.7309,
- 7.617,
- 6.2969,
- 7.617
- ],
- "spans": [
- {
- "offset": 793,
- "length": 5
- }
- ]
- },
- {
- "content": "$110.00",
- "polygon": [
- 7.3842,
- 7.465,
- 7.9181,
- 7.465,
- 7.9181,
- 7.6089,
- 7.3842,
- 7.6089
- ],
- "spans": [
- {
- "offset": 799,
- "length": 7
- }
- ]
- },
- {
- "content": "PREVIOUS UNPAID BALANCE",
- "polygon": [
- 4.8126,
- 7.8055,
- 6.7249,
- 7.8055,
- 6.7249,
- 7.9137,
- 4.8126,
- 7.9137
- ],
- "spans": [
- {
- "offset": 807,
- "length": 23
- }
- ]
- },
- {
- "content": "$500.00",
- "polygon": [
- 7.3842,
- 7.7617,
- 7.9181,
- 7.7617,
- 7.9181,
- 7.9055,
- 7.3842,
- 7.9055
- ],
- "spans": [
- {
- "offset": 831,
- "length": 7
- }
- ]
- },
- {
- "content": "AMOUNT DUE",
- "polygon": [
- 5.7652,
- 8.1022,
- 6.725,
- 8.1022,
- 6.725,
- 8.2104,
- 5.7652,
- 8.2104
- ],
- "spans": [
- {
- "offset": 839,
- "length": 10
- }
- ]
- },
- {
- "content": "$610.00",
- "polygon": [
- 7.3842,
- 8.0584,
- 7.9181,
- 8.0584,
- 7.9181,
- 8.2022,
- 7.3842,
- 8.2022
- ],
- "spans": [
- {
- "offset": 850,
- "length": 7
- }
- ]
- },
- {
- "content": "THANK YOU FOR YOUR BUSINESS!",
- "polygon": [
- 3.129,
- 8.539,
- 5.356,
- 8.539,
- 5.356,
- 8.6442,
- 3.129,
- 8.6442
- ],
- "spans": [
- {
- "offset": 858,
- "length": 28
- }
- ]
- },
- {
- "content": "REMIT TO:",
- "polygon": [
- 0.5909,
- 9.1607,
- 1.2603,
- 9.1607,
- 1.2603,
- 9.2608,
- 0.5909,
- 9.2608
- ],
- "spans": [
- {
- "offset": 887,
- "length": 9
- }
- ]
- },
- {
- "content": "Contoso Billing",
- "polygon": [
- 0.5882,
- 9.3631,
- 1.5828,
- 9.3631,
- 1.5828,
- 9.5059,
- 0.5882,
- 9.5059
- ],
- "spans": [
- {
- "offset": 897,
- "length": 15
- }
- ]
- },
- {
- "content": "123 Remit St",
- "polygon": [
- 0.5945,
- 9.5717,
- 1.4337,
- 9.5717,
- 1.4337,
- 9.681,
- 0.5945,
- 9.681
- ],
- "spans": [
- {
- "offset": 913,
- "length": 12
- }
- ]
- },
- {
- "content": "New York, NY, 10001",
- "polygon": [
- 0.5943,
- 9.773,
- 1.9882,
- 9.773,
- 1.9882,
- 9.9098,
- 0.5943,
- 9.9098
- ],
- "spans": [
- {
- "offset": 926,
- "length": 19
- }
- ]
- }
- ],
- "spans": [
- {
- "offset": 0,
- "length": 958
- }
- ]
- }
- ],
- "tables": [
- {
- "rowCount": 4,
- "columnCount": 8,
- "cells": [
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "DATE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4932,
- 5.329,
- 1.3011,
- 5.3213,
- 1.3011,
- 5.6056,
- 0.5009,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 549,
- "length": 4
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "ITEM CODE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 5.3213,
- 2.2476,
- 5.3213,
- 2.2399,
- 5.6056,
- 1.3011,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 554,
- "length": 9
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "DESCRIPTION",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2476,
- 5.3213,
- 4.3174,
- 5.329,
- 4.3097,
- 5.6056,
- 2.2399,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 564,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "QTY",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3174,
- 5.329,
- 4.7483,
- 5.329,
- 4.7483,
- 5.6056,
- 4.3097,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 576,
- "length": 3
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "UM",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 5.329,
- 5.5639,
- 5.329,
- 5.5639,
- 5.6056,
- 4.7483,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 580,
- "length": 2
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "PRICE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 5.329,
- 6.495,
- 5.329,
- 6.495,
- 5.6056,
- 5.5639,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 583,
- "length": 5
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "TAX",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 5.329,
- 7.1875,
- 5.329,
- 7.1952,
- 5.6056,
- 6.495,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 589,
- "length": 3
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "AMOUNT",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1875,
- 5.329,
- 7.9954,
- 5.329,
- 7.9954,
- 5.598,
- 7.1952,
- 5.6056
- ]
- }
- ],
- "spans": [
- {
- "offset": 593,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3/4/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5009,
- 5.6056,
- 1.3011,
- 5.6056,
- 1.3011,
- 5.8976,
- 0.5009,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 600,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "A123",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 5.6056,
- 2.2399,
- 5.6056,
- 2.2322,
- 5.8976,
- 1.3011,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 609,
- "length": 4
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "Consulting Services",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2399,
- 5.6056,
- 4.3097,
- 5.6056,
- 4.3097,
- 5.8976,
- 2.2322,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 614,
- "length": 19
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "2 :unselected:",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3097,
- 5.6056,
- 4.7483,
- 5.6056,
- 4.7483,
- 5.8976,
- 4.3097,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 634,
- "length": 1
- },
- {
- "offset": 946,
- "length": 12
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "hours",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 5.6056,
- 5.5639,
- 5.6056,
- 5.5639,
- 5.8976,
- 4.7483,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 636,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 5.6056,
- 6.495,
- 5.6056,
- 6.495,
- 5.8976,
- 5.5639,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 642,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "10%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 5.6056,
- 7.1952,
- 5.6056,
- 7.1952,
- 5.8976,
- 6.495,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 649,
- "length": 3
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$60.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1952,
- 5.6056,
- 7.9954,
- 5.598,
- 7.9954,
- 5.9053,
- 7.1952,
- 5.8976
- ]
- }
- ],
- "spans": [
- {
- "offset": 653,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3/5/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5009,
- 5.8976,
- 1.3011,
- 5.8976,
- 1.3011,
- 6.1973,
- 0.5086,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 660,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "B456",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 5.8976,
- 2.2322,
- 5.8976,
- 2.2245,
- 6.1973,
- 1.3011,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 669,
- "length": 4
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "Document Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2322,
- 5.8976,
- 4.3097,
- 5.8976,
- 4.3097,
- 6.1973,
- 2.2245,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 674,
- "length": 12
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3097,
- 5.8976,
- 4.7483,
- 5.8976,
- 4.7483,
- 6.1973,
- 4.3097,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 687,
- "length": 1
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 5.8976,
- 5.5639,
- 5.8976,
- 5.5639,
- 6.1973,
- 4.7483,
- 6.1973
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 2,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 5.8976,
- 6.495,
- 5.8976,
- 6.495,
- 6.1973,
- 5.5639,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 689,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "5%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 5.8976,
- 7.1952,
- 5.8976,
- 7.1952,
- 6.1973,
- 6.495,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 696,
- "length": 2
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1952,
- 5.8976,
- 7.9954,
- 5.9053,
- 7.9954,
- 6.1896,
- 7.1952,
- 6.1973
- ]
- }
- ],
- "spans": [
- {
- "offset": 699,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "3/6/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5086,
- 6.1973,
- 1.3011,
- 6.1973,
- 1.3011,
- 6.4969,
- 0.5086,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 706,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "C789",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.3011,
- 6.1973,
- 2.2245,
- 6.1973,
- 2.2245,
- 6.4969,
- 1.3011,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 715,
- "length": 4
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "Printing Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.2245,
- 6.1973,
- 4.3097,
- 6.1973,
- 4.3097,
- 6.4969,
- 2.2245,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 720,
- "length": 12
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "10",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.3097,
- 6.1973,
- 4.7483,
- 6.1973,
- 4.7483,
- 6.4969,
- 4.3097,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 733,
- "length": 2
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "pages",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7483,
- 6.1973,
- 5.5639,
- 6.1973,
- 5.5639,
- 6.4969,
- 4.7483,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 736,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$1.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.5639,
- 6.1973,
- 6.495,
- 6.1973,
- 6.495,
- 6.4969,
- 5.5639,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 742,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 6,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "20%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.495,
- 6.1973,
- 7.1952,
- 6.1973,
- 7.1952,
- 6.4969,
- 6.495,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 748,
- "length": 3
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 7,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.1952,
- 6.1973,
- 7.9954,
- 6.1896,
- 7.9954,
- 6.5046,
- 7.1952,
- 6.4969
- ]
- }
- ],
- "spans": [
- {
- "offset": 752,
- "length": 6
- }
- ]
- }
- ],
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4901,
- 5.3293,
- 7.9946,
- 5.3289,
- 7.9954,
- 6.5019,
- 0.4906,
- 6.502
- ]
- }
- ],
- "spans": [
- {
- "offset": 549,
- "length": 209
- },
- {
- "offset": 946,
- "length": 12
- }
- ]
- },
- {
- "rowCount": 2,
- "columnCount": 6,
- "cells": [
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SALESPERSON",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4977,
- 4.565,
- 1.8042,
- 4.565,
- 1.8119,
- 4.8388,
- 0.5054,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 472,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "P.O. NUMBER",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.8042,
- 4.565,
- 3.3105,
- 4.565,
- 3.3105,
- 4.8388,
- 1.8119,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 484,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "REQUISITIONER",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3105,
- 4.565,
- 4.6939,
- 4.565,
- 4.6862,
- 4.8388,
- 3.3105,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 496,
- "length": 13
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SHIPPED VIA",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.6939,
- 4.565,
- 5.7468,
- 4.565,
- 5.7468,
- 4.8388,
- 4.6862,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 510,
- "length": 11
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "F.O.B. POINT",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.7468,
- 4.565,
- 6.815,
- 4.565,
- 6.815,
- 4.8388,
- 5.7468,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 522,
- "length": 12
- }
- ]
- },
- {
- "kind": "columnHeader",
- "rowIndex": 0,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "TERMS",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.815,
- 4.565,
- 7.9985,
- 4.565,
- 7.9985,
- 4.8388,
- 6.815,
- 4.8388
- ]
- }
- ],
- "spans": [
- {
- "offset": 535,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5054,
- 4.8388,
- 1.8119,
- 4.8388,
- 1.8119,
- 5.1058,
- 0.5131,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "PO-3333",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.8119,
- 4.8388,
- 3.3105,
- 4.8388,
- 3.3105,
- 5.1058,
- 1.8119,
- 5.1058
- ]
- }
- ],
- "spans": [
- {
- "offset": 541,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 2,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3105,
- 4.8388,
- 4.6862,
- 4.8388,
- 4.6862,
- 5.1058,
- 3.3105,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 3,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.6862,
- 4.8388,
- 5.7468,
- 4.8388,
- 5.7468,
- 5.1058,
- 4.6862,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 4,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.7468,
- 4.8388,
- 6.815,
- 4.8388,
- 6.815,
- 5.1058,
- 5.7468,
- 5.1058
- ]
- }
- ],
- "spans": []
- },
- {
- "rowIndex": 1,
- "columnIndex": 5,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.815,
- 4.8388,
- 7.9985,
- 4.8388,
- 7.9985,
- 5.1125,
- 6.815,
- 5.1058
- ]
- }
- ],
- "spans": []
- }
- ],
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.4971,
- 4.565,
- 7.9889,
- 4.5653,
- 7.989,
- 5.1146,
- 0.4963,
- 5.1141
- ]
- }
- ],
- "spans": [
- {
- "offset": 472,
- "length": 76
- }
- ]
- },
- {
- "rowCount": 5,
- "columnCount": 2,
- "cells": [
- {
- "rowIndex": 0,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SUBTOTAL",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7474,
- 6.7934,
- 6.8058,
- 6.7934,
- 6.8105,
- 7.0886,
- 4.7474,
- 7.0886
- ]
- }
- ],
- "spans": [
- {
- "offset": 759,
- "length": 8
- }
- ]
- },
- {
- "rowIndex": 0,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$100.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8058,
- 6.7934,
- 7.9981,
- 6.7934,
- 7.9981,
- 7.0934,
- 6.8105,
- 7.0886
- ]
- }
- ],
- "spans": [
- {
- "offset": 768,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "SALES TAX",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7474,
- 7.0886,
- 6.8105,
- 7.0886,
- 6.8105,
- 7.3743,
- 4.7427,
- 7.3743
- ]
- }
- ],
- "spans": [
- {
- "offset": 776,
- "length": 9
- }
- ]
- },
- {
- "rowIndex": 1,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.0886,
- 7.9981,
- 7.0934,
- 7.9981,
- 7.3934,
- 6.8105,
- 7.3743
- ]
- }
- ],
- "spans": [
- {
- "offset": 786,
- "length": 6
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "TOTAL",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7427,
- 7.3743,
- 6.8105,
- 7.3743,
- 6.8105,
- 7.6839,
- 4.7427,
- 7.6839
- ]
- }
- ],
- "spans": [
- {
- "offset": 793,
- "length": 5
- }
- ]
- },
- {
- "rowIndex": 2,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$110.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.3743,
- 7.9981,
- 7.3934,
- 7.9981,
- 7.6886,
- 6.8105,
- 7.6839
- ]
- }
- ],
- "spans": [
- {
- "offset": 799,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "PREVIOUS UNPAID BALANCE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7427,
- 7.6839,
- 6.8105,
- 7.6839,
- 6.8105,
- 7.9743,
- 4.7427,
- 7.9743
- ]
- }
- ],
- "spans": [
- {
- "offset": 807,
- "length": 23
- }
- ]
- },
- {
- "rowIndex": 3,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$500.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.6839,
- 7.9981,
- 7.6886,
- 7.9981,
- 7.9839,
- 6.8105,
- 7.9743
- ]
- }
- ],
- "spans": [
- {
- "offset": 831,
- "length": 7
- }
- ]
- },
- {
- "rowIndex": 4,
- "columnIndex": 0,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "AMOUNT DUE",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7427,
- 7.9743,
- 6.8105,
- 7.9743,
- 6.8105,
- 8.2839,
- 4.7381,
- 8.2839
- ]
- }
- ],
- "spans": [
- {
- "offset": 839,
- "length": 10
- }
- ]
- },
- {
- "rowIndex": 4,
- "columnIndex": 1,
- "rowSpan": 1,
- "columnSpan": 1,
- "content": "$610.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.8105,
- 7.9743,
- 7.9981,
- 7.9839,
- 7.9981,
- 8.2839,
- 6.8105,
- 8.2839
- ]
- }
- ],
- "spans": [
- {
- "offset": 850,
- "length": 7
- }
- ]
- }
- ],
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.7456,
- 6.7793,
- 8.0143,
- 6.7788,
- 8.0137,
- 8.2981,
- 4.7446,
- 8.2981
- ]
- }
- ],
- "spans": [
- {
- "offset": 759,
- "length": 98
- }
- ]
- }
- ],
- "documents": [
- {
- "docType": "prebuilt:invoice",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0,
- 0,
- 8.5,
- 0,
- 8.5,
- 11,
- 0,
- 11
- ]
- }
- ],
- "fields": {
- "AmountDue": {
- "type": "number",
- "valueNumber": 610,
- "content": "$610.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 8.0584,
- 7.9181,
- 8.0584,
- 7.9181,
- 8.2022,
- 7.3842,
- 8.2022
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 850,
- "length": 7
- }
- ]
- },
- "BillingAddress": {
- "type": "string",
- "valueString": "123 Bill St, Redmond WA, 98052",
- "content": "123 Bill St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 3.9681,
- 2.0083,
- 3.9681,
- 2.0083,
- 4.3082,
- 0.5943,
- 4.3082
- ]
- }
- ],
- "confidence": 0.947,
- "spans": [
- {
- "offset": 376,
- "length": 12
- },
- {
- "offset": 418,
- "length": 17
- }
- ]
- },
- "BillingAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Finance",
- "content": "Microsoft Finance",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 3.7641,
- 1.7878,
- 3.7641,
- 1.7878,
- 3.8794,
- 0.5943,
- 3.8794
- ]
- }
- ],
- "confidence": 0.957,
- "spans": [
- {
- "offset": 320,
- "length": 17
- }
- ]
- },
- "CustomerAddress": {
- "type": "string",
- "valueString": "123 Other St, Redmond WA, 98052",
- "content": "123 Other St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 2.8476,
- 2.0083,
- 2.8476,
- 2.0083,
- 3.1878,
- 0.5943,
- 3.1878
- ]
- }
- ],
- "confidence": 0.947,
- "spans": [
- {
- "offset": 253,
- "length": 31
- }
- ]
- },
- "CustomerAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Corp",
- "content": "Microsoft Corp",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 2.6436,
- 1.586,
- 2.6436,
- 1.586,
- 2.7871,
- 0.5943,
- 2.7871
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 238,
- "length": 14
- }
- ]
- },
- "CustomerId": {
- "type": "string",
- "valueString": "CID-12345",
- "content": "CID-12345",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3369,
- 2.4491,
- 7.9951,
- 2.4491,
- 7.9951,
- 2.5486,
- 7.3369,
- 2.5486
- ]
- }
- ],
- "confidence": 0.964,
- "spans": [
- {
- "offset": 228,
- "length": 9
- }
- ]
- },
- "CustomerName": {
- "type": "string",
- "valueString": "MICROSOFT CORPORATION",
- "content": "MICROSOFT CORPORATION",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.2419,
- 2.0391,
- 7.9825,
- 2.0391,
- 7.9825,
- 2.1386,
- 6.2419,
- 2.1386
- ]
- }
- ],
- "confidence": 0.949,
- "spans": [
- {
- "offset": 153,
- "length": 21
- }
- ]
- },
- "DueDate": {
- "type": "date",
- "valueDate": "2019-12-15",
- "content": "12/15/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.2494,
- 1.8206,
- 7.993,
- 1.8206,
- 7.993,
- 1.9515,
- 7.2494,
- 1.9515
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 127,
- "length": 10
- }
- ]
- },
- "InvoiceDate": {
- "type": "date",
- "valueDate": "2019-11-15",
- "content": "11/15/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.2528,
- 1.6139,
- 7.993,
- 1.6139,
- 7.993,
- 1.7449,
- 7.2528,
- 1.7449
- ]
- }
- ],
- "confidence": 0.972,
- "spans": [
- {
- "offset": 86,
- "length": 10
- }
- ]
- },
- "InvoiceId": {
- "type": "string",
- "valueString": "INV-100",
- "content": "INV-100",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4959,
- 1.422,
- 7.9988,
- 1.422,
- 7.9988,
- 1.5215,
- 7.4959,
- 1.5215
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 51,
- "length": 7
- }
- ]
- },
- "InvoiceTotal": {
- "type": "number",
- "valueNumber": 110,
- "content": "$110.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 7.465,
- 7.9181,
- 7.465,
- 7.9181,
- 7.6089,
- 7.3842,
- 7.6089
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 799,
- "length": 7
- }
- ]
- },
- "Items": {
- "type": "array",
- "valueArray": [
- {
- "type": "object",
- "valueObject": {
- "Amount": {
- "type": "number",
- "valueNumber": 60,
- "content": "$60.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4642,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8215,
- 7.4642,
- 5.8215
- ]
- }
- ],
- "confidence": 0.902,
- "spans": [
- {
- "offset": 653,
- "length": 6
- }
- ]
- },
- "Date": {
- "type": "date",
- "valueDate": "2021-03-04",
- "content": "3/4/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.682,
- 1.2092,
- 5.682,
- 1.2092,
- 5.8243,
- 0.592,
- 5.8243
- ]
- }
- ],
- "confidence": 0.938,
- "spans": [
- {
- "offset": 600,
- "length": 8
- }
- ]
- },
- "Description": {
- "type": "string",
- "valueString": "Consulting Services",
- "content": "Consulting Services",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.3388,
- 5.6883,
- 3.6278,
- 5.6883,
- 3.6278,
- 5.8312,
- 2.3388,
- 5.8312
- ]
- }
- ],
- "confidence": 0.9,
- "spans": [
- {
- "offset": 614,
- "length": 19
- }
- ]
- },
- "ProductCode": {
- "type": "string",
- "valueString": "A123",
- "content": "A123",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.6069,
- 5.6948,
- 1.9417,
- 5.6948,
- 1.9417,
- 5.803,
- 1.6069,
- 5.803
- ]
- }
- ],
- "confidence": 0.877,
- "spans": [
- {
- "offset": 609,
- "length": 4
- }
- ]
- },
- "Quantity": {
- "type": "number",
- "valueNumber": 2,
- "content": "2",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.5977,
- 5.6948,
- 4.6635,
- 5.6948,
- 4.6635,
- 5.8017,
- 4.5977,
- 5.8017
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 634,
- "length": 1
- }
- ]
- },
- "Tax": {
- "type": "number",
- "content": "10%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.7168,
- 5.6932,
- 6.9826,
- 5.6932,
- 6.9826,
- 5.8045,
- 6.7168,
- 5.8045
- ]
- }
- ],
- "confidence": 0.78,
- "spans": [
- {
- "offset": 649,
- "length": 3
- }
- ]
- },
- "Unit": {
- "type": "string",
- "valueString": "hours",
- "content": "hours",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.8444,
- 5.6883,
- 5.2071,
- 5.6883,
- 5.2071,
- 5.803,
- 4.8444,
- 5.803
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 636,
- "length": 5
- }
- ]
- },
- "UnitPrice": {
- "type": "number",
- "valueNumber": 30,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.9669,
- 5.6777,
- 6.4142,
- 5.6777,
- 6.4142,
- 5.8215,
- 5.9669,
- 5.8215
- ]
- }
- ],
- "confidence": 0.828,
- "spans": [
- {
- "offset": 642,
- "length": 6
- }
- ]
- }
- },
- "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.6777,
- 7.9116,
- 5.6777,
- 7.9116,
- 5.8312,
- 0.592,
- 5.8312
- ]
- }
- ],
- "confidence": 0.955,
- "spans": [
- {
- "offset": 600,
- "length": 59
- }
- ]
- },
- {
- "type": "object",
- "valueObject": {
- "Amount": {
- "type": "number",
- "valueNumber": 30,
- "content": "$30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4642,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.1182,
- 7.4642,
- 6.1182
- ]
- }
- ],
- "confidence": 0.916,
- "spans": [
- {
- "offset": 699,
- "length": 6
- }
- ]
- },
- "Date": {
- "type": "date",
- "valueDate": "2021-03-05",
- "content": "3/5/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.9787,
- 1.2088,
- 5.9787,
- 1.2088,
- 6.121,
- 0.592,
- 6.121
- ]
- }
- ],
- "confidence": 0.902,
- "spans": [
- {
- "offset": 660,
- "length": 8
- }
- ]
- },
- "Description": {
- "type": "string",
- "valueString": "Document Fee",
- "content": "Document Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.345,
- 5.993,
- 3.3096,
- 5.993,
- 3.3096,
- 6.0997,
- 2.345,
- 6.0997
- ]
- }
- ],
- "confidence": 0.901,
- "spans": [
- {
- "offset": 674,
- "length": 12
- }
- ]
- },
- "ProductCode": {
- "type": "string",
- "valueString": "B456",
- "content": "B456",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.6214,
- 5.9915,
- 1.9419,
- 5.9915,
- 1.9419,
- 6.0997,
- 1.6214,
- 6.0997
- ]
- }
- ],
- "confidence": 0.886,
- "spans": [
- {
- "offset": 669,
- "length": 4
- }
- ]
- },
- "Quantity": {
- "type": "number",
- "valueNumber": 3,
- "content": "3",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.5967,
- 5.9915,
- 4.6627,
- 5.9915,
- 4.6627,
- 6.0997,
- 4.5967,
- 6.0997
- ]
- }
- ],
- "confidence": 0.898,
- "spans": [
- {
- "offset": 687,
- "length": 1
- }
- ]
- },
- "Tax": {
- "type": "number",
- "content": "5%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.7508,
- 5.9898,
- 6.9393,
- 5.9898,
- 6.9393,
- 6.1012,
- 6.7508,
- 6.1012
- ]
- }
- ],
- "confidence": 0.772,
- "spans": [
- {
- "offset": 696,
- "length": 2
- }
- ]
- },
- "UnitPrice": {
- "type": "number",
- "valueNumber": 10,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 5.9669,
- 5.9743,
- 6.4142,
- 5.9743,
- 6.4142,
- 6.1182,
- 5.9669,
- 6.1182
- ]
- }
- ],
- "confidence": 0.831,
- "spans": [
- {
- "offset": 689,
- "length": 6
- }
- ]
- }
- },
- "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 5.9743,
- 7.9116,
- 5.9743,
- 7.9116,
- 6.121,
- 0.592,
- 6.121
- ]
- }
- ],
- "confidence": 0.941,
- "spans": [
- {
- "offset": 660,
- "length": 45
- }
- ]
- },
- {
- "type": "object",
- "valueObject": {
- "Amount": {
- "type": "number",
- "valueNumber": 10,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4642,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4184,
- 7.4642,
- 6.4184
- ]
- }
- ],
- "confidence": 0.959,
- "spans": [
- {
- "offset": 752,
- "length": 6
- }
- ]
- },
- "Date": {
- "type": "date",
- "valueDate": "2021-03-06",
- "content": "3/6/2021",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 6.2789,
- 1.2088,
- 6.2789,
- 1.2088,
- 6.4213,
- 0.592,
- 6.4213
- ]
- }
- ],
- "confidence": 0.903,
- "spans": [
- {
- "offset": 706,
- "length": 8
- }
- ]
- },
- "Description": {
- "type": "string",
- "valueString": "Printing Fee",
- "content": "Printing Fee",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 2.345,
- 6.2906,
- 3.1351,
- 6.2906,
- 3.1351,
- 6.4281,
- 2.345,
- 6.4281
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 720,
- "length": 12
- }
- ]
- },
- "ProductCode": {
- "type": "string",
- "valueString": "C789",
- "content": "C789",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.6152,
- 6.2918,
- 1.94,
- 6.2918,
- 1.94,
- 6.3999,
- 1.6152,
- 6.3999
- ]
- }
- ],
- "confidence": 0.898,
- "spans": [
- {
- "offset": 715,
- "length": 4
- }
- ]
- },
- "Quantity": {
- "type": "number",
- "valueNumber": 10,
- "content": "10",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.5158,
- 6.2918,
- 4.6637,
- 6.2918,
- 4.6637,
- 6.3999,
- 4.5158,
- 6.3999
- ]
- }
- ],
- "confidence": 0.903,
- "spans": [
- {
- "offset": 733,
- "length": 2
- }
- ]
- },
- "Tax": {
- "type": "number",
- "content": "20%",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.712,
- 6.2901,
- 6.9826,
- 6.2901,
- 6.9826,
- 6.4014,
- 6.712,
- 6.4014
- ]
- }
- ],
- "confidence": 0.791,
- "spans": [
- {
- "offset": 748,
- "length": 3
- }
- ]
- },
- "Unit": {
- "type": "string",
- "valueString": "pages",
- "content": "pages",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 4.8444,
- 6.3196,
- 5.2199,
- 6.3196,
- 5.2199,
- 6.4281,
- 4.8444,
- 6.4281
- ]
- }
- ],
- "confidence": 0.899,
- "spans": [
- {
- "offset": 736,
- "length": 5
- }
- ]
- },
- "UnitPrice": {
- "type": "number",
- "valueNumber": 1,
- "content": "$1.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.0502,
- 6.2746,
- 6.4142,
- 6.2746,
- 6.4142,
- 6.4184,
- 6.0502,
- 6.4184
- ]
- }
- ],
- "confidence": 0.829,
- "spans": [
- {
- "offset": 742,
- "length": 5
- }
- ]
- }
- },
- "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.592,
- 6.2746,
- 7.9116,
- 6.2746,
- 7.9116,
- 6.4281,
- 0.592,
- 6.4281
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 706,
- "length": 52
- }
- ]
- }
- ]
- },
- "Locale": {
- "type": "string",
- "valueString": "en-US",
- "confidence": 1
- },
- "PreviousUnpaidBalance": {
- "type": "number",
- "valueNumber": 500,
- "content": "$500.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 7.7617,
- 7.9181,
- 7.7617,
- 7.9181,
- 7.9055,
- 7.3842,
- 7.9055
- ]
- }
- ],
- "confidence": 0.962,
- "spans": [
- {
- "offset": 831,
- "length": 7
- }
- ]
- },
- "PurchaseOrder": {
- "type": "string",
- "valueString": "PO-3333",
- "content": "PO-3333",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 1.9114,
- 4.9282,
- 2.4718,
- 4.9282,
- 2.4718,
- 5.0363,
- 1.9114,
- 5.0363
- ]
- }
- ],
- "confidence": 0.967,
- "spans": [
- {
- "offset": 541,
- "length": 7
- }
- ]
- },
- "RemittanceAddress": {
- "type": "string",
- "valueString": "123 Remit St New York, NY, 10001",
- "content": "123 Remit St New York, NY, 10001",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 9.5717,
- 1.9882,
- 9.5717,
- 1.9882,
- 9.9098,
- 0.5943,
- 9.9098
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 913,
- "length": 32
- }
- ]
- },
- "RemittanceAddressRecipient": {
- "type": "string",
- "valueString": "Contoso Billing",
- "content": "Contoso Billing",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5882,
- 9.3631,
- 1.5828,
- 9.3631,
- 1.5828,
- 9.5059,
- 0.5882,
- 9.5059
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 897,
- "length": 15
- }
- ]
- },
- "ServiceAddress": {
- "type": "string",
- "valueString": "123 Service St, Redmond WA, 98052",
- "content": "123 Service St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.2197,
- 3.9734,
- 7.6337,
- 3.9734,
- 7.6337,
- 4.3082,
- 6.2197,
- 4.3082
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 402,
- "length": 15
- },
- {
- "offset": 454,
- "length": 17
- }
- ]
- },
- "ServiceAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Services",
- "content": "Microsoft Services",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.2197,
- 3.7641,
- 7.4427,
- 3.7641,
- 7.4427,
- 3.8794,
- 6.2197,
- 3.8794
- ]
- }
- ],
- "confidence": 0.951,
- "spans": [
- {
- "offset": 357,
- "length": 18
- }
- ]
- },
- "ServiceEndDate": {
- "type": "date",
- "valueDate": "2019-11-14",
- "content": "11/14/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.2528,
- 2.2306,
- 7.9952,
- 2.2306,
- 7.9952,
- 2.3615,
- 7.2528,
- 2.3615
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 204,
- "length": 10
- }
- ]
- },
- "ServiceStartDate": {
- "type": "date",
- "valueDate": "2019-10-14",
- "content": "10/14/2019",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 6.3357,
- 2.2306,
- 7.0749,
- 2.2306,
- 7.0749,
- 2.3615,
- 6.3357,
- 2.3615
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 191,
- "length": 10
- }
- ]
- },
- "ShippingAddress": {
- "type": "string",
- "valueString": "123 Ship St, Redmond WA, 98052",
- "content": "123 Ship St, Redmond WA, 98052",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3454,
- 3.9681,
- 4.7594,
- 3.9681,
- 4.7594,
- 4.3082,
- 3.3454,
- 4.3082
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 389,
- "length": 12
- },
- {
- "offset": 436,
- "length": 17
- }
- ]
- },
- "ShippingAddressRecipient": {
- "type": "string",
- "valueString": "Microsoft Delivery",
- "content": "Microsoft Delivery",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 3.3454,
- 3.7641,
- 4.5762,
- 3.7641,
- 4.5762,
- 3.9076,
- 3.3454,
- 3.9076
- ]
- }
- ],
- "confidence": 0.955,
- "spans": [
- {
- "offset": 338,
- "length": 18
- }
- ]
- },
- "SubTotal": {
- "type": "number",
- "valueNumber": 100,
- "content": "$100.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.3842,
- 6.8679,
- 7.9181,
- 6.8679,
- 7.9181,
- 7.0118,
- 7.3842,
- 7.0118
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 768,
- "length": 7
- }
- ]
- },
- "TotalTax": {
- "type": "number",
- "valueNumber": 10,
- "content": "$10.00",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 7.4709,
- 7.165,
- 7.9182,
- 7.165,
- 7.9182,
- 7.3089,
- 7.4709,
- 7.3089
- ]
- }
- ],
- "confidence": 0.973,
- "spans": [
- {
- "offset": 786,
- "length": 6
- }
- ]
- },
- "VendorAddress": {
- "type": "string",
- "valueString": "123 456th St New York, NY, 10001",
- "content": "123 456th St New York, NY, 10001",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5943,
- 1.6092,
- 1.9894,
- 1.6092,
- 1.9894,
- 1.9675,
- 0.5943,
- 1.9675
- ]
- }
- ],
- "confidence": 0.946,
- "spans": [
- {
- "offset": 59,
- "length": 12
- },
- {
- "offset": 97,
- "length": 19
- }
- ]
- },
- "VendorAddressRecipient": {
- "type": "string",
- "valueString": "Contoso Headquarters",
- "content": "Contoso Headquarters",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5882,
- 1.4239,
- 2.0978,
- 1.4239,
- 2.0978,
- 1.5664,
- 0.5882,
- 1.5664
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 21,
- "length": 20
- }
- ]
- },
- "VendorName": {
- "type": "string",
- "valueString": "CONTOSO LTD.",
- "content": "CONTOSO LTD.",
- "boundingRegions": [
- {
- "pageNumber": 1,
- "polygon": [
- 0.5911,
- 0.6857,
- 2.3181,
- 0.6857,
- 2.3181,
- 0.8664,
- 0.5911,
- 0.8664
- ]
- }
- ],
- "confidence": 0.956,
- "spans": [
- {
- "offset": 0,
- "length": 12
- }
- ]
- }
- },
- "confidence": 1,
- "spans": [
- {
- "offset": 0,
- "length": 958
- }
- ]
- }
- ]
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "prebuilt-invoice",
+ "resultId": "{resultId}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "succeeded",
+ "createdDateTime": "2021-09-24T13:00:46Z",
+ "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
+ "analyzeResult": {
+ "apiVersion": "{apiVersion}",
+ "modelId": "prebuilt-invoice",
+ "stringIndexType": "textElements",
+ "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:",
+ "pages": [
+ {
+ "pageNumber": 1,
+ "angle": 0,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "words": [
+ {
+ "content": "CONTOSO",
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 1.7451,
+ 0.6857,
+ 1.7451,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 0,
+ "length": 7
+ }
+ },
+ {
+ "content": "LTD.",
+ "polygon": [
+ 1.8441,
+ 0.6879,
+ 2.3181,
+ 0.6879,
+ 2.3181,
+ 0.865,
+ 1.8441,
+ 0.865
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 8,
+ "length": 4
+ }
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 7.0751,
+ 0.589,
+ 7.9886,
+ 0.589,
+ 7.9886,
+ 0.7697,
+ 7.0751,
+ 0.7697
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 13,
+ "length": 7
+ }
+ },
+ {
+ "content": "Contoso",
+ "polygon": [
+ 0.5882,
+ 1.4303,
+ 1.1337,
+ 1.4303,
+ 1.1337,
+ 1.5383,
+ 0.5882,
+ 1.5383
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 21,
+ "length": 7
+ }
+ },
+ {
+ "content": "Headquarters",
+ "polygon": [
+ 1.1905,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 1.1905,
+ 1.5664
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 29,
+ "length": 12
+ }
+ },
+ {
+ "content": "INVOICE:",
+ "polygon": [
+ 6.8599,
+ 1.4217,
+ 7.4328,
+ 1.4217,
+ 7.4328,
+ 1.5218,
+ 6.8599,
+ 1.5218
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 42,
+ "length": 8
+ }
+ },
+ {
+ "content": "INV-100",
+ "polygon": [
+ 7.4959,
+ 1.422,
+ 7.9988,
+ 1.422,
+ 7.9988,
+ 1.5215,
+ 7.4959,
+ 1.5215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 51,
+ "length": 7
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 1.6339,
+ 0.8213,
+ 1.6339,
+ 0.8213,
+ 1.742,
+ 0.5945,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 59,
+ "length": 3
+ }
+ },
+ {
+ "content": "456th",
+ "polygon": [
+ 0.874,
+ 1.6092,
+ 1.2102,
+ 1.6092,
+ 1.2102,
+ 1.742,
+ 0.874,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 63,
+ "length": 5
+ }
+ },
+ {
+ "content": "St",
+ "polygon": [
+ 1.2598,
+ 1.6339,
+ 1.3812,
+ 1.6339,
+ 1.3812,
+ 1.742,
+ 1.2598,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 69,
+ "length": 2
+ }
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 6.2263,
+ 1.6254,
+ 6.7562,
+ 1.6254,
+ 6.7562,
+ 1.7256,
+ 6.2263,
+ 1.7256
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 72,
+ "length": 7
+ }
+ },
+ {
+ "content": "DATE:",
+ "polygon": [
+ 6.8132,
+ 1.6267,
+ 7.1891,
+ 1.6267,
+ 7.1891,
+ 1.7248,
+ 6.8132,
+ 1.7248
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 80,
+ "length": 5
+ }
+ },
+ {
+ "content": "11/15/2019",
+ "polygon": [
+ 7.2528,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 7.2528,
+ 1.7449
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 86,
+ "length": 10
+ }
+ },
+ {
+ "content": "New",
+ "polygon": [
+ 0.5943,
+ 1.8385,
+ 0.8848,
+ 1.8385,
+ 0.8848,
+ 1.9454,
+ 0.5943,
+ 1.9454
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 97,
+ "length": 3
+ }
+ },
+ {
+ "content": "York,",
+ "polygon": [
+ 0.9293,
+ 1.8307,
+ 1.2568,
+ 1.8307,
+ 1.2568,
+ 1.9675,
+ 0.9293,
+ 1.9675
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 101,
+ "length": 5
+ }
+ },
+ {
+ "content": "NY,",
+ "polygon": [
+ 1.3205,
+ 1.8382,
+ 1.5242,
+ 1.8382,
+ 1.5242,
+ 1.9675,
+ 1.3205,
+ 1.9675
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 107,
+ "length": 3
+ }
+ },
+ {
+ "content": "10001",
+ "polygon": [
+ 1.5915,
+ 1.8372,
+ 1.9894,
+ 1.8372,
+ 1.9894,
+ 1.9454,
+ 1.5915,
+ 1.9454
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 111,
+ "length": 5
+ }
+ },
+ {
+ "content": "DUE",
+ "polygon": [
+ 6.4966,
+ 1.8333,
+ 6.7569,
+ 1.8333,
+ 6.7569,
+ 1.9322,
+ 6.4966,
+ 1.9322
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 117,
+ "length": 3
+ }
+ },
+ {
+ "content": "DATE:",
+ "polygon": [
+ 6.8126,
+ 1.8333,
+ 7.1846,
+ 1.8333,
+ 7.1846,
+ 1.9315,
+ 6.8126,
+ 1.9315
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 121,
+ "length": 5
+ }
+ },
+ {
+ "content": "12/15/2019",
+ "polygon": [
+ 7.2494,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 7.2494,
+ 1.9515
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 127,
+ "length": 10
+ }
+ },
+ {
+ "content": "CUSTOMER",
+ "polygon": [
+ 4.9513,
+ 2.0388,
+ 5.6868,
+ 2.0388,
+ 5.6868,
+ 2.1389,
+ 4.9513,
+ 2.1389
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 138,
+ "length": 8
+ }
+ },
+ {
+ "content": "NAME:",
+ "polygon": [
+ 5.7412,
+ 2.04,
+ 6.1764,
+ 2.04,
+ 6.1764,
+ 2.1381,
+ 5.7412,
+ 2.1381
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 147,
+ "length": 5
+ }
+ },
+ {
+ "content": "MICROSOFT",
+ "polygon": [
+ 6.2419,
+ 2.0391,
+ 6.9981,
+ 2.0391,
+ 6.9981,
+ 2.1386,
+ 6.2419,
+ 2.1386
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 153,
+ "length": 9
+ }
+ },
+ {
+ "content": "CORPORATION",
+ "polygon": [
+ 7.0448,
+ 2.0391,
+ 7.9825,
+ 2.0391,
+ 7.9825,
+ 2.1386,
+ 7.0448,
+ 2.1386
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 163,
+ "length": 11
+ }
+ },
+ {
+ "content": "SERVICE",
+ "polygon": [
+ 5.1667,
+ 2.2421,
+ 5.6923,
+ 2.2421,
+ 5.6923,
+ 2.3422,
+ 5.1667,
+ 2.3422
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 175,
+ "length": 7
+ }
+ },
+ {
+ "content": "PERIOD:",
+ "polygon": [
+ 5.748,
+ 2.2421,
+ 6.2721,
+ 2.2421,
+ 6.2721,
+ 2.3422,
+ 5.748,
+ 2.3422
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 183,
+ "length": 7
+ }
+ },
+ {
+ "content": "10/14/2019",
+ "polygon": [
+ 6.3357,
+ 2.2306,
+ 7.0749,
+ 2.2306,
+ 7.0749,
+ 2.3615,
+ 6.3357,
+ 2.3615
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 191,
+ "length": 10
+ }
+ },
+ {
+ "content": "–",
+ "polygon": [
+ 7.122,
+ 2.2922,
+ 7.1995,
+ 2.2922,
+ 7.1995,
+ 2.3037,
+ 7.122,
+ 2.3037
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 202,
+ "length": 1
+ }
+ },
+ {
+ "content": "11/14/2019",
+ "polygon": [
+ 7.2528,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 7.2528,
+ 2.3615
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 204,
+ "length": 10
+ }
+ },
+ {
+ "content": "CUSTOMER",
+ "polygon": [
+ 6.3253,
+ 2.4488,
+ 7.0608,
+ 2.4488,
+ 7.0608,
+ 2.5489,
+ 6.3253,
+ 2.5489
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 215,
+ "length": 8
+ }
+ },
+ {
+ "content": "ID:",
+ "polygon": [
+ 7.1153,
+ 2.45,
+ 7.2809,
+ 2.45,
+ 7.2809,
+ 2.5481,
+ 7.1153,
+ 2.5481
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 224,
+ "length": 3
+ }
+ },
+ {
+ "content": "CID-12345",
+ "polygon": [
+ 7.3369,
+ 2.4491,
+ 7.9951,
+ 2.4491,
+ 7.9951,
+ 2.5486,
+ 7.3369,
+ 2.5486
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 228,
+ "length": 9
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.2303,
+ 2.6436,
+ 1.2303,
+ 2.759,
+ 0.5943,
+ 2.759
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 238,
+ "length": 9
+ }
+ },
+ {
+ "content": "Corp",
+ "polygon": [
+ 1.2808,
+ 2.651,
+ 1.586,
+ 2.651,
+ 1.586,
+ 2.7871,
+ 1.2808,
+ 2.7871
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 248,
+ "length": 4
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 2.8541,
+ 0.8213,
+ 2.8541,
+ 0.8213,
+ 2.9623,
+ 0.5945,
+ 2.9623
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 253,
+ "length": 3
+ }
+ },
+ {
+ "content": "Other",
+ "polygon": [
+ 0.875,
+ 2.8476,
+ 1.262,
+ 2.8476,
+ 1.262,
+ 2.9623,
+ 0.875,
+ 2.9623
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 257,
+ "length": 5
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 1.3058,
+ 2.8541,
+ 1.4633,
+ 2.8541,
+ 1.4633,
+ 2.9845,
+ 1.3058,
+ 2.9845
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 263,
+ "length": 3
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 0.5943,
+ 3.0513,
+ 1.2222,
+ 3.0513,
+ 1.2222,
+ 3.1656,
+ 0.5943,
+ 3.1656
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 267,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 1.2753,
+ 3.0585,
+ 1.5468,
+ 3.0585,
+ 1.5468,
+ 3.1878,
+ 1.2753,
+ 3.1878
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 275,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 1.6033,
+ 3.0575,
+ 2.0083,
+ 3.0575,
+ 2.0083,
+ 3.1656,
+ 1.6033,
+ 3.1656
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 279,
+ "length": 5
+ }
+ },
+ {
+ "content": "BILL",
+ "polygon": [
+ 0.5909,
+ 3.5603,
+ 0.8438,
+ 3.5603,
+ 0.8438,
+ 3.6579,
+ 0.5909,
+ 3.6579
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 285,
+ "length": 4
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 0.8846,
+ 3.559,
+ 1.1032,
+ 3.559,
+ 1.1032,
+ 3.6592,
+ 0.8846,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 290,
+ "length": 3
+ }
+ },
+ {
+ "content": "SHIP",
+ "polygon": [
+ 3.3361,
+ 3.559,
+ 3.6278,
+ 3.559,
+ 3.6278,
+ 3.6592,
+ 3.3361,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 294,
+ "length": 4
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 3.6716,
+ 3.559,
+ 3.8903,
+ 3.559,
+ 3.8903,
+ 3.6592,
+ 3.6716,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 299,
+ "length": 3
+ }
+ },
+ {
+ "content": "SERVICE",
+ "polygon": [
+ 6.2104,
+ 3.559,
+ 6.7361,
+ 3.559,
+ 6.7361,
+ 3.6592,
+ 6.2104,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 303,
+ "length": 7
+ }
+ },
+ {
+ "content": "ADDRESS:",
+ "polygon": [
+ 6.7828,
+ 3.559,
+ 7.4232,
+ 3.559,
+ 7.4232,
+ 3.6592,
+ 6.7828,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 311,
+ "length": 8
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.2303,
+ 3.7641,
+ 1.2303,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 320,
+ "length": 9
+ }
+ },
+ {
+ "content": "Finance",
+ "polygon": [
+ 1.287,
+ 3.7701,
+ 1.7878,
+ 3.7701,
+ 1.7878,
+ 3.8794,
+ 1.287,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 330,
+ "length": 7
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 3.9814,
+ 3.7641,
+ 3.9814,
+ 3.8794,
+ 3.3454,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 338,
+ "length": 9
+ }
+ },
+ {
+ "content": "Delivery",
+ "polygon": [
+ 4.0381,
+ 3.7647,
+ 4.5762,
+ 3.7647,
+ 4.5762,
+ 3.9076,
+ 4.0381,
+ 3.9076
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 348,
+ "length": 8
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 6.8557,
+ 3.7641,
+ 6.8557,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 357,
+ "length": 9
+ }
+ },
+ {
+ "content": "Services",
+ "polygon": [
+ 6.9042,
+ 3.7701,
+ 7.4427,
+ 3.7701,
+ 7.4427,
+ 3.8794,
+ 6.9042,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 367,
+ "length": 8
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 3.9746,
+ 0.8213,
+ 3.9746,
+ 0.8213,
+ 4.0827,
+ 0.5945,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 376,
+ "length": 3
+ }
+ },
+ {
+ "content": "Bill",
+ "polygon": [
+ 0.8842,
+ 3.9681,
+ 1.0657,
+ 3.9681,
+ 1.0657,
+ 4.0817,
+ 0.8842,
+ 4.0817
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 380,
+ "length": 4
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 1.1222,
+ 3.9746,
+ 1.2765,
+ 3.9746,
+ 1.2765,
+ 4.1049,
+ 1.1222,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 385,
+ "length": 3
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 3.3456,
+ 3.9746,
+ 3.5724,
+ 3.9746,
+ 3.5724,
+ 4.0827,
+ 3.3456,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 389,
+ "length": 3
+ }
+ },
+ {
+ "content": "Ship",
+ "polygon": [
+ 3.6239,
+ 3.9681,
+ 3.9042,
+ 3.9681,
+ 3.9042,
+ 4.1109,
+ 3.6239,
+ 4.1109
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 393,
+ "length": 4
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 3.9536,
+ 3.9746,
+ 4.1111,
+ 3.9746,
+ 4.1111,
+ 4.1049,
+ 3.9536,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 398,
+ "length": 3
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 6.2199,
+ 3.9746,
+ 6.4467,
+ 3.9746,
+ 6.4467,
+ 4.0827,
+ 6.2199,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 402,
+ "length": 3
+ }
+ },
+ {
+ "content": "Service",
+ "polygon": [
+ 6.4985,
+ 3.9734,
+ 6.9738,
+ 3.9734,
+ 6.9738,
+ 4.0827,
+ 6.4985,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 406,
+ "length": 7
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 7.0246,
+ 3.9746,
+ 7.1821,
+ 3.9746,
+ 7.1821,
+ 4.1049,
+ 7.0246,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 414,
+ "length": 3
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 0.5943,
+ 4.1717,
+ 1.2222,
+ 4.1717,
+ 1.2222,
+ 4.2861,
+ 0.5943,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 418,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 1.2753,
+ 4.1789,
+ 1.5468,
+ 4.1789,
+ 1.5468,
+ 4.3082,
+ 1.2753,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 426,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 1.6033,
+ 4.1779,
+ 2.0083,
+ 4.1779,
+ 2.0083,
+ 4.2861,
+ 1.6033,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 430,
+ "length": 5
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 3.3454,
+ 4.1717,
+ 3.9732,
+ 4.1717,
+ 3.9732,
+ 4.2861,
+ 3.3454,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 436,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 4.0264,
+ 4.1789,
+ 4.2979,
+ 4.1789,
+ 4.2979,
+ 4.3082,
+ 4.0264,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 444,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 4.3544,
+ 4.1779,
+ 4.7594,
+ 4.1779,
+ 4.7594,
+ 4.2861,
+ 4.3544,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 448,
+ "length": 5
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 6.2197,
+ 4.1717,
+ 6.8475,
+ 4.1717,
+ 6.8475,
+ 4.2861,
+ 6.2197,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 454,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 6.9007,
+ 4.1789,
+ 7.1722,
+ 4.1789,
+ 7.1722,
+ 4.3082,
+ 6.9007,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 462,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 7.2287,
+ 4.1779,
+ 7.6337,
+ 4.1779,
+ 7.6337,
+ 4.2861,
+ 7.2287,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 466,
+ "length": 5
+ }
+ },
+ {
+ "content": "SALESPERSON",
+ "polygon": [
+ 0.7018,
+ 4.6528,
+ 1.6092,
+ 4.6528,
+ 1.6092,
+ 4.7529,
+ 0.7018,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 472,
+ "length": 11
+ }
+ },
+ {
+ "content": "P.O.",
+ "polygon": [
+ 2.1216,
+ 4.6528,
+ 2.3788,
+ 4.6528,
+ 2.3788,
+ 4.7529,
+ 2.1216,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 484,
+ "length": 4
+ }
+ },
+ {
+ "content": "NUMBER",
+ "polygon": [
+ 2.4376,
+ 4.654,
+ 3.0155,
+ 4.654,
+ 3.0155,
+ 4.7529,
+ 2.4376,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 489,
+ "length": 6
+ }
+ },
+ {
+ "content": "REQUISITIONER",
+ "polygon": [
+ 3.4953,
+ 4.6528,
+ 4.5157,
+ 4.6528,
+ 4.5157,
+ 4.7687,
+ 3.4953,
+ 4.7687
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 496,
+ "length": 13
+ }
+ },
+ {
+ "content": "SHIPPED",
+ "polygon": [
+ 4.81,
+ 4.6528,
+ 5.362,
+ 4.6528,
+ 5.362,
+ 4.7529,
+ 4.81,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 510,
+ "length": 7
+ }
+ },
+ {
+ "content": "VIA",
+ "polygon": [
+ 5.409,
+ 4.654,
+ 5.6317,
+ 4.654,
+ 5.6317,
+ 4.7517,
+ 5.409,
+ 4.7517
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 518,
+ "length": 3
+ }
+ },
+ {
+ "content": "F.O.B.",
+ "polygon": [
+ 5.8696,
+ 4.6528,
+ 6.2467,
+ 4.6528,
+ 6.2467,
+ 4.7529,
+ 5.8696,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 522,
+ "length": 6
+ }
+ },
+ {
+ "content": "POINT",
+ "polygon": [
+ 6.3054,
+ 4.6528,
+ 6.706,
+ 4.6528,
+ 6.706,
+ 4.7529,
+ 6.3054,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 529,
+ "length": 5
+ }
+ },
+ {
+ "content": "TERMS",
+ "polygon": [
+ 7.1806,
+ 4.6528,
+ 7.6304,
+ 4.6528,
+ 7.6304,
+ 4.7529,
+ 7.1806,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 535,
+ "length": 5
+ }
+ },
+ {
+ "content": "PO-3333",
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 541,
+ "length": 7
+ }
+ },
+ {
+ "content": "DATE",
+ "polygon": [
+ 0.7409,
+ 5.421,
+ 1.0744,
+ 5.421,
+ 1.0744,
+ 5.5186,
+ 0.7409,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 549,
+ "length": 4
+ }
+ },
+ {
+ "content": "ITEM",
+ "polygon": [
+ 1.4213,
+ 5.421,
+ 1.7338,
+ 5.421,
+ 1.7338,
+ 5.5186,
+ 1.4213,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 554,
+ "length": 4
+ }
+ },
+ {
+ "content": "CODE",
+ "polygon": [
+ 1.7893,
+ 5.4197,
+ 2.1407,
+ 5.4197,
+ 2.1407,
+ 5.5199,
+ 1.7893,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 559,
+ "length": 4
+ }
+ },
+ {
+ "content": "DESCRIPTION",
+ "polygon": [
+ 2.8516,
+ 5.4197,
+ 3.7134,
+ 5.4197,
+ 3.7134,
+ 5.5199,
+ 2.8516,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 564,
+ "length": 11
+ }
+ },
+ {
+ "content": "QTY",
+ "polygon": [
+ 4.4043,
+ 5.4197,
+ 4.6631,
+ 5.4197,
+ 4.6631,
+ 5.5357,
+ 4.4043,
+ 5.5357
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 576,
+ "length": 3
+ }
+ },
+ {
+ "content": "UM",
+ "polygon": [
+ 5.049,
+ 5.421,
+ 5.2654,
+ 5.421,
+ 5.2654,
+ 5.5199,
+ 5.049,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 580,
+ "length": 2
+ }
+ },
+ {
+ "content": "PRICE",
+ "polygon": [
+ 5.8563,
+ 5.4199,
+ 6.2163,
+ 5.4199,
+ 6.2163,
+ 5.5197,
+ 5.8563,
+ 5.5197
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 583,
+ "length": 5
+ }
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.7169,
+ 5.421,
+ 6.974,
+ 5.421,
+ 6.974,
+ 5.5186,
+ 6.7169,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 589,
+ "length": 3
+ }
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 7.2847,
+ 5.4197,
+ 7.9039,
+ 5.4197,
+ 7.9039,
+ 5.5199,
+ 7.2847,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 593,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/4/2021",
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 600,
+ "length": 8
+ }
+ },
+ {
+ "content": "A123",
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 609,
+ "length": 4
+ }
+ },
+ {
+ "content": "Consulting",
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.0438,
+ 5.6883,
+ 3.0438,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 614,
+ "length": 10
+ }
+ },
+ {
+ "content": "Services",
+ "polygon": [
+ 3.0925,
+ 5.6937,
+ 3.6278,
+ 5.6937,
+ 3.6278,
+ 5.803,
+ 3.0925,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 625,
+ "length": 8
+ }
+ },
+ {
+ "content": "2",
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 634,
+ "length": 1
+ }
+ },
+ {
+ "content": "hours",
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 636,
+ "length": 5
+ }
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 642,
+ "length": 6
+ }
+ },
+ {
+ "content": "10%",
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 649,
+ "length": 3
+ }
+ },
+ {
+ "content": "$60.00",
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 653,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/5/2021",
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 660,
+ "length": 8
+ }
+ },
+ {
+ "content": "B456",
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 669,
+ "length": 4
+ }
+ },
+ {
+ "content": "Document",
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.0318,
+ 5.993,
+ 3.0318,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 674,
+ "length": 8
+ }
+ },
+ {
+ "content": "Fee",
+ "polygon": [
+ 3.0887,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 3.0887,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 683,
+ "length": 3
+ }
+ },
+ {
+ "content": "3",
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 687,
+ "length": 1
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 689,
+ "length": 6
+ }
+ },
+ {
+ "content": "5%",
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 696,
+ "length": 2
+ }
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 699,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/6/2021",
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 706,
+ "length": 8
+ }
+ },
+ {
+ "content": "C789",
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 715,
+ "length": 4
+ }
+ },
+ {
+ "content": "Printing",
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 2.8575,
+ 6.2906,
+ 2.8575,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 720,
+ "length": 8
+ }
+ },
+ {
+ "content": "Fee",
+ "polygon": [
+ 2.9143,
+ 6.2933,
+ 3.1351,
+ 6.2933,
+ 3.1351,
+ 6.3999,
+ 2.9143,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 729,
+ "length": 3
+ }
+ },
+ {
+ "content": "10",
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 733,
+ "length": 2
+ }
+ },
+ {
+ "content": "pages",
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 736,
+ "length": 5
+ }
+ },
+ {
+ "content": "$1.00",
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 742,
+ "length": 5
+ }
+ },
+ {
+ "content": "20%",
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 748,
+ "length": 3
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 752,
+ "length": 6
+ }
+ },
+ {
+ "content": "SUBTOTAL",
+ "polygon": [
+ 6.0282,
+ 6.9118,
+ 6.7309,
+ 6.9118,
+ 6.7309,
+ 7.0199,
+ 6.0282,
+ 7.0199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 759,
+ "length": 8
+ }
+ },
+ {
+ "content": "$100.00",
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 768,
+ "length": 7
+ }
+ },
+ {
+ "content": "SALES",
+ "polygon": [
+ 6.0382,
+ 7.2089,
+ 6.4262,
+ 7.2089,
+ 6.4262,
+ 7.317,
+ 6.0382,
+ 7.317
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 776,
+ "length": 5
+ }
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.4702,
+ 7.2099,
+ 6.728,
+ 7.2099,
+ 6.728,
+ 7.316,
+ 6.4702,
+ 7.316
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 782,
+ "length": 3
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 786,
+ "length": 6
+ }
+ },
+ {
+ "content": "TOTAL",
+ "polygon": [
+ 6.2969,
+ 7.5089,
+ 6.7309,
+ 7.5089,
+ 6.7309,
+ 7.617,
+ 6.2969,
+ 7.617
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 793,
+ "length": 5
+ }
+ },
+ {
+ "content": "$110.00",
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 799,
+ "length": 7
+ }
+ },
+ {
+ "content": "PREVIOUS",
+ "polygon": [
+ 4.8126,
+ 7.8055,
+ 5.4789,
+ 7.8055,
+ 5.4789,
+ 7.9137,
+ 4.8126,
+ 7.9137
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 807,
+ "length": 8
+ }
+ },
+ {
+ "content": "UNPAID",
+ "polygon": [
+ 5.5362,
+ 7.8065,
+ 6.057,
+ 7.8065,
+ 6.057,
+ 7.9137,
+ 5.5362,
+ 7.9137
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 816,
+ "length": 6
+ }
+ },
+ {
+ "content": "BALANCE",
+ "polygon": [
+ 6.1164,
+ 7.8057,
+ 6.7249,
+ 7.8057,
+ 6.7249,
+ 7.9135,
+ 6.1164,
+ 7.9135
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 823,
+ "length": 7
+ }
+ },
+ {
+ "content": "$500.00",
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 831,
+ "length": 7
+ }
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 5.7652,
+ 8.1022,
+ 6.4055,
+ 8.1022,
+ 6.4055,
+ 8.2104,
+ 5.7652,
+ 8.2104
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 839,
+ "length": 6
+ }
+ },
+ {
+ "content": "DUE",
+ "polygon": [
+ 6.4562,
+ 8.1032,
+ 6.725,
+ 8.1032,
+ 6.725,
+ 8.2104,
+ 6.4562,
+ 8.2104
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 846,
+ "length": 3
+ }
+ },
+ {
+ "content": "$610.00",
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 850,
+ "length": 7
+ }
+ },
+ {
+ "content": "THANK",
+ "polygon": [
+ 3.129,
+ 8.5453,
+ 3.5887,
+ 8.5453,
+ 3.5887,
+ 8.6429,
+ 3.129,
+ 8.6429
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 858,
+ "length": 5
+ }
+ },
+ {
+ "content": "YOU",
+ "polygon": [
+ 3.6316,
+ 8.544,
+ 3.9064,
+ 8.544,
+ 3.9064,
+ 8.6442,
+ 3.6316,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 864,
+ "length": 3
+ }
+ },
+ {
+ "content": "FOR",
+ "polygon": [
+ 3.9671,
+ 8.544,
+ 4.2187,
+ 8.544,
+ 4.2187,
+ 8.6442,
+ 3.9671,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 868,
+ "length": 3
+ }
+ },
+ {
+ "content": "YOUR",
+ "polygon": [
+ 4.2638,
+ 8.544,
+ 4.6347,
+ 8.544,
+ 4.6347,
+ 8.6442,
+ 4.2638,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 872,
+ "length": 4
+ }
+ },
+ {
+ "content": "BUSINESS!",
+ "polygon": [
+ 4.6859,
+ 8.539,
+ 5.356,
+ 8.539,
+ 5.356,
+ 8.6442,
+ 4.6859,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 877,
+ "length": 9
+ }
+ },
+ {
+ "content": "REMIT",
+ "polygon": [
+ 0.5909,
+ 9.1619,
+ 1.0014,
+ 9.1619,
+ 1.0014,
+ 9.2596,
+ 0.5909,
+ 9.2596
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 887,
+ "length": 5
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 1.0446,
+ 9.1607,
+ 1.2603,
+ 9.1607,
+ 1.2603,
+ 9.2608,
+ 1.0446,
+ 9.2608
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 893,
+ "length": 3
+ }
+ },
+ {
+ "content": "Contoso",
+ "polygon": [
+ 0.5882,
+ 9.3697,
+ 1.1337,
+ 9.3697,
+ 1.1337,
+ 9.4777,
+ 0.5882,
+ 9.4777
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 897,
+ "length": 7
+ }
+ },
+ {
+ "content": "Billing",
+ "polygon": [
+ 1.1905,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 1.1905,
+ 9.5059
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 905,
+ "length": 7
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 9.5728,
+ 0.8213,
+ 9.5728,
+ 0.8213,
+ 9.681,
+ 0.5945,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 913,
+ "length": 3
+ }
+ },
+ {
+ "content": "Remit",
+ "polygon": [
+ 0.881,
+ 9.5717,
+ 1.264,
+ 9.5717,
+ 1.264,
+ 9.681,
+ 0.881,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 917,
+ "length": 5
+ }
+ },
+ {
+ "content": "St",
+ "polygon": [
+ 1.3125,
+ 9.5728,
+ 1.4337,
+ 9.5728,
+ 1.4337,
+ 9.681,
+ 1.3125,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 923,
+ "length": 2
+ }
+ },
+ {
+ "content": "New",
+ "polygon": [
+ 0.5943,
+ 9.7808,
+ 0.8848,
+ 9.7808,
+ 0.8848,
+ 9.8877,
+ 0.5943,
+ 9.8877
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 926,
+ "length": 3
+ }
+ },
+ {
+ "content": "York,",
+ "polygon": [
+ 0.9293,
+ 9.773,
+ 1.2568,
+ 9.773,
+ 1.2568,
+ 9.9098,
+ 0.9293,
+ 9.9098
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 930,
+ "length": 5
+ }
+ },
+ {
+ "content": "NY,",
+ "polygon": [
+ 1.3205,
+ 9.7805,
+ 1.5233,
+ 9.7805,
+ 1.5233,
+ 9.9098,
+ 1.3205,
+ 9.9098
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 936,
+ "length": 3
+ }
+ },
+ {
+ "content": "10001",
+ "polygon": [
+ 1.5903,
+ 9.7795,
+ 1.9882,
+ 9.7795,
+ 1.9882,
+ 9.8877,
+ 1.5903,
+ 9.8877
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 940,
+ "length": 5
+ }
+ }
+ ],
+ "selectionMarks": [
+ {
+ "state": "unselected",
+ "polygon": [
+ 4.3231,
+ 5.6279,
+ 4.7562,
+ 5.6279,
+ 4.7562,
+ 5.8654,
+ 4.3231,
+ 5.8654
+ ],
+ "confidence": 0.212,
+ "span": {
+ "offset": 946,
+ "length": 12
+ }
+ }
+ ],
+ "lines": [
+ {
+ "content": "CONTOSO LTD.",
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 2.3181,
+ 0.6857,
+ 2.3181,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ],
+ "spans": [
+ {
+ "offset": 0,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 7.0751,
+ 0.589,
+ 7.9886,
+ 0.589,
+ 7.9886,
+ 0.7697,
+ 7.0751,
+ 0.7697
+ ],
+ "spans": [
+ {
+ "offset": 13,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "Contoso Headquarters",
+ "polygon": [
+ 0.5882,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 0.5882,
+ 1.5664
+ ],
+ "spans": [
+ {
+ "offset": 21,
+ "length": 20
+ }
+ ]
+ },
+ {
+ "content": "INVOICE: INV-100",
+ "polygon": [
+ 6.8599,
+ 1.4217,
+ 7.9988,
+ 1.4217,
+ 7.9988,
+ 1.5218,
+ 6.8599,
+ 1.5218
+ ],
+ "spans": [
+ {
+ "offset": 42,
+ "length": 16
+ }
+ ]
+ },
+ {
+ "content": "123 456th St",
+ "polygon": [
+ 0.5945,
+ 1.6092,
+ 1.3812,
+ 1.6092,
+ 1.3812,
+ 1.742,
+ 0.5945,
+ 1.742
+ ],
+ "spans": [
+ {
+ "offset": 59,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "INVOICE DATE: 11/15/2019",
+ "polygon": [
+ 6.2263,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 6.2263,
+ 1.7449
+ ],
+ "spans": [
+ {
+ "offset": 72,
+ "length": 24
+ }
+ ]
+ },
+ {
+ "content": "New York, NY, 10001",
+ "polygon": [
+ 0.5943,
+ 1.8307,
+ 1.9894,
+ 1.8307,
+ 1.9894,
+ 1.9675,
+ 0.5943,
+ 1.9675
+ ],
+ "spans": [
+ {
+ "offset": 97,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "content": "DUE DATE: 12/15/2019",
+ "polygon": [
+ 6.4966,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 6.4966,
+ 1.9515
+ ],
+ "spans": [
+ {
+ "offset": 117,
+ "length": 20
+ }
+ ]
+ },
+ {
+ "content": "CUSTOMER NAME: MICROSOFT CORPORATION",
+ "polygon": [
+ 4.9513,
+ 2.0388,
+ 7.9825,
+ 2.0388,
+ 7.9825,
+ 2.1389,
+ 4.9513,
+ 2.1389
+ ],
+ "spans": [
+ {
+ "offset": 138,
+ "length": 36
+ }
+ ]
+ },
+ {
+ "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019",
+ "polygon": [
+ 5.1667,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 5.1667,
+ 2.3615
+ ],
+ "spans": [
+ {
+ "offset": 175,
+ "length": 39
+ }
+ ]
+ },
+ {
+ "content": "CUSTOMER ID: CID-12345",
+ "polygon": [
+ 6.3253,
+ 2.4488,
+ 7.9951,
+ 2.4488,
+ 7.9951,
+ 2.5489,
+ 6.3253,
+ 2.5489
+ ],
+ "spans": [
+ {
+ "offset": 215,
+ "length": 22
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Corp",
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.586,
+ 2.6436,
+ 1.586,
+ 2.7871,
+ 0.5943,
+ 2.7871
+ ],
+ "spans": [
+ {
+ "offset": 238,
+ "length": 14
+ }
+ ]
+ },
+ {
+ "content": "123 Other St,",
+ "polygon": [
+ 0.5945,
+ 2.8476,
+ 1.4633,
+ 2.8476,
+ 1.4633,
+ 2.9845,
+ 0.5945,
+ 2.9845
+ ],
+ "spans": [
+ {
+ "offset": 253,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 0.5943,
+ 3.0513,
+ 2.0083,
+ 3.0513,
+ 2.0083,
+ 3.1878,
+ 0.5943,
+ 3.1878
+ ],
+ "spans": [
+ {
+ "offset": 267,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "BILL TO:",
+ "polygon": [
+ 0.5909,
+ 3.559,
+ 1.1032,
+ 3.559,
+ 1.1032,
+ 3.6592,
+ 0.5909,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 285,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "SHIP TO:",
+ "polygon": [
+ 3.3361,
+ 3.559,
+ 3.8903,
+ 3.559,
+ 3.8903,
+ 3.6592,
+ 3.3361,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 294,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "SERVICE ADDRESS:",
+ "polygon": [
+ 6.2104,
+ 3.559,
+ 7.4232,
+ 3.559,
+ 7.4232,
+ 3.6592,
+ 6.2104,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 303,
+ "length": 16
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Finance",
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.7878,
+ 3.7641,
+ 1.7878,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ],
+ "spans": [
+ {
+ "offset": 320,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Delivery",
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 4.5762,
+ 3.7641,
+ 4.5762,
+ 3.9076,
+ 3.3454,
+ 3.9076
+ ],
+ "spans": [
+ {
+ "offset": 338,
+ "length": 18
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Services",
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 7.4427,
+ 3.7641,
+ 7.4427,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ],
+ "spans": [
+ {
+ "offset": 357,
+ "length": 18
+ }
+ ]
+ },
+ {
+ "content": "123 Bill St,",
+ "polygon": [
+ 0.5945,
+ 3.9681,
+ 1.2765,
+ 3.9681,
+ 1.2765,
+ 4.1049,
+ 0.5945,
+ 4.1049
+ ],
+ "spans": [
+ {
+ "offset": 376,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "123 Ship St,",
+ "polygon": [
+ 3.3456,
+ 3.9681,
+ 4.1111,
+ 3.9681,
+ 4.1111,
+ 4.1109,
+ 3.3456,
+ 4.1109
+ ],
+ "spans": [
+ {
+ "offset": 389,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "123 Service St,",
+ "polygon": [
+ 6.2199,
+ 3.9734,
+ 7.1821,
+ 3.9734,
+ 7.1821,
+ 4.1049,
+ 6.2199,
+ 4.1049
+ ],
+ "spans": [
+ {
+ "offset": 402,
+ "length": 15
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 0.5943,
+ 4.1717,
+ 2.0083,
+ 4.1717,
+ 2.0083,
+ 4.3082,
+ 0.5943,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 418,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 3.3454,
+ 4.1717,
+ 4.7594,
+ 4.1717,
+ 4.7594,
+ 4.3082,
+ 3.3454,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 436,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 6.2197,
+ 4.1717,
+ 7.6337,
+ 4.1717,
+ 7.6337,
+ 4.3082,
+ 6.2197,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 454,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "SALESPERSON",
+ "polygon": [
+ 0.7018,
+ 4.6528,
+ 1.6092,
+ 4.6528,
+ 1.6092,
+ 4.7529,
+ 0.7018,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "P.O. NUMBER",
+ "polygon": [
+ 2.1216,
+ 4.6528,
+ 3.0155,
+ 4.6528,
+ 3.0155,
+ 4.7529,
+ 2.1216,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 484,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "REQUISITIONER",
+ "polygon": [
+ 3.4953,
+ 4.6528,
+ 4.5157,
+ 4.6528,
+ 4.5157,
+ 4.7687,
+ 3.4953,
+ 4.7687
+ ],
+ "spans": [
+ {
+ "offset": 496,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "content": "SHIPPED VIA",
+ "polygon": [
+ 4.81,
+ 4.6528,
+ 5.6317,
+ 4.6528,
+ 5.6317,
+ 4.7529,
+ 4.81,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 510,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "F.O.B. POINT",
+ "polygon": [
+ 5.8696,
+ 4.6528,
+ 6.706,
+ 4.6528,
+ 6.706,
+ 4.7529,
+ 5.8696,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 522,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "TERMS",
+ "polygon": [
+ 7.1806,
+ 4.6528,
+ 7.6304,
+ 4.6528,
+ 7.6304,
+ 4.7529,
+ 7.1806,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 535,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "PO-3333",
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ],
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "DATE",
+ "polygon": [
+ 0.7409,
+ 5.421,
+ 1.0744,
+ 5.421,
+ 1.0744,
+ 5.5186,
+ 0.7409,
+ 5.5186
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "ITEM CODE",
+ "polygon": [
+ 1.4213,
+ 5.4197,
+ 2.1407,
+ 5.4197,
+ 2.1407,
+ 5.5199,
+ 1.4213,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 554,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "DESCRIPTION",
+ "polygon": [
+ 2.8516,
+ 5.4197,
+ 3.7134,
+ 5.4197,
+ 3.7134,
+ 5.5199,
+ 2.8516,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 564,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "QTY",
+ "polygon": [
+ 4.4043,
+ 5.4197,
+ 4.6631,
+ 5.4197,
+ 4.6631,
+ 5.5357,
+ 4.4043,
+ 5.5357
+ ],
+ "spans": [
+ {
+ "offset": 576,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "UM",
+ "polygon": [
+ 5.049,
+ 5.421,
+ 5.2654,
+ 5.421,
+ 5.2654,
+ 5.5199,
+ 5.049,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 580,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "PRICE",
+ "polygon": [
+ 5.8563,
+ 5.4199,
+ 6.2163,
+ 5.4199,
+ 6.2163,
+ 5.5197,
+ 5.8563,
+ 5.5197
+ ],
+ "spans": [
+ {
+ "offset": 583,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.7169,
+ 5.421,
+ 6.974,
+ 5.421,
+ 6.974,
+ 5.5186,
+ 6.7169,
+ 5.5186
+ ],
+ "spans": [
+ {
+ "offset": 589,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 7.2847,
+ 5.4197,
+ 7.9039,
+ 5.4197,
+ 7.9039,
+ 5.5199,
+ 7.2847,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 593,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/4/2021",
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ],
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "A123",
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ],
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Consulting Services",
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.6278,
+ 5.6883,
+ 3.6278,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ],
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "content": "2",
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ],
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "content": "hours",
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ],
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ],
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "10%",
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ],
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "$60.00",
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ],
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/5/2021",
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ],
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "B456",
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Document Fee",
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "3",
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ],
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "5%",
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ],
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ],
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/6/2021",
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ],
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "C789",
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ],
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Printing Fee",
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 3.1351,
+ 6.2906,
+ 3.1351,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ],
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "10",
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ],
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "pages",
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ],
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$1.00",
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ],
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "20%",
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ],
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ],
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "SUBTOTAL",
+ "polygon": [
+ 6.0282,
+ 6.9118,
+ 6.7309,
+ 6.9118,
+ 6.7309,
+ 7.0199,
+ 6.0282,
+ 7.0199
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "$100.00",
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ],
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "SALES TAX",
+ "polygon": [
+ 6.0382,
+ 7.2089,
+ 6.728,
+ 7.2089,
+ 6.728,
+ 7.317,
+ 6.0382,
+ 7.317
+ ],
+ "spans": [
+ {
+ "offset": 776,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ],
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "TOTAL",
+ "polygon": [
+ 6.2969,
+ 7.5089,
+ 6.7309,
+ 7.5089,
+ 6.7309,
+ 7.617,
+ 6.2969,
+ 7.617
+ ],
+ "spans": [
+ {
+ "offset": 793,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$110.00",
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ],
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "PREVIOUS UNPAID BALANCE",
+ "polygon": [
+ 4.8126,
+ 7.8055,
+ 6.7249,
+ 7.8055,
+ 6.7249,
+ 7.9137,
+ 4.8126,
+ 7.9137
+ ],
+ "spans": [
+ {
+ "offset": 807,
+ "length": 23
+ }
+ ]
+ },
+ {
+ "content": "$500.00",
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ],
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "AMOUNT DUE",
+ "polygon": [
+ 5.7652,
+ 8.1022,
+ 6.725,
+ 8.1022,
+ 6.725,
+ 8.2104,
+ 5.7652,
+ 8.2104
+ ],
+ "spans": [
+ {
+ "offset": 839,
+ "length": 10
+ }
+ ]
+ },
+ {
+ "content": "$610.00",
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ],
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "THANK YOU FOR YOUR BUSINESS!",
+ "polygon": [
+ 3.129,
+ 8.539,
+ 5.356,
+ 8.539,
+ 5.356,
+ 8.6442,
+ 3.129,
+ 8.6442
+ ],
+ "spans": [
+ {
+ "offset": 858,
+ "length": 28
+ }
+ ]
+ },
+ {
+ "content": "REMIT TO:",
+ "polygon": [
+ 0.5909,
+ 9.1607,
+ 1.2603,
+ 9.1607,
+ 1.2603,
+ 9.2608,
+ 0.5909,
+ 9.2608
+ ],
+ "spans": [
+ {
+ "offset": 887,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "Contoso Billing",
+ "polygon": [
+ 0.5882,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 0.5882,
+ 9.5059
+ ],
+ "spans": [
+ {
+ "offset": 897,
+ "length": 15
+ }
+ ]
+ },
+ {
+ "content": "123 Remit St",
+ "polygon": [
+ 0.5945,
+ 9.5717,
+ 1.4337,
+ 9.5717,
+ 1.4337,
+ 9.681,
+ 0.5945,
+ 9.681
+ ],
+ "spans": [
+ {
+ "offset": 913,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "New York, NY, 10001",
+ "polygon": [
+ 0.5943,
+ 9.773,
+ 1.9882,
+ 9.773,
+ 1.9882,
+ 9.9098,
+ 0.5943,
+ 9.9098
+ ],
+ "spans": [
+ {
+ "offset": 926,
+ "length": 19
+ }
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 0,
+ "length": 958
+ }
+ ]
+ }
+ ],
+ "tables": [
+ {
+ "rowCount": 4,
+ "columnCount": 8,
+ "cells": [
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "DATE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4932,
+ 5.329,
+ 1.3011,
+ 5.3213,
+ 1.3011,
+ 5.6056,
+ 0.5009,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "ITEM CODE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.3213,
+ 2.2476,
+ 5.3213,
+ 2.2399,
+ 5.6056,
+ 1.3011,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 554,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "DESCRIPTION",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2476,
+ 5.3213,
+ 4.3174,
+ 5.329,
+ 4.3097,
+ 5.6056,
+ 2.2399,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 564,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "QTY",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3174,
+ 5.329,
+ 4.7483,
+ 5.329,
+ 4.7483,
+ 5.6056,
+ 4.3097,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 576,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "UM",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.329,
+ 5.5639,
+ 5.329,
+ 5.5639,
+ 5.6056,
+ 4.7483,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 580,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PRICE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.329,
+ 6.495,
+ 5.329,
+ 6.495,
+ 5.6056,
+ 5.5639,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 583,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TAX",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.329,
+ 7.1875,
+ 5.329,
+ 7.1952,
+ 5.6056,
+ 6.495,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 589,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "AMOUNT",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1875,
+ 5.329,
+ 7.9954,
+ 5.329,
+ 7.9954,
+ 5.598,
+ 7.1952,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 593,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/4/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5009,
+ 5.6056,
+ 1.3011,
+ 5.6056,
+ 1.3011,
+ 5.8976,
+ 0.5009,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "A123",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.6056,
+ 2.2399,
+ 5.6056,
+ 2.2322,
+ 5.8976,
+ 1.3011,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Consulting Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2399,
+ 5.6056,
+ 4.3097,
+ 5.6056,
+ 4.3097,
+ 5.8976,
+ 2.2322,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "2 :unselected:",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 5.6056,
+ 4.7483,
+ 5.6056,
+ 4.7483,
+ 5.8976,
+ 4.3097,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ },
+ {
+ "offset": 946,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "hours",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.6056,
+ 5.5639,
+ 5.6056,
+ 5.5639,
+ 5.8976,
+ 4.7483,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.6056,
+ 6.495,
+ 5.6056,
+ 6.495,
+ 5.8976,
+ 5.5639,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "10%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.6056,
+ 7.1952,
+ 5.6056,
+ 7.1952,
+ 5.8976,
+ 6.495,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 5.6056,
+ 7.9954,
+ 5.598,
+ 7.9954,
+ 5.9053,
+ 7.1952,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/5/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5009,
+ 5.8976,
+ 1.3011,
+ 5.8976,
+ 1.3011,
+ 6.1973,
+ 0.5086,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "B456",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.8976,
+ 2.2322,
+ 5.8976,
+ 2.2245,
+ 6.1973,
+ 1.3011,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Document Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2322,
+ 5.8976,
+ 4.3097,
+ 5.8976,
+ 4.3097,
+ 6.1973,
+ 2.2245,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 5.8976,
+ 4.7483,
+ 5.8976,
+ 4.7483,
+ 6.1973,
+ 4.3097,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.8976,
+ 5.5639,
+ 5.8976,
+ 5.5639,
+ 6.1973,
+ 4.7483,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.8976,
+ 6.495,
+ 5.8976,
+ 6.495,
+ 6.1973,
+ 5.5639,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "5%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.8976,
+ 7.1952,
+ 5.8976,
+ 7.1952,
+ 6.1973,
+ 6.495,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 5.8976,
+ 7.9954,
+ 5.9053,
+ 7.9954,
+ 6.1896,
+ 7.1952,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/6/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5086,
+ 6.1973,
+ 1.3011,
+ 6.1973,
+ 1.3011,
+ 6.4969,
+ 0.5086,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "C789",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 6.1973,
+ 2.2245,
+ 6.1973,
+ 2.2245,
+ 6.4969,
+ 1.3011,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Printing Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2245,
+ 6.1973,
+ 4.3097,
+ 6.1973,
+ 4.3097,
+ 6.4969,
+ 2.2245,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "10",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 6.1973,
+ 4.7483,
+ 6.1973,
+ 4.7483,
+ 6.4969,
+ 4.3097,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "pages",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 6.1973,
+ 5.5639,
+ 6.1973,
+ 5.5639,
+ 6.4969,
+ 4.7483,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$1.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 6.1973,
+ 6.495,
+ 6.1973,
+ 6.495,
+ 6.4969,
+ 5.5639,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "20%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 6.1973,
+ 7.1952,
+ 6.1973,
+ 7.1952,
+ 6.4969,
+ 6.495,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 6.1973,
+ 7.9954,
+ 6.1896,
+ 7.9954,
+ 6.5046,
+ 7.1952,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4901,
+ 5.3293,
+ 7.9946,
+ 5.3289,
+ 7.9954,
+ 6.5019,
+ 0.4906,
+ 6.502
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 209
+ },
+ {
+ "offset": 946,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowCount": 2,
+ "columnCount": 6,
+ "cells": [
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SALESPERSON",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4977,
+ 4.565,
+ 1.8042,
+ 4.565,
+ 1.8119,
+ 4.8388,
+ 0.5054,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "P.O. NUMBER",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.8042,
+ 4.565,
+ 3.3105,
+ 4.565,
+ 3.3105,
+ 4.8388,
+ 1.8119,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 484,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "REQUISITIONER",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3105,
+ 4.565,
+ 4.6939,
+ 4.565,
+ 4.6862,
+ 4.8388,
+ 3.3105,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 496,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SHIPPED VIA",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.6939,
+ 4.565,
+ 5.7468,
+ 4.565,
+ 5.7468,
+ 4.8388,
+ 4.6862,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 510,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "F.O.B. POINT",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.7468,
+ 4.565,
+ 6.815,
+ 4.565,
+ 6.815,
+ 4.8388,
+ 5.7468,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 522,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TERMS",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.815,
+ 4.565,
+ 7.9985,
+ 4.565,
+ 7.9985,
+ 4.8388,
+ 6.815,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 535,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5054,
+ 4.8388,
+ 1.8119,
+ 4.8388,
+ 1.8119,
+ 5.1058,
+ 0.5131,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PO-3333",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.8119,
+ 4.8388,
+ 3.3105,
+ 4.8388,
+ 3.3105,
+ 5.1058,
+ 1.8119,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3105,
+ 4.8388,
+ 4.6862,
+ 4.8388,
+ 4.6862,
+ 5.1058,
+ 3.3105,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.6862,
+ 4.8388,
+ 5.7468,
+ 4.8388,
+ 5.7468,
+ 5.1058,
+ 4.6862,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.7468,
+ 4.8388,
+ 6.815,
+ 4.8388,
+ 6.815,
+ 5.1058,
+ 5.7468,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.815,
+ 4.8388,
+ 7.9985,
+ 4.8388,
+ 7.9985,
+ 5.1125,
+ 6.815,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4971,
+ 4.565,
+ 7.9889,
+ 4.5653,
+ 7.989,
+ 5.1146,
+ 0.4963,
+ 5.1141
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 76
+ }
+ ]
+ },
+ {
+ "rowCount": 5,
+ "columnCount": 2,
+ "cells": [
+ {
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SUBTOTAL",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7474,
+ 6.7934,
+ 6.8058,
+ 6.7934,
+ 6.8105,
+ 7.0886,
+ 4.7474,
+ 7.0886
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$100.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8058,
+ 6.7934,
+ 7.9981,
+ 6.7934,
+ 7.9981,
+ 7.0934,
+ 6.8105,
+ 7.0886
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SALES TAX",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7474,
+ 7.0886,
+ 6.8105,
+ 7.0886,
+ 6.8105,
+ 7.3743,
+ 4.7427,
+ 7.3743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 776,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.0886,
+ 7.9981,
+ 7.0934,
+ 7.9981,
+ 7.3934,
+ 6.8105,
+ 7.3743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TOTAL",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.3743,
+ 6.8105,
+ 7.3743,
+ 6.8105,
+ 7.6839,
+ 4.7427,
+ 7.6839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 793,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$110.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.3743,
+ 7.9981,
+ 7.3934,
+ 7.9981,
+ 7.6886,
+ 6.8105,
+ 7.6839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PREVIOUS UNPAID BALANCE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.6839,
+ 6.8105,
+ 7.6839,
+ 6.8105,
+ 7.9743,
+ 4.7427,
+ 7.9743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 807,
+ "length": 23
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$500.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.6839,
+ 7.9981,
+ 7.6886,
+ 7.9981,
+ 7.9839,
+ 6.8105,
+ 7.9743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 4,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "AMOUNT DUE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.9743,
+ 6.8105,
+ 7.9743,
+ 6.8105,
+ 8.2839,
+ 4.7381,
+ 8.2839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 839,
+ "length": 10
+ }
+ ]
+ },
+ {
+ "rowIndex": 4,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$610.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.9743,
+ 7.9981,
+ 7.9839,
+ 7.9981,
+ 8.2839,
+ 6.8105,
+ 8.2839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7456,
+ 6.7793,
+ 8.0143,
+ 6.7788,
+ 8.0137,
+ 8.2981,
+ 4.7446,
+ 8.2981
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 98
+ }
+ ]
+ }
+ ],
+ "documents": [
+ {
+ "docType": "prebuilt:invoice",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "fields": {
+ "AmountDue": {
+ "type": "number",
+ "valueNumber": 610,
+ "content": "$610.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ },
+ "BillingAddress": {
+ "type": "string",
+ "valueString": "123 Bill St, Redmond WA, 98052",
+ "content": "123 Bill St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 3.9681,
+ 2.0083,
+ 3.9681,
+ 2.0083,
+ 4.3082,
+ 0.5943,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.947,
+ "spans": [
+ {
+ "offset": 376,
+ "length": 12
+ },
+ {
+ "offset": 418,
+ "length": 17
+ }
+ ]
+ },
+ "BillingAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Finance",
+ "content": "Microsoft Finance",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.7878,
+ 3.7641,
+ 1.7878,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ]
+ }
+ ],
+ "confidence": 0.957,
+ "spans": [
+ {
+ "offset": 320,
+ "length": 17
+ }
+ ]
+ },
+ "CustomerAddress": {
+ "type": "string",
+ "valueString": "123 Other St, Redmond WA, 98052",
+ "content": "123 Other St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 2.8476,
+ 2.0083,
+ 2.8476,
+ 2.0083,
+ 3.1878,
+ 0.5943,
+ 3.1878
+ ]
+ }
+ ],
+ "confidence": 0.947,
+ "spans": [
+ {
+ "offset": 253,
+ "length": 31
+ }
+ ]
+ },
+ "CustomerAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Corp",
+ "content": "Microsoft Corp",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.586,
+ 2.6436,
+ 1.586,
+ 2.7871,
+ 0.5943,
+ 2.7871
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 238,
+ "length": 14
+ }
+ ]
+ },
+ "CustomerId": {
+ "type": "string",
+ "valueString": "CID-12345",
+ "content": "CID-12345",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3369,
+ 2.4491,
+ 7.9951,
+ 2.4491,
+ 7.9951,
+ 2.5486,
+ 7.3369,
+ 2.5486
+ ]
+ }
+ ],
+ "confidence": 0.964,
+ "spans": [
+ {
+ "offset": 228,
+ "length": 9
+ }
+ ]
+ },
+ "CustomerName": {
+ "type": "string",
+ "valueString": "MICROSOFT CORPORATION",
+ "content": "MICROSOFT CORPORATION",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2419,
+ 2.0391,
+ 7.9825,
+ 2.0391,
+ 7.9825,
+ 2.1386,
+ 6.2419,
+ 2.1386
+ ]
+ }
+ ],
+ "confidence": 0.949,
+ "spans": [
+ {
+ "offset": 153,
+ "length": 21
+ }
+ ]
+ },
+ "DueDate": {
+ "type": "date",
+ "valueDate": "2019-12-15",
+ "content": "12/15/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2494,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 7.2494,
+ 1.9515
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 127,
+ "length": 10
+ }
+ ]
+ },
+ "InvoiceDate": {
+ "type": "date",
+ "valueDate": "2019-11-15",
+ "content": "11/15/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2528,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 7.2528,
+ 1.7449
+ ]
+ }
+ ],
+ "confidence": 0.972,
+ "spans": [
+ {
+ "offset": 86,
+ "length": 10
+ }
+ ]
+ },
+ "InvoiceId": {
+ "type": "string",
+ "valueString": "INV-100",
+ "content": "INV-100",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4959,
+ 1.422,
+ 7.9988,
+ 1.422,
+ 7.9988,
+ 1.5215,
+ 7.4959,
+ 1.5215
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 51,
+ "length": 7
+ }
+ ]
+ },
+ "InvoiceTotal": {
+ "type": "number",
+ "valueNumber": 110,
+ "content": "$110.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ "Items": {
+ "type": "array",
+ "valueArray": [
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 60,
+ "content": "$60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ]
+ }
+ ],
+ "confidence": 0.902,
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-04",
+ "content": "3/4/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ]
+ }
+ ],
+ "confidence": 0.938,
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Consulting Services",
+ "content": "Consulting Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.6278,
+ 5.6883,
+ 3.6278,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ]
+ }
+ ],
+ "confidence": 0.9,
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "A123",
+ "content": "A123",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ]
+ }
+ ],
+ "confidence": 0.877,
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 2,
+ "content": "2",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "10%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ]
+ }
+ ],
+ "confidence": 0.78,
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ "Unit": {
+ "type": "string",
+ "valueString": "hours",
+ "content": "hours",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 30,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ]
+ }
+ ],
+ "confidence": 0.828,
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ }
+ },
+ "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8312,
+ 0.592,
+ 5.8312
+ ]
+ }
+ ],
+ "confidence": 0.955,
+ "spans": [
+ {
+ "offset": 600,
+ "length": 59
+ }
+ ]
+ },
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 30,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ]
+ }
+ ],
+ "confidence": 0.916,
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-05",
+ "content": "3/5/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ]
+ }
+ ],
+ "confidence": 0.902,
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Document Fee",
+ "content": "Document Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.901,
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "B456",
+ "content": "B456",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.886,
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 3,
+ "content": "3",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.898,
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "5%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ]
+ }
+ ],
+ "confidence": 0.772,
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ]
+ }
+ ],
+ "confidence": 0.831,
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ }
+ },
+ "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.121,
+ 0.592,
+ 6.121
+ ]
+ }
+ ],
+ "confidence": 0.941,
+ "spans": [
+ {
+ "offset": 660,
+ "length": 45
+ }
+ ]
+ },
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ]
+ }
+ ],
+ "confidence": 0.959,
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-06",
+ "content": "3/6/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ]
+ }
+ ],
+ "confidence": 0.903,
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Printing Fee",
+ "content": "Printing Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 3.1351,
+ 6.2906,
+ 3.1351,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "C789",
+ "content": "C789",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ]
+ }
+ ],
+ "confidence": 0.898,
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "10",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ]
+ }
+ ],
+ "confidence": 0.903,
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "20%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ]
+ }
+ ],
+ "confidence": 0.791,
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ "Unit": {
+ "type": "string",
+ "valueString": "pages",
+ "content": "pages",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 1,
+ "content": "$1.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ]
+ }
+ ],
+ "confidence": 0.829,
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ }
+ },
+ "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4281,
+ 0.592,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 706,
+ "length": 52
+ }
+ ]
+ }
+ ]
+ },
+ "Locale": {
+ "type": "string",
+ "valueString": "en-US",
+ "confidence": 1
+ },
+ "PreviousUnpaidBalance": {
+ "type": "number",
+ "valueNumber": 500,
+ "content": "$500.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ]
+ }
+ ],
+ "confidence": 0.962,
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ "PurchaseOrder": {
+ "type": "string",
+ "valueString": "PO-3333",
+ "content": "PO-3333",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ]
+ }
+ ],
+ "confidence": 0.967,
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ "RemittanceAddress": {
+ "type": "string",
+ "valueString": "123 Remit St New York, NY, 10001",
+ "content": "123 Remit St New York, NY, 10001",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 9.5717,
+ 1.9882,
+ 9.5717,
+ 1.9882,
+ 9.9098,
+ 0.5943,
+ 9.9098
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 913,
+ "length": 32
+ }
+ ]
+ },
+ "RemittanceAddressRecipient": {
+ "type": "string",
+ "valueString": "Contoso Billing",
+ "content": "Contoso Billing",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5882,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 0.5882,
+ 9.5059
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 897,
+ "length": 15
+ }
+ ]
+ },
+ "ServiceAddress": {
+ "type": "string",
+ "valueString": "123 Service St, Redmond WA, 98052",
+ "content": "123 Service St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2197,
+ 3.9734,
+ 7.6337,
+ 3.9734,
+ 7.6337,
+ 4.3082,
+ 6.2197,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 402,
+ "length": 15
+ },
+ {
+ "offset": 454,
+ "length": 17
+ }
+ ]
+ },
+ "ServiceAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Services",
+ "content": "Microsoft Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 7.4427,
+ 3.7641,
+ 7.4427,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ]
+ }
+ ],
+ "confidence": 0.951,
+ "spans": [
+ {
+ "offset": 357,
+ "length": 18
+ }
+ ]
+ },
+ "ServiceEndDate": {
+ "type": "date",
+ "valueDate": "2019-11-14",
+ "content": "11/14/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2528,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 7.2528,
+ 2.3615
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 204,
+ "length": 10
+ }
+ ]
+ },
+ "ServiceStartDate": {
+ "type": "date",
+ "valueDate": "2019-10-14",
+ "content": "10/14/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.3357,
+ 2.2306,
+ 7.0749,
+ 2.2306,
+ 7.0749,
+ 2.3615,
+ 6.3357,
+ 2.3615
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 191,
+ "length": 10
+ }
+ ]
+ },
+ "ShippingAddress": {
+ "type": "string",
+ "valueString": "123 Ship St, Redmond WA, 98052",
+ "content": "123 Ship St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3454,
+ 3.9681,
+ 4.7594,
+ 3.9681,
+ 4.7594,
+ 4.3082,
+ 3.3454,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 389,
+ "length": 12
+ },
+ {
+ "offset": 436,
+ "length": 17
+ }
+ ]
+ },
+ "ShippingAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Delivery",
+ "content": "Microsoft Delivery",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 4.5762,
+ 3.7641,
+ 4.5762,
+ 3.9076,
+ 3.3454,
+ 3.9076
+ ]
+ }
+ ],
+ "confidence": 0.955,
+ "spans": [
+ {
+ "offset": 338,
+ "length": 18
+ }
+ ]
+ },
+ "SubTotal": {
+ "type": "number",
+ "valueNumber": 100,
+ "content": "$100.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ "TotalTax": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ "VendorAddress": {
+ "type": "string",
+ "valueString": "123 456th St New York, NY, 10001",
+ "content": "123 456th St New York, NY, 10001",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 1.6092,
+ 1.9894,
+ 1.6092,
+ 1.9894,
+ 1.9675,
+ 0.5943,
+ 1.9675
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 59,
+ "length": 12
+ },
+ {
+ "offset": 97,
+ "length": 19
+ }
+ ]
+ },
+ "VendorAddressRecipient": {
+ "type": "string",
+ "valueString": "Contoso Headquarters",
+ "content": "Contoso Headquarters",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5882,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 0.5882,
+ 1.5664
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 21,
+ "length": 20
+ }
+ ]
+ },
+ "VendorName": {
+ "type": "string",
+ "valueString": "CONTOSO LTD.",
+ "content": "CONTOSO LTD.",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 2.3181,
+ 0.6857,
+ 2.3181,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 0,
+ "length": 12
+ }
+ ]
+ }
+ },
+ "confidence": 1,
+ "spans": [
+ {
+ "offset": 0,
+ "length": 958
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Custom.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Custom.json
index e130cd0fd1c9..8350f83fabc6 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Custom.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Custom.json
@@ -1,41 +1,41 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "{customModelId}"
- },
- "responses": {
- "200": {
- "body": {
- "modelId": "{customModelId}",
- "description": "{customModelDescription}",
- "createdDateTime": "2021-09-24T12:54:35Z",
- "apiVersion": "{apiVersion}",
- "docTypes": {
- "{docType}": {
- "fieldSchema": {
- "Name": {
- "type": "string"
- },
- "Date": {
- "type": "date"
- },
- "Amount": {
- "type": "number"
- }
- },
- "buildMode": "template",
- "fieldConfidence": {
- "Name": 0.9,
- "Date": 0.95,
- "Amount": 0.93
- }
- }
- },
- "tags": {
- "createdBy": "{userId}"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "{customModelId}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelId": "{customModelId}",
+ "description": "{customModelDescription}",
+ "createdDateTime": "2021-09-24T12:54:35Z",
+ "apiVersion": "{apiVersion}",
+ "docTypes": {
+ "{docType}": {
+ "fieldSchema": {
+ "Name": {
+ "type": "string"
+ },
+ "Date": {
+ "type": "date"
+ },
+ "Amount": {
+ "type": "number"
+ }
+ },
+ "buildMode": "template",
+ "fieldConfidence": {
+ "Name": 0.9,
+ "Date": 0.95,
+ "Amount": 0.93
+ }
+ }
+ },
+ "tags": {
+ "createdBy": "{userId}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Prebuilt.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Prebuilt.json
index e38e01d17d95..07c306345099 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Prebuilt.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModel_Prebuilt.json
@@ -1,134 +1,134 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "modelId": "prebuilt-invoice"
- },
- "responses": {
- "200": {
- "body": {
- "modelId": "prebuilt-invoice",
- "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.",
- "createdDateTime": "2021-07-30T00:00:00Z",
- "apiVersion": "{apiVersion}",
- "docTypes": {
- "prebuilt:invoice": {
- "fieldSchema": {
- "CustomerName": {
- "type": "string"
- },
- "CustomerId": {
- "type": "string"
- },
- "PurchaseOrder": {
- "type": "string"
- },
- "InvoiceId": {
- "type": "string"
- },
- "InvoiceDate": {
- "type": "date"
- },
- "DueDate": {
- "type": "date"
- },
- "VendorName": {
- "type": "string"
- },
- "VendorAddress": {
- "type": "string"
- },
- "VendorAddressRecipient": {
- "type": "string"
- },
- "CustomerAddress": {
- "type": "string"
- },
- "CustomerAddressRecipient": {
- "type": "string"
- },
- "BillingAddress": {
- "type": "string"
- },
- "BillingAddressRecipient": {
- "type": "string"
- },
- "ShippingAddress": {
- "type": "string"
- },
- "ShippingAddressRecipient": {
- "type": "string"
- },
- "SubTotal": {
- "type": "number"
- },
- "TotalTax": {
- "type": "number"
- },
- "InvoiceTotal": {
- "type": "number"
- },
- "AmountDue": {
- "type": "number"
- },
- "PreviousUnpaidBalance": {
- "type": "number"
- },
- "RemittanceAddress": {
- "type": "string"
- },
- "RemittanceAddressRecipient": {
- "type": "string"
- },
- "ServiceAddress": {
- "type": "string"
- },
- "ServiceAddressRecipient": {
- "type": "string"
- },
- "ServiceStartDate": {
- "type": "date"
- },
- "ServiceEndDate": {
- "type": "date"
- },
- "Items": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "Amount": {
- "type": "number"
- },
- "Date": {
- "type": "date"
- },
- "Description": {
- "type": "string"
- },
- "Quantity": {
- "type": "number"
- },
- "ProductCode": {
- "type": "string"
- },
- "Tax": {
- "type": "number"
- },
- "Unit": {
- "type": "string"
- },
- "UnitPrice": {
- "type": "number"
- }
- }
- }
- }
- }
- }
- },
- "tags": {}
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "modelId": "prebuilt-invoice"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelId": "prebuilt-invoice",
+ "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.",
+ "createdDateTime": "2021-07-30T00:00:00Z",
+ "apiVersion": "{apiVersion}",
+ "docTypes": {
+ "prebuilt:invoice": {
+ "fieldSchema": {
+ "CustomerName": {
+ "type": "string"
+ },
+ "CustomerId": {
+ "type": "string"
+ },
+ "PurchaseOrder": {
+ "type": "string"
+ },
+ "InvoiceId": {
+ "type": "string"
+ },
+ "InvoiceDate": {
+ "type": "date"
+ },
+ "DueDate": {
+ "type": "date"
+ },
+ "VendorName": {
+ "type": "string"
+ },
+ "VendorAddress": {
+ "type": "string"
+ },
+ "VendorAddressRecipient": {
+ "type": "string"
+ },
+ "CustomerAddress": {
+ "type": "string"
+ },
+ "CustomerAddressRecipient": {
+ "type": "string"
+ },
+ "BillingAddress": {
+ "type": "string"
+ },
+ "BillingAddressRecipient": {
+ "type": "string"
+ },
+ "ShippingAddress": {
+ "type": "string"
+ },
+ "ShippingAddressRecipient": {
+ "type": "string"
+ },
+ "SubTotal": {
+ "type": "number"
+ },
+ "TotalTax": {
+ "type": "number"
+ },
+ "InvoiceTotal": {
+ "type": "number"
+ },
+ "AmountDue": {
+ "type": "number"
+ },
+ "PreviousUnpaidBalance": {
+ "type": "number"
+ },
+ "RemittanceAddress": {
+ "type": "string"
+ },
+ "RemittanceAddressRecipient": {
+ "type": "string"
+ },
+ "ServiceAddress": {
+ "type": "string"
+ },
+ "ServiceAddressRecipient": {
+ "type": "string"
+ },
+ "ServiceStartDate": {
+ "type": "date"
+ },
+ "ServiceEndDate": {
+ "type": "date"
+ },
+ "Items": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "Amount": {
+ "type": "number"
+ },
+ "Date": {
+ "type": "date"
+ },
+ "Description": {
+ "type": "string"
+ },
+ "Quantity": {
+ "type": "number"
+ },
+ "ProductCode": {
+ "type": "string"
+ },
+ "Tax": {
+ "type": "number"
+ },
+ "Unit": {
+ "type": "string"
+ },
+ "UnitPrice": {
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "tags": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModels.json
index 7b4a9548940a..f89f5668c685 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModels.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetDocumentModels.json
@@ -1,27 +1,27 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "modelId": "prebuilt-layout",
- "createdDateTime": "2021-07-30T00:00:00Z",
- "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.",
- "apiVersion": "{apiVersion}"
- },
- {
- "modelId": "myCustomModel",
- "createdDateTime": "2021-09-24T12:54:35Z",
- "description": "{modelDescription}",
- "apiVersion": "{apiVersion}"
- }
- ],
- "nextLink": "{nextLinkUrl}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "modelId": "prebuilt-layout",
+ "createdDateTime": "2021-07-30T00:00:00Z",
+ "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.",
+ "apiVersion": "{apiVersion}"
+ },
+ {
+ "modelId": "myCustomModel",
+ "createdDateTime": "2021-09-24T12:54:35Z",
+ "description": "{modelDescription}",
+ "apiVersion": "{apiVersion}"
+ }
+ ],
+ "nextLink": "{nextLinkUrl}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperation.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperation.json
index 5ae624b34b02..8f6cf4d66ee2 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperation.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperation.json
@@ -1,26 +1,26 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}",
- "operationId": "{operationId}"
- },
- "responses": {
- "200": {
- "body": {
- "operationId": "31533879936_426a3e4c-c6fb-4c83-937c-a92414c371a4",
- "status": "succeeded",
- "percentCompleted": 100,
- "createdDateTime": "2021-09-23T09:12:57Z",
- "lastUpdatedDateTime": "2021-09-23T09:13:01Z",
- "kind": "documentModelBuild",
- "resourceLocation": "{endpoint}/formrecognizer/documentModels/{modelId}",
- "result": {
- "modelId": "{customModelId}",
- "description": "{customModelDescription}",
- "createdDateTime": "2021-09-23T09:13:01Z",
- "apiVersion": "{apiVersion}"
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}",
+ "operationId": "{operationId}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "operationId": "31533879936_426a3e4c-c6fb-4c83-937c-a92414c371a4",
+ "status": "succeeded",
+ "percentCompleted": 100,
+ "createdDateTime": "2021-09-23T09:12:57Z",
+ "lastUpdatedDateTime": "2021-09-23T09:13:01Z",
+ "kind": "documentModelBuild",
+ "resourceLocation": "{endpoint}/formrecognizer/documentModels/{modelId}",
+ "result": {
+ "modelId": "{customModelId}",
+ "description": "{customModelDescription}",
+ "createdDateTime": "2021-09-23T09:13:01Z",
+ "apiVersion": "{apiVersion}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperations.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperations.json
index a8ae318390d4..1b84de8f8ae0 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperations.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetOperations.json
@@ -1,25 +1,25 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "operationId": "{operationId}",
- "status": "running",
- "percentCompleted": 0,
- "createdDateTime": "2021-09-23T09:12:57Z",
- "lastUpdatedDateTime": "2021-09-23T09:12:58Z",
- "kind": "documentModelBuild",
- "resourceLocation": "{endpoint}/formrecognizer/documentModels/{modelId}",
- "apiVersion": "{apiVersion}"
- }
- ],
- "nextLink": "{nextLinkUrl}"
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "operationId": "{operationId}",
+ "status": "running",
+ "percentCompleted": 0,
+ "createdDateTime": "2021-09-23T09:12:57Z",
+ "lastUpdatedDateTime": "2021-09-23T09:12:58Z",
+ "kind": "documentModelBuild",
+ "resourceLocation": "{endpoint}/formrecognizer/documentModels/{modelId}",
+ "apiVersion": "{apiVersion}"
+ }
+ ],
+ "nextLink": "{nextLinkUrl}"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetResourceDetails.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetResourceDetails.json
index eadbf9fba1ee..8134190378cf 100644
--- a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetResourceDetails.json
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2022-08-31/examples/GetResourceDetails.json
@@ -1,16 +1,16 @@
-{
- "parameters": {
- "endpoint": "{endpoint}",
- "api-version": "{apiVersion}"
- },
- "responses": {
- "200": {
- "body": {
- "customDocumentModels": {
- "count": 2,
- "limit": 13
- }
- }
- }
- }
-}
+{
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "{apiVersion}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "customDocumentModels": {
+ "count": 2,
+ "limit": 13
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/FormRecognizer.json
new file mode 100644
index 000000000000..45a749d761a0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/FormRecognizer.json
@@ -0,0 +1,3270 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Form Recognizer Client",
+ "description": "Extracts content, layout, and structured data from documents.",
+ "version": "2023-07-31"
+ },
+ "securityDefinitions": {
+ "apim_key": {
+ "type": "apiKey",
+ "name": "Ocp-Apim-Subscription-Key",
+ "in": "header",
+ "description": "The secret key for your Azure Cognitive Services subscription."
+ }
+ },
+ "security": [
+ {
+ "apim_key": []
+ }
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "{endpoint}/formrecognizer",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "$ref": "#/parameters/Endpoint"
+ }
+ ]
+ },
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/documentModels/{modelId}:analyze": {
+ "post": {
+ "description": "Analyzes document with document model.",
+ "operationId": "DocumentModels_AnalyzeDocument",
+ "tags": [
+ "Analysis"
+ ],
+ "consumes": [
+ "application/json",
+ "application/octet-stream",
+ "application/pdf",
+ "image/jpeg",
+ "image/png",
+ "image/tiff",
+ "image/bmp",
+ "image/heif",
+ "text/html",
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryPages"
+ },
+ {
+ "$ref": "#/parameters/QueryLocale"
+ },
+ {
+ "$ref": "#/parameters/QueryStringIndexType"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "analyzeRequest",
+ "description": "Analyze request parameters.",
+ "required": false,
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/AnalyzeDocumentRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/QueryFeatures"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "URL used to track the progress and obtain the result of the analyze operation.",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Analyze Document from Url": {
+ "$ref": "./examples/AnalyzeDocument_Url.json"
+ },
+ "Analyze Document from Base64": {
+ "$ref": "./examples/AnalyzeDocument_Base64.json"
+ }
+ }
+ }
+ },
+ "/documentModels/{modelId}/analyzeResults/{resultId}": {
+ "get": {
+ "description": "Gets the result of document analysis.",
+ "operationId": "DocumentModels_GetAnalyzeResult",
+ "tags": [
+ "Analysis"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/PathResultId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/AnalyzeResultOperation"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Analyze Document Result": {
+ "$ref": "./examples/GetAnalyzeDocumentResult.json"
+ }
+ }
+ }
+ },
+ "/documentModels:build": {
+ "post": {
+ "description": "Builds a custom document analysis model.",
+ "operationId": "DocumentModels_BuildModel",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "buildRequest",
+ "description": "Building request parameters.",
+ "required": true,
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BuildDocumentModelRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL.",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Build Document Model": {
+ "$ref": "./examples/BuildDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentModels:compose": {
+ "post": {
+ "description": "Creates a new document model from document types of existing document models.",
+ "operationId": "DocumentModels_ComposeModel",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "composeRequest",
+ "description": "Compose request parameters.",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ComposeDocumentModelRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL.",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Compose Document Model": {
+ "$ref": "./examples/ComposeDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentModels:authorizeCopy": {
+ "post": {
+ "description": "Generates authorization to copy a document model to this location with specified modelId and optional description.",
+ "operationId": "DocumentModels_AuthorizeModelCopy",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "authorizeCopyRequest",
+ "description": "Authorize copy request parameters.",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AuthorizeCopyRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/CopyAuthorization"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Authorize Copy of Document Model": {
+ "$ref": "./examples/AuthorizeCopyDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentModels/{modelId}:copyTo": {
+ "post": {
+ "description": "Copies document model to the target resource, region, and modelId.",
+ "operationId": "DocumentModels_CopyModelTo",
+ "tags": [
+ "Creation"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "copyToRequest",
+ "description": "Copy to request parameters.",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CopyAuthorization"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL.",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Copy Document Model To": {
+ "$ref": "./examples/CopyDocumentModelTo.json"
+ }
+ }
+ }
+ },
+ "/operations": {
+ "get": {
+ "description": "Lists all operations.",
+ "operationId": "Miscellaneous_ListOperations",
+ "tags": [
+ "Operation"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GetOperationsResponse"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "Get Operations": {
+ "$ref": "./examples/GetOperations.json"
+ }
+ }
+ }
+ },
+ "/operations/{operationId}": {
+ "get": {
+ "description": "Gets operation info.",
+ "operationId": "Miscellaneous_GetOperation",
+ "tags": [
+ "Operation"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathOperationId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Operation": {
+ "$ref": "./examples/GetOperation.json"
+ }
+ }
+ }
+ },
+ "/documentModels": {
+ "get": {
+ "description": "List all document models",
+ "operationId": "DocumentModels_ListModels",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GetDocumentModelsResponse"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "Get Document Models": {
+ "$ref": "./examples/GetDocumentModels.json"
+ }
+ }
+ }
+ },
+ "/documentModels/{modelId}": {
+ "get": {
+ "description": "Gets detailed document model information.",
+ "operationId": "DocumentModels_GetModel",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Prebuilt Document Model": {
+ "$ref": "./examples/GetDocumentModel_Prebuilt.json"
+ },
+ "Get Custom Document Model": {
+ "$ref": "./examples/GetDocumentModel_Custom.json"
+ }
+ }
+ },
+ "delete": {
+ "description": "Deletes document model.",
+ "operationId": "DocumentModels_DeleteModel",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentModelId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Deleting document model."
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Document Model": {
+ "$ref": "./examples/DeleteDocumentModel.json"
+ }
+ }
+ }
+ },
+ "/documentClassifiers:build": {
+ "post": {
+ "description": "Builds a custom document classifier.",
+ "operationId": "DocumentClassifiers_BuildClassifier",
+ "tags": [
+ "Classifier"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "buildRequest",
+ "description": "Building request parameters.",
+ "required": true,
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BuildDocumentClassifierRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "Operation result URL.",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Build Document Classifier": {
+ "$ref": "./examples/BuildDocumentClassifier.json"
+ }
+ }
+ }
+ },
+ "/documentClassifiers": {
+ "get": {
+ "description": "List all document classifiers.",
+ "operationId": "DocumentClassifiers_ListClassifiers",
+ "tags": [
+ "Classifier"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GetDocumentClassifiersResponse"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "Get Document Classifiers": {
+ "$ref": "./examples/GetDocumentClassifiers.json"
+ }
+ }
+ }
+ },
+ "/documentClassifiers/{classifierId}": {
+ "get": {
+ "description": "Gets detailed document classifier information.",
+ "operationId": "DocumentClassifiers_GetClassifier",
+ "tags": [
+ "Classifier"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentClassifierId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/DocumentClassifierDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Document Classifier": {
+ "$ref": "./examples/GetDocumentClassifier.json"
+ }
+ }
+ },
+ "delete": {
+ "description": "Deletes document classifier.",
+ "operationId": "DocumentClassifiers_DeleteClassifier",
+ "tags": [
+ "Classifier"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentClassifierId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Deleting document classifier."
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Document Classifier": {
+ "$ref": "./examples/DeleteDocumentClassifier.json"
+ }
+ }
+ }
+ },
+ "/documentClassifiers/{classifierId}:analyze": {
+ "post": {
+ "description": "Classifies document with document classifier.",
+ "operationId": "DocumentClassifiers_ClassifyDocument",
+ "tags": [
+ "Classifier"
+ ],
+ "consumes": [
+ "application/json",
+ "application/octet-stream",
+ "application/pdf",
+ "image/jpeg",
+ "image/png",
+ "image/tiff",
+ "image/bmp",
+ "image/heif",
+ "text/html",
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentClassifierId"
+ },
+ {
+ "$ref": "#/parameters/QueryStringIndexType"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ },
+ {
+ "name": "classifyRequest",
+ "description": "Classify request parameters.",
+ "required": false,
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ClassifyDocumentRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request is queued successfully.",
+ "headers": {
+ "Operation-Location": {
+ "type": "string",
+ "description": "URL used to track the progress and obtain the result of the classification operation.",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Classify Document from Url": {
+ "$ref": "./examples/ClassifyDocument_Url.json"
+ }
+ }
+ }
+ },
+ "/documentClassifiers/{classifierId}/analyzeResults/{resultId}": {
+ "get": {
+ "description": "Gets the result of document classifier.",
+ "operationId": "DocumentClassifiers_GetClassifyResult",
+ "tags": [
+ "Classifier"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/PathDocumentClassifierId"
+ },
+ {
+ "$ref": "#/parameters/PathResultId"
+ },
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/AnalyzeResultOperation"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Classify Document Result": {
+ "$ref": "./examples/GetClassifyDocumentResult.json"
+ }
+ }
+ }
+ },
+ "/info": {
+ "get": {
+ "description": "Return information about the current resource.",
+ "operationId": "Miscellaneous_GetResourceInfo",
+ "tags": [
+ "Management"
+ ],
+ "consumes": [],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/QueryApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/ResourceDetails"
+ }
+ },
+ "default": {
+ "description": "Error encountered.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Resource Details": {
+ "$ref": "./examples/GetResourceDetails.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AnalyzeDocumentRequest": {
+ "description": "Document analysis parameters.",
+ "type": "object",
+ "properties": {
+ "urlSource": {
+ "description": "Document URL to analyze. Either urlSource or base64Source must be specified.",
+ "$ref": "#/definitions/UrlContentSource"
+ },
+ "base64Source": {
+ "description": "Base64 encoding of the document to analyze. Either urlSource or base64Source must be specified.",
+ "$ref": "#/definitions/Base64ContentSource"
+ }
+ }
+ },
+ "BuildDocumentModelRequest": {
+ "description": "Request body to build a new custom document model.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "buildMode"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "buildMode": {
+ "$ref": "#/definitions/DocumentBuildMode"
+ },
+ "azureBlobSource": {
+ "description": "Azure Blob Storage location containing the training data. Either azureBlobSource or azureBlobFileListSource must be specified.",
+ "$ref": "#/definitions/AzureBlobContentSource"
+ },
+ "azureBlobFileListSource": {
+ "description": "Azure Blob Storage file list specifying the training data. Either azureBlobSource or azureBlobFileListSource must be specified.",
+ "$ref": "#/definitions/AzureBlobFileListContentSource"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ComposeDocumentModelRequest": {
+ "description": "Request body to create a composed document model from component document models.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "componentModels"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "componentModels": {
+ "description": "List of component document models to compose.",
+ "type": "array",
+ "uniqueItems": true,
+ "items": {
+ "$ref": "#/definitions/ComponentDocumentModelDetails"
+ }
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ComponentDocumentModelDetails": {
+ "description": "A component of a composed document model.",
+ "type": "object",
+ "required": [
+ "modelId"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ }
+ }
+ },
+ "AuthorizeCopyRequest": {
+ "description": "Request body to authorize document model copy.",
+ "type": "object",
+ "required": [
+ "modelId"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "GetOperationsResponse": {
+ "description": "List Operations response object.",
+ "type": "object",
+ "required": [
+ "value"
+ ],
+ "properties": {
+ "value": {
+ "description": "List of operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationSummary"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next page of operations.",
+ "type": "string",
+ "format": "url"
+ }
+ }
+ },
+ "OperationDetails": {
+ "description": "Get Operation response object.",
+ "type": "object",
+ "discriminator": "kind",
+ "required": [
+ "operationId",
+ "status",
+ "createdDateTime",
+ "lastUpdatedDateTime",
+ "kind",
+ "resourceLocation"
+ ],
+ "properties": {
+ "operationId": {
+ "description": "Operation ID",
+ "type": "string"
+ },
+ "status": {
+ "$ref": "#/definitions/OperationStatus"
+ },
+ "percentCompleted": {
+ "description": "Operation progress (0-100).",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the operation was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedDateTime": {
+ "description": "Date and time (UTC) when the status was last updated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "kind": {
+ "description": "Type of operation.",
+ "type": "string"
+ },
+ "resourceLocation": {
+ "description": "URL of the resource targeted by this operation.",
+ "type": "string",
+ "format": "url"
+ },
+ "apiVersion": {
+ "description": "API version used to create this operation.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "description": "Encountered error.",
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "DocumentModelBuildOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentModelBuild",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ }
+ },
+ "DocumentModelComposeOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentModelCompose",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ }
+ },
+ "DocumentModelCopyToOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentModelCopyTo",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentModelDetails"
+ }
+ }
+ },
+ "GetDocumentModelsResponse": {
+ "description": "List document models response object.",
+ "type": "object",
+ "required": [
+ "value"
+ ],
+ "properties": {
+ "value": {
+ "description": "List of document models.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentModelSummary"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next page of document models.",
+ "type": "string",
+ "format": "url"
+ }
+ }
+ },
+ "DocumentClassifierBuildOperationDetails": {
+ "description": "Get Operation response object.",
+ "x-ms-discriminator-value": "documentClassifierBuild",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/OperationDetails"
+ }
+ ],
+ "properties": {
+ "result": {
+ "description": "Operation result upon success.",
+ "$ref": "#/definitions/DocumentClassifierDetails"
+ }
+ }
+ },
+ "BuildDocumentClassifierRequest": {
+ "description": "Request body to build a new custom document classifier.",
+ "type": "object",
+ "required": [
+ "classifierId",
+ "docTypes"
+ ],
+ "properties": {
+ "classifierId": {
+ "$ref": "#/definitions/DocumentClassifierId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentClassifierDescription"
+ },
+ "docTypes": {
+ "description": "List of document types to classify against.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/ClassifierDocumentTypeDetails"
+ }
+ }
+ }
+ },
+ "GetDocumentClassifiersResponse": {
+ "description": "List document classifiers response object.",
+ "type": "object",
+ "required": [
+ "value"
+ ],
+ "properties": {
+ "value": {
+ "description": "List of document classifiers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentClassifierDetails"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next page of document classifiers.",
+ "type": "string",
+ "format": "url"
+ }
+ }
+ },
+ "ClassifyDocumentRequest": {
+ "description": "Document classification parameters.",
+ "type": "object",
+ "properties": {
+ "urlSource": {
+ "description": "Document URL to classify. Either urlSource or base64Source must be specified.",
+ "$ref": "#/definitions/UrlContentSource"
+ },
+ "base64Source": {
+ "description": "Base64 encoding of the document to classify. Either urlSource or base64Source must be specified.",
+ "$ref": "#/definitions/Base64ContentSource"
+ }
+ }
+ },
+ "DocumentClassifierDetails": {
+ "description": "Document classifier info.",
+ "type": "object",
+ "required": [
+ "classifierId",
+ "createdDateTime",
+ "apiVersion",
+ "docTypes"
+ ],
+ "properties": {
+ "classifierId": {
+ "$ref": "#/definitions/DocumentClassifierId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentClassifierDescription"
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the document classifier was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "expirationDateTime": {
+ "description": "Date and time (UTC) when the document classifier will expire.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "apiVersion": {
+ "description": "API version used to create this document classifier.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "docTypes": {
+ "description": "List of document types to classify against.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/ClassifierDocumentTypeDetails"
+ }
+ }
+ }
+ },
+ "ClassifierDocumentTypeDetails": {
+ "description": "Classifier document type info.",
+ "type": "object",
+ "properties": {
+ "azureBlobSource": {
+ "description": "Azure Blob Storage location containing the training data for a classifier document type. Either azureBlobSource or azureBlobFileListSource must be specified.",
+ "$ref": "#/definitions/AzureBlobContentSource"
+ },
+ "azureBlobFileListSource": {
+ "description": "Azure Blob Storage file list specifying the training data for a classifier document type. Either azureBlobSource or azureBlobFileListSource must be specified.",
+ "$ref": "#/definitions/AzureBlobFileListContentSource"
+ }
+ }
+ },
+ "ResourceDetails": {
+ "description": "General information regarding the current resource.",
+ "type": "object",
+ "required": [
+ "customDocumentModels",
+ "customNeuralDocumentModelBuilds"
+ ],
+ "properties": {
+ "customDocumentModels": {
+ "$ref": "#/definitions/CustomDocumentModelsDetails"
+ },
+ "customNeuralDocumentModelBuilds": {
+ "$ref": "#/definitions/QuotaDetails"
+ }
+ }
+ },
+ "CustomDocumentModelsDetails": {
+ "description": "Details regarding custom document models.",
+ "type": "object",
+ "required": [
+ "count",
+ "limit"
+ ],
+ "properties": {
+ "count": {
+ "description": "Number of custom document models in the current resource.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "limit": {
+ "description": "Maximum number of custom document models supported in the current resource.",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "QuotaDetails": {
+ "description": "Quota used, limit, and next reset date/time.",
+ "type": "object",
+ "required": [
+ "used",
+ "quota",
+ "quotaResetDateTime"
+ ],
+ "properties": {
+ "used": {
+ "description": "Amount of the resource quota used.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "quota": {
+ "description": "Resource quota limit.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "quotaResetDateTime": {
+ "description": "Date/time when the resource quota usage will be reset.",
+ "type": "string",
+ "format": "date-time"
+ }
+ }
+ },
+ "ApiVersion": {
+ "description": "API version.",
+ "type": "string"
+ },
+ "ErrorResponse": {
+ "description": "Error response object.",
+ "type": "object",
+ "required": [
+ "error"
+ ],
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "Error": {
+ "description": "Error info.",
+ "type": "object",
+ "required": [
+ "code",
+ "message"
+ ],
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "Target of the error.",
+ "type": "string"
+ },
+ "details": {
+ "description": "List of detailed errors.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "InnerError": {
+ "description": "Detailed error.",
+ "type": "object",
+ "required": [
+ "code"
+ ],
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Error message.",
+ "type": "string"
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "UrlContentSource": {
+ "description": "Content at specified URL.",
+ "type": "string",
+ "format": "url"
+ },
+ "Base64ContentSource": {
+ "description": "Content represented via Base64 encoding.",
+ "type": "string",
+ "format": "byte"
+ },
+ "AzureBlobContentSource": {
+ "description": "Azure Blob Storage content.",
+ "type": "object",
+ "required": [
+ "containerUrl"
+ ],
+ "properties": {
+ "containerUrl": {
+ "description": "Azure Blob Storage container URL.",
+ "type": "string",
+ "format": "url"
+ },
+ "prefix": {
+ "description": "Blob name prefix.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureBlobFileListContentSource": {
+ "description": "File list in Azure Blob Storage.",
+ "type": "object",
+ "required": [
+ "containerUrl",
+ "fileList"
+ ],
+ "properties": {
+ "containerUrl": {
+ "description": "Azure Blob Storage container URL.",
+ "type": "string",
+ "format": "url"
+ },
+ "fileList": {
+ "description": "Path to a JSONL file within the container specifying a subset of documents for training.",
+ "type": "string"
+ }
+ }
+ },
+ "CopyAuthorization": {
+ "description": "Authorization to copy a document model to the specified target resource and modelId.",
+ "type": "object",
+ "required": [
+ "targetResourceId",
+ "targetResourceRegion",
+ "targetModelId",
+ "targetModelLocation",
+ "accessToken",
+ "expirationDateTime"
+ ],
+ "properties": {
+ "targetResourceId": {
+ "description": "ID of the target Azure resource where the document model should be copied to.",
+ "type": "string",
+ "x-ms-azure-resource": true
+ },
+ "targetResourceRegion": {
+ "description": "Location of the target Azure resource where the document model should be copied to.",
+ "type": "string"
+ },
+ "targetModelId": {
+ "description": "Identifier of the target document model.",
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "targetModelLocation": {
+ "description": "URL of the copied document model in the target account.",
+ "type": "string",
+ "format": "url"
+ },
+ "accessToken": {
+ "description": "Token used to authorize the request.",
+ "type": "string"
+ },
+ "expirationDateTime": {
+ "description": "Date/time when the access token expires.",
+ "type": "string",
+ "format": "date-time"
+ }
+ }
+ },
+ "OperationStatus": {
+ "description": "Operation status.",
+ "type": "string",
+ "enum": [
+ "notStarted",
+ "running",
+ "failed",
+ "succeeded",
+ "canceled"
+ ],
+ "x-ms-enum": {
+ "name": "OperationStatus",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "notStarted",
+ "description": "The operation has not started yet."
+ },
+ {
+ "value": "running",
+ "description": "The operation is in progress."
+ },
+ {
+ "value": "failed",
+ "description": "The operation has failed."
+ },
+ {
+ "value": "succeeded",
+ "description": "The operation has succeeded."
+ },
+ {
+ "value": "canceled",
+ "description": "The operation has been canceled."
+ }
+ ]
+ }
+ },
+ "OperationSummary": {
+ "description": "Operation info.",
+ "type": "object",
+ "required": [
+ "operationId",
+ "status",
+ "createdDateTime",
+ "lastUpdatedDateTime",
+ "kind",
+ "resourceLocation"
+ ],
+ "properties": {
+ "operationId": {
+ "description": "Operation ID",
+ "type": "string"
+ },
+ "status": {
+ "$ref": "#/definitions/OperationStatus"
+ },
+ "percentCompleted": {
+ "description": "Operation progress (0-100).",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the operation was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedDateTime": {
+ "description": "Date and time (UTC) when the status was last updated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "kind": {
+ "description": "Type of operation.",
+ "type": "string",
+ "enum": [
+ "documentModelBuild",
+ "documentModelCompose",
+ "documentModelCopyTo",
+ "documentClassifierBuild"
+ ],
+ "x-ms-enum": {
+ "name": "OperationKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "documentModelBuild",
+ "description": "Build a new custom document model."
+ },
+ {
+ "value": "documentModelCompose",
+ "description": "Compose a new custom document model from existing models."
+ },
+ {
+ "value": "documentModelCopyTo",
+ "description": "Copy an existing document model to potentially a different resource, region, or subscription."
+ },
+ {
+ "value": "documentClassifierBuild",
+ "description": "Build a new custom classifier model."
+ }
+ ]
+ }
+ },
+ "resourceLocation": {
+ "description": "URL of the resource targeted by this operation.",
+ "type": "string",
+ "format": "url"
+ },
+ "apiVersion": {
+ "description": "API version used to create this operation.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "DocumentModelSummary": {
+ "description": "Document model summary.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "createdDateTime"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the document model was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "expirationDateTime": {
+ "description": "Date and time (UTC) when the document model will expire.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "apiVersion": {
+ "description": "API version used to create this document model.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "DocumentModelDetails": {
+ "description": "Document model info.",
+ "type": "object",
+ "required": [
+ "modelId",
+ "createdDateTime"
+ ],
+ "properties": {
+ "modelId": {
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the document model was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "expirationDateTime": {
+ "description": "Date and time (UTC) when the document model will expire.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "apiVersion": {
+ "description": "API version used to create this document model.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "tags": {
+ "description": "List of key-value tag attributes associated with the document model.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "docTypes": {
+ "description": "Supported document types.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentTypeDetails"
+ }
+ }
+ }
+ },
+ "DocumentTypeDetails": {
+ "description": "Document type info.",
+ "type": "object",
+ "required": [
+ "fieldSchema"
+ ],
+ "properties": {
+ "description": {
+ "$ref": "#/definitions/DocumentModelDescription"
+ },
+ "buildMode": {
+ "$ref": "#/definitions/DocumentBuildMode"
+ },
+ "fieldSchema": {
+ "$ref": "#/definitions/DocTypeSchema"
+ },
+ "fieldConfidence": {
+ "description": "Estimated confidence for each field.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1
+ }
+ }
+ }
+ },
+ "DocTypeSchema": {
+ "description": "Description of the document semantic schema using a JSON Schema style syntax.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentFieldSchema"
+ }
+ },
+ "DocumentFieldSchema": {
+ "description": "Description of the field semantic schema using a JSON Schema style syntax.",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/DocumentFieldType"
+ },
+ "description": {
+ "description": "Field description.",
+ "type": "string"
+ },
+ "example": {
+ "description": "Example field content.",
+ "type": "string"
+ },
+ "items": {
+ "description": "Field type schema of each array element.",
+ "$ref": "#/definitions/DocumentFieldSchema"
+ },
+ "properties": {
+ "description": "Named sub-fields of the object field.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentFieldSchema"
+ }
+ }
+ }
+ },
+ "AnalyzeResultOperation": {
+ "description": "Status and result of the analyze operation.",
+ "type": "object",
+ "required": [
+ "status",
+ "createdDateTime",
+ "lastUpdatedDateTime"
+ ],
+ "properties": {
+ "status": {
+ "description": "Operation status.",
+ "type": "string",
+ "enum": [
+ "notStarted",
+ "running",
+ "failed",
+ "succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "AnalyzeResultOperationStatus",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "notStarted",
+ "description": "The operation has not started yet."
+ },
+ {
+ "value": "running",
+ "description": "The operation is in progress."
+ },
+ {
+ "value": "failed",
+ "description": "The operation has failed."
+ },
+ {
+ "value": "succeeded",
+ "description": "The operation has succeeded."
+ }
+ ]
+ }
+ },
+ "createdDateTime": {
+ "description": "Date and time (UTC) when the analyze operation was submitted.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedDateTime": {
+ "description": "Date and time (UTC) when the status was last updated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "error": {
+ "description": "Encountered error during document analysis.",
+ "$ref": "#/definitions/Error"
+ },
+ "analyzeResult": {
+ "$ref": "#/definitions/AnalyzeResult"
+ }
+ }
+ },
+ "AnalyzeResult": {
+ "description": "Document analysis result.",
+ "type": "object",
+ "required": [
+ "apiVersion",
+ "modelId",
+ "stringIndexType",
+ "content",
+ "pages"
+ ],
+ "properties": {
+ "apiVersion": {
+ "description": "API version used to produce this result.",
+ "$ref": "#/definitions/ApiVersion"
+ },
+ "modelId": {
+ "description": "Document model ID used to produce this result.",
+ "$ref": "#/definitions/DocumentModelId"
+ },
+ "stringIndexType": {
+ "description": "Method used to compute string offset and length.",
+ "$ref": "#/definitions/StringIndexType"
+ },
+ "content": {
+ "description": "Concatenate string representation of all textual and visual elements in reading order.",
+ "type": "string"
+ },
+ "pages": {
+ "description": "Analyzed pages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentPage"
+ }
+ },
+ "paragraphs": {
+ "description": "Extracted paragraphs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentParagraph"
+ }
+ },
+ "tables": {
+ "description": "Extracted tables.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentTable"
+ }
+ },
+ "keyValuePairs": {
+ "description": "Extracted key-value pairs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentKeyValuePair"
+ }
+ },
+ "styles": {
+ "description": "Extracted font styles.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentStyle"
+ }
+ },
+ "languages": {
+ "description": "Detected languages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentLanguage"
+ }
+ },
+ "documents": {
+ "description": "Extracted documents.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Document"
+ }
+ }
+ }
+ },
+ "DocumentPage": {
+ "description": "Content and layout elements extracted from a page from the input.",
+ "type": "object",
+ "required": [
+ "pageNumber",
+ "spans"
+ ],
+ "properties": {
+ "pageNumber": {
+ "description": "1-based page number in the input document.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "angle": {
+ "description": "The general orientation of the content in clockwise direction, measured in degrees between (-180, 180].",
+ "type": "number",
+ "minimum": -180,
+ "maximum": 180,
+ "exclusiveMinimum": true
+ },
+ "width": {
+ "description": "The width of the image/PDF in pixels/inches, respectively.",
+ "type": "number",
+ "minimum": 0
+ },
+ "height": {
+ "description": "The height of the image/PDF in pixels/inches, respectively.",
+ "type": "number",
+ "minimum": 0
+ },
+ "unit": {
+ "description": "The unit used by the width, height, and polygon properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".",
+ "type": "string",
+ "enum": [
+ "pixel",
+ "inch"
+ ],
+ "x-ms-enum": {
+ "name": "LengthUnit",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "pixel",
+ "description": "Length unit for image files."
+ },
+ {
+ "value": "inch",
+ "description": "Length unit for PDF files."
+ }
+ ]
+ }
+ },
+ "spans": {
+ "description": "Location of the page in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "words": {
+ "description": "Extracted words from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentWord"
+ }
+ },
+ "selectionMarks": {
+ "description": "Extracted selection marks from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSelectionMark"
+ }
+ },
+ "lines": {
+ "description": "Extracted lines from the page, potentially containing both textual and visual elements.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentLine"
+ }
+ },
+ "barcodes": {
+ "description": "Extracted barcodes from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentBarcode"
+ }
+ },
+ "formulas": {
+ "description": "Extracted formulas from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentFormula"
+ }
+ }
+ }
+ },
+ "DocumentWord": {
+ "description": "A word object consisting of a contiguous sequence of characters. For non-space delimited languages, such as Chinese, Japanese, and Korean, each character is represented as its own word.",
+ "type": "object",
+ "required": [
+ "content",
+ "span",
+ "confidence"
+ ],
+ "properties": {
+ "content": {
+ "description": "Text content of the word.",
+ "type": "string"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the word.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "span": {
+ "description": "Location of the word in the reading order concatenated content.",
+ "$ref": "#/definitions/DocumentSpan"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the word.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentSelectionMark": {
+ "description": "A selection mark object representing check boxes, radio buttons, and other elements indicating a selection.",
+ "type": "object",
+ "required": [
+ "state",
+ "span",
+ "confidence"
+ ],
+ "properties": {
+ "state": {
+ "description": "State of the selection mark.",
+ "$ref": "#/definitions/DocumentSelectionMarkState"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the selection mark.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "span": {
+ "description": "Location of the selection mark in the reading order concatenated content.",
+ "$ref": "#/definitions/DocumentSpan"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the selection mark.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentSelectionMarkState": {
+ "description": "State of the selection mark.",
+ "type": "string",
+ "enum": [
+ "selected",
+ "unselected"
+ ],
+ "x-ms-enum": {
+ "name": "SelectionMarkState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "selected",
+ "description": "The selection mark is selected, often indicated by a check ✓ or cross X inside the selection mark."
+ },
+ {
+ "value": "unselected",
+ "description": "The selection mark is not selected."
+ }
+ ]
+ }
+ },
+ "DocumentLine": {
+ "description": "A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.",
+ "type": "object",
+ "required": [
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "content": {
+ "description": "Concatenated content of the contained elements in reading order.",
+ "type": "string"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the line.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "spans": {
+ "description": "Location of the line in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentBarcode": {
+ "description": "A barcode object.",
+ "type": "object",
+ "required": [
+ "kind",
+ "value",
+ "span",
+ "confidence"
+ ],
+ "properties": {
+ "kind": {
+ "description": "Barcode kind.",
+ "type": "string",
+ "enum": [
+ "QRCode",
+ "PDF417",
+ "UPCA",
+ "UPCE",
+ "Code39",
+ "Code128",
+ "EAN8",
+ "EAN13",
+ "DataBar",
+ "Code93",
+ "Codabar",
+ "DataBarExpanded",
+ "ITF",
+ "MicroQRCode",
+ "Aztec",
+ "DataMatrix",
+ "MaxiCode"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentBarcodeKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "QRCode",
+ "description": "QR code, as defined in ISO/IEC 18004:2015."
+ },
+ {
+ "value": "PDF417",
+ "description": "PDF417, as defined in ISO 15438."
+ },
+ {
+ "value": "UPCA",
+ "description": "GS1 12-digit Universal Product Code."
+ },
+ {
+ "value": "UPCE",
+ "description": "GS1 6-digit Universal Product Code."
+ },
+ {
+ "value": "Code39",
+ "description": "Code 39 barcode, as defined in ISO/IEC 16388:2007."
+ },
+ {
+ "value": "Code128",
+ "description": "Code 128 barcode, as defined in ISO/IEC 15417:2007."
+ },
+ {
+ "value": "EAN8",
+ "description": "GS1 8-digit International Article Number (European Article Number)."
+ },
+ {
+ "value": "EAN13",
+ "description": "GS1 13-digit International Article Number (European Article Number)."
+ },
+ {
+ "value": "DataBar",
+ "description": "GS1 DataBar barcode."
+ },
+ {
+ "value": "Code93",
+ "description": "Code 93 barcode, as defined in ANSI/AIM BC5-1995."
+ },
+ {
+ "value": "Codabar",
+ "description": "Codabar barcode, as defined in ANSI/AIM BC3-1995."
+ },
+ {
+ "value": "DataBarExpanded",
+ "description": "GS1 DataBar Expanded barcode."
+ },
+ {
+ "value": "ITF",
+ "description": "Interleaved 2 of 5 barcode, as defined in ANSI/AIM BC2-1995."
+ },
+ {
+ "value": "MicroQRCode",
+ "description": "Micro QR code, as defined in ISO/IEC 23941:2022."
+ },
+ {
+ "value": "Aztec",
+ "description": "Aztec code, as defined in ISO/IEC 24778:2008."
+ },
+ {
+ "value": "DataMatrix",
+ "description": "Data matrix code, as defined in ISO/IEC 16022:2006."
+ },
+ {
+ "value": "MaxiCode",
+ "description": "MaxiCode, as defined in ISO/IEC 16023:2000."
+ }
+ ]
+ }
+ },
+ "value": {
+ "description": "Barcode value",
+ "type": "string"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the barcode.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "span": {
+ "description": "Location of the barcode in the reading order concatenated content.",
+ "$ref": "#/definitions/DocumentSpan"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the barcode.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentFormula": {
+ "description": "A formula object.",
+ "type": "object",
+ "required": [
+ "kind",
+ "value",
+ "span",
+ "confidence"
+ ],
+ "properties": {
+ "kind": {
+ "description": "Formula kind.",
+ "type": "string",
+ "enum": [
+ "inline",
+ "display"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentFormulaKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "inline",
+ "description": "A formula embedded within the content of a paragraph."
+ },
+ {
+ "value": "display",
+ "description": "A formula in display mode that takes up an entire line."
+ }
+ ]
+ }
+ },
+ "value": {
+ "description": "LaTex expression describing the formula.",
+ "type": "string"
+ },
+ "polygon": {
+ "description": "Bounding polygon of the formula.",
+ "$ref": "#/definitions/BoundingPolygon"
+ },
+ "span": {
+ "description": "Location of the formula in the reading order concatenated content.",
+ "$ref": "#/definitions/DocumentSpan"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the formula.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentParagraph": {
+ "description": "A paragraph object consisting with contiguous lines generally with common alignment and spacing.",
+ "type": "object",
+ "required": [
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "role": {
+ "description": "Semantic role of the paragraph.",
+ "type": "string",
+ "enum": [
+ "pageHeader",
+ "pageFooter",
+ "pageNumber",
+ "title",
+ "sectionHeading",
+ "footnote",
+ "formulaBlock"
+ ],
+ "x-ms-enum": {
+ "name": "ParagraphRole",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "pageHeader",
+ "description": "Text near the top edge of the page."
+ },
+ {
+ "value": "pageFooter",
+ "description": "Text near the bottom edge of the page."
+ },
+ {
+ "value": "pageNumber",
+ "description": "Page number."
+ },
+ {
+ "value": "title",
+ "description": "Top-level title describing the entire document."
+ },
+ {
+ "value": "sectionHeading",
+ "description": "Sub heading describing a section of the document."
+ },
+ {
+ "value": "footnote",
+ "description": "A note usually placed after the main content on a page."
+ },
+ {
+ "value": "formulaBlock",
+ "description": "A block of formulas, often with shared alignment."
+ }
+ ]
+ }
+ },
+ "content": {
+ "description": "Concatenated content of the paragraph in reading order.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the paragraph.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the paragraph in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentTable": {
+ "description": "A table object consisting table cells arranged in a rectangular layout.",
+ "type": "object",
+ "required": [
+ "rowCount",
+ "columnCount",
+ "cells",
+ "spans"
+ ],
+ "properties": {
+ "rowCount": {
+ "description": "Number of rows in the table.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "columnCount": {
+ "description": "Number of columns in the table.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "cells": {
+ "description": "Cells contained within the table.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentTableCell"
+ }
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the table.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the table in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentTableCell": {
+ "description": "An object representing the location and content of a table cell.",
+ "type": "object",
+ "required": [
+ "rowIndex",
+ "columnIndex",
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "kind": {
+ "description": "Table cell kind.",
+ "type": "string",
+ "enum": [
+ "content",
+ "rowHeader",
+ "columnHeader",
+ "stubHead",
+ "description"
+ ],
+ "default": "content",
+ "x-ms-enum": {
+ "name": "DocumentTableCellKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "content",
+ "description": "Contains the main content/data."
+ },
+ {
+ "value": "rowHeader",
+ "description": "Describes the content of the row."
+ },
+ {
+ "value": "columnHeader",
+ "description": "Describes the content of the column."
+ },
+ {
+ "value": "stubHead",
+ "description": "Describes the row headers, usually located at the top left corner of a table."
+ },
+ {
+ "value": "description",
+ "description": "Describes the content in (parts of) the table."
+ }
+ ]
+ }
+ },
+ "rowIndex": {
+ "description": "Row index of the cell.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "columnIndex": {
+ "description": "Column index of the cell.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "rowSpan": {
+ "description": "Number of rows spanned by this cell.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "default": 1
+ },
+ "columnSpan": {
+ "description": "Number of columns spanned by this cell.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "default": 1
+ },
+ "content": {
+ "description": "Concatenated content of the table cell in reading order.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the table cell.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the table cell in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentKeyValuePair": {
+ "description": "An object representing a form field with distinct field label (key) and field value (may be empty).",
+ "type": "object",
+ "required": [
+ "key",
+ "confidence"
+ ],
+ "properties": {
+ "key": {
+ "description": "Field label of the key-value pair.",
+ "$ref": "#/definitions/DocumentKeyValueElement"
+ },
+ "value": {
+ "description": "Field value of the key-value pair.",
+ "$ref": "#/definitions/DocumentKeyValueElement"
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the key-value pair.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentKeyValueElement": {
+ "description": "An object representing the field key or value in a key-value pair.",
+ "type": "object",
+ "required": [
+ "content",
+ "spans"
+ ],
+ "properties": {
+ "content": {
+ "description": "Concatenated content of the key-value element in reading order.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the key-value element.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the key-value element in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentStyle": {
+ "description": "An object representing observed text styles.",
+ "type": "object",
+ "required": [
+ "spans",
+ "confidence"
+ ],
+ "properties": {
+ "isHandwritten": {
+ "description": "Is content handwritten?",
+ "type": "boolean"
+ },
+ "similarFontFamily": {
+ "description": "Visually most similar font from among the set of supported font families, with fallback fonts following CSS convention (ex. 'Arial, sans-serif').",
+ "type": "string"
+ },
+ "fontStyle": {
+ "description": "Font style.",
+ "type": "string",
+ "enum": [
+ "normal",
+ "italic"
+ ],
+ "x-ms-enum": {
+ "name": "FontStyle",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "normal",
+ "description": "Characters are represented normally."
+ },
+ {
+ "value": "italic",
+ "description": "Characters are visually slanted to the right."
+ }
+ ]
+ }
+ },
+ "fontWeight": {
+ "description": "Font weight.",
+ "type": "string",
+ "enum": [
+ "normal",
+ "bold"
+ ],
+ "x-ms-enum": {
+ "name": "FontWeight",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "normal",
+ "description": "Characters are represented normally."
+ },
+ {
+ "value": "bold",
+ "description": "Characters are represented with thicker strokes."
+ }
+ ]
+ }
+ },
+ "color": {
+ "description": "Foreground color in #rrggbb hexadecimal format.",
+ "type": "string",
+ "pattern": "^#[0-9a-f]{6}$"
+ },
+ "backgroundColor": {
+ "description": "Background color in #rrggbb hexadecimal format..",
+ "type": "string",
+ "pattern": "^#[0-9a-f]{6}$"
+ },
+ "spans": {
+ "description": "Location of the text elements in the concatenated content the style applies to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly identifying the style.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentLanguage": {
+ "description": "An object representing the detected language for a given text span.",
+ "type": "object",
+ "required": [
+ "locale",
+ "spans",
+ "confidence"
+ ],
+ "properties": {
+ "locale": {
+ "description": "Detected language. Value may an ISO 639-1 language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"zh-Hans\").",
+ "type": "string"
+ },
+ "spans": {
+ "description": "Location of the text elements in the concatenated content the language applies to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly identifying the language.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "Document": {
+ "description": "An object describing the location and semantic content of a document.",
+ "type": "object",
+ "required": [
+ "docType",
+ "spans",
+ "confidence"
+ ],
+ "properties": {
+ "docType": {
+ "description": "Document type.",
+ "$ref": "#/definitions/DocType"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the document.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the document in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "fields": {
+ "description": "Dictionary of named field values.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentField"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the document.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentField": {
+ "description": "An object representing the content and location of a field value.",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "description": "Data type of the field value.",
+ "$ref": "#/definitions/DocumentFieldType"
+ },
+ "valueString": {
+ "description": "String value.",
+ "type": "string"
+ },
+ "valueDate": {
+ "description": "Date value in YYYY-MM-DD format (ISO 8601).",
+ "type": "string",
+ "format": "date"
+ },
+ "valueTime": {
+ "description": "Time value in hh:mm:ss format (ISO 8601).",
+ "type": "string",
+ "format": "time"
+ },
+ "valuePhoneNumber": {
+ "description": "Phone number value in E.164 format (ex. +19876543210).",
+ "type": "string"
+ },
+ "valueNumber": {
+ "description": "Floating point value.",
+ "type": "number"
+ },
+ "valueInteger": {
+ "description": "Integer value.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "valueSelectionMark": {
+ "description": "Selection mark value.",
+ "$ref": "#/definitions/DocumentSelectionMarkState"
+ },
+ "valueSignature": {
+ "description": "Presence of signature.",
+ "type": "string",
+ "enum": [
+ "signed",
+ "unsigned"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentSignatureType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "signed",
+ "description": "A signature is detected."
+ },
+ {
+ "value": "unsigned",
+ "description": "No signatures are detected."
+ }
+ ]
+ }
+ },
+ "valueCountryRegion": {
+ "description": "3-letter country code value (ISO 3166-1 alpha-3).",
+ "type": "string"
+ },
+ "valueArray": {
+ "description": "Array of field values.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentField"
+ }
+ },
+ "valueObject": {
+ "description": "Dictionary of named field values.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/DocumentField"
+ }
+ },
+ "valueCurrency": {
+ "description": "Currency value.",
+ "$ref": "#/definitions/CurrencyValue"
+ },
+ "valueAddress": {
+ "description": "Address value.",
+ "$ref": "#/definitions/AddressValue"
+ },
+ "valueBoolean": {
+ "description": "Boolean value.",
+ "type": "boolean"
+ },
+ "content": {
+ "description": "Field content.",
+ "type": "string"
+ },
+ "boundingRegions": {
+ "description": "Bounding regions covering the field.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoundingRegion"
+ }
+ },
+ "spans": {
+ "description": "Location of the field in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "description": "Confidence of correctly extracting the field.",
+ "$ref": "#/definitions/Confidence"
+ }
+ }
+ },
+ "DocumentFieldType": {
+ "description": "Semantic data type of the field value.",
+ "type": "string",
+ "enum": [
+ "string",
+ "date",
+ "time",
+ "phoneNumber",
+ "number",
+ "integer",
+ "selectionMark",
+ "countryRegion",
+ "signature",
+ "array",
+ "object",
+ "currency",
+ "address",
+ "boolean"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentFieldType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "string",
+ "description": "Plain text."
+ },
+ {
+ "value": "date",
+ "description": "Date, normalized to ISO 8601 (YYYY-MM-DD) format."
+ },
+ {
+ "value": "time",
+ "description": "Time, normalized to ISO 8601 (hh:mm:ss) format."
+ },
+ {
+ "value": "phoneNumber",
+ "description": "Phone number, normalized to E.164 (+{CountryCode}{SubscriberNumber}) format."
+ },
+ {
+ "value": "number",
+ "description": "Floating point number, normalized to double precision floating point."
+ },
+ {
+ "value": "integer",
+ "description": "Integer number, normalized to 64-bit signed integer."
+ },
+ {
+ "value": "selectionMark",
+ "description": "Is field selected?"
+ },
+ {
+ "value": "countryRegion",
+ "description": "Country/region, normalized to ISO 3166-1 alpha-3 format (ex. USA)."
+ },
+ {
+ "value": "signature",
+ "description": "Is signature present?"
+ },
+ {
+ "value": "array",
+ "description": "List of subfields of the same type."
+ },
+ {
+ "value": "object",
+ "description": "Named list of subfields of potentially different types."
+ },
+ {
+ "value": "currency",
+ "description": "Currency amount with optional currency symbol and unit."
+ },
+ {
+ "value": "address",
+ "description": "Parsed address."
+ },
+ {
+ "value": "boolean",
+ "description": "Boolean value, normalized to true or false."
+ }
+ ]
+ }
+ },
+ "CurrencyValue": {
+ "description": "Currency field value.",
+ "type": "object",
+ "required": [
+ "amount"
+ ],
+ "properties": {
+ "amount": {
+ "description": "Currency amount.",
+ "type": "number",
+ "format": "double"
+ },
+ "currencySymbol": {
+ "description": "Currency symbol label, if any.",
+ "type": "string"
+ },
+ "currencyCode": {
+ "description": "Resolved currency code (ISO 4217), if any.",
+ "type": "string"
+ }
+ }
+ },
+ "AddressValue": {
+ "description": "Address field value.",
+ "type": "object",
+ "properties": {
+ "houseNumber": {
+ "description": "House or building number.",
+ "type": "string"
+ },
+ "poBox": {
+ "description": "Post office box number.",
+ "type": "string"
+ },
+ "road": {
+ "description": "Street name.",
+ "type": "string"
+ },
+ "city": {
+ "description": "Name of city, town, village, etc.",
+ "type": "string"
+ },
+ "state": {
+ "description": "First-level administrative division.",
+ "type": "string"
+ },
+ "postalCode": {
+ "description": "Postal code used for mail sorting.",
+ "type": "string"
+ },
+ "countryRegion": {
+ "description": "Country/region.",
+ "type": "string"
+ },
+ "streetAddress": {
+ "description": "Street-level address, excluding city, state, countryRegion, and postalCode.",
+ "type": "string"
+ },
+ "unit": {
+ "description": "Apartment or office number",
+ "type": "string"
+ },
+ "cityDistrict": {
+ "description": "Districts or boroughs within a city, such as Brooklyn in New York City or City of Westminster in London.",
+ "type": "string"
+ },
+ "stateDistrict": {
+ "description": "Second-level administrative division used in certain locales.",
+ "type": "string"
+ },
+ "suburb": {
+ "description": "Unofficial neighborhood name, like Chinatown.",
+ "type": "string"
+ },
+ "house": {
+ "description": "Build name, such as World Trade Center.",
+ "type": "string"
+ },
+ "level": {
+ "description": "Floor number, such as 3F.",
+ "type": "string"
+ }
+ }
+ },
+ "DocumentModelId": {
+ "description": "Unique document model name.",
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$"
+ },
+ "DocumentModelDescription": {
+ "description": "Document model description.",
+ "type": "string",
+ "maxLength": 4096
+ },
+ "DocumentBuildMode": {
+ "description": "Custom document model build mode.",
+ "type": "string",
+ "enum": [
+ "template",
+ "neural"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentBuildMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "template",
+ "description": "Target documents with similar visual templates."
+ },
+ {
+ "value": "neural",
+ "description": "Support documents with diverse visual templates."
+ }
+ ]
+ }
+ },
+ "DocType": {
+ "description": "Document type name.",
+ "type": "string",
+ "minLength": 2,
+ "maxLength": 64
+ },
+ "DocumentClassifierId": {
+ "description": "Unique document classifier name.",
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$"
+ },
+ "DocumentClassifierDescription": {
+ "description": "Document classifier description.",
+ "type": "string",
+ "maxLength": 4096
+ },
+ "BoundingPolygon": {
+ "description": "Bounding polygon, with coordinates specified relative to the top-left of the page. The numbers represent the x, y values of the polygon vertices, clockwise from the left (-180 degrees inclusive) relative to the element orientation.",
+ "type": "array",
+ "items": {
+ "type": "number",
+ "minimum": 0
+ }
+ },
+ "BoundingRegion": {
+ "description": "Bounding polygon on a specific page of the input.",
+ "type": "object",
+ "required": [
+ "pageNumber",
+ "polygon"
+ ],
+ "properties": {
+ "pageNumber": {
+ "description": "1-based page number of page containing the bounding region.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1
+ },
+ "polygon": {
+ "description": "Bounding polygon on the page, or the entire page if not specified.",
+ "$ref": "#/definitions/BoundingPolygon"
+ }
+ }
+ },
+ "Confidence": {
+ "description": "Prediction confidence.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1
+ },
+ "DocumentSpan": {
+ "description": "Contiguous region of the concatenated content property, specified as an offset and length.",
+ "type": "object",
+ "required": [
+ "offset",
+ "length"
+ ],
+ "properties": {
+ "offset": {
+ "description": "Zero-based index of the content represented by the span.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0
+ },
+ "length": {
+ "description": "Number of characters in the content represented by the span.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0
+ }
+ }
+ },
+ "StringIndexType": {
+ "description": "Method used to compute string offset and length.",
+ "type": "string",
+ "enum": [
+ "textElements",
+ "unicodeCodePoint",
+ "utf16CodeUnit"
+ ],
+ "x-ms-enum": {
+ "name": "StringIndexType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "textElements",
+ "description": "User-perceived display character, or grapheme cluster, as defined by Unicode 8.0.0."
+ },
+ {
+ "value": "unicodeCodePoint",
+ "description": "Character unit represented by a single unicode code point. Used by Python 3."
+ },
+ {
+ "value": "utf16CodeUnit",
+ "description": "Character unit represented by a 16-bit Unicode code unit. Used by JavaScript, Java, and .NET."
+ }
+ ]
+ },
+ "default": "textElements"
+ }
+ },
+ "parameters": {
+ "Endpoint": {
+ "name": "endpoint",
+ "description": "Supported Cognitive Services endpoints (protocol and hostname, for\nexample: https://westus2.api.cognitive.microsoft.com).",
+ "x-ms-parameter-location": "client",
+ "required": true,
+ "type": "string",
+ "format": "url",
+ "in": "path",
+ "x-ms-skip-url-encoding": true
+ },
+ "QueryApiVersion": {
+ "name": "api-version",
+ "description": "Requested API version.",
+ "required": true,
+ "type": "string",
+ "in": "query",
+ "x-ms-parameter-location": "client"
+ },
+ "PathDocumentModelId": {
+ "name": "modelId",
+ "description": "Unique document model name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$",
+ "maxLength": 64,
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "PathDocumentClassifierId": {
+ "name": "classifierId",
+ "description": "Unique document classifier name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$",
+ "maxLength": 64,
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "PathOperationId": {
+ "name": "operationId",
+ "description": "Unique operation ID.",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
+ "maxLength": 36,
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "PathResultId": {
+ "name": "resultId",
+ "description": "Analyze operation result ID.",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
+ "maxLength": 36,
+ "in": "path",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryPages": {
+ "name": "pages",
+ "description": "List of 1-based page numbers to analyze. Ex. \"1-3,5,7-9\"",
+ "required": false,
+ "type": "string",
+ "in": "query",
+ "pattern": "^(\\d+(-\\d+)?)(,\\s*(\\d+(-\\d+)?))*$",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryLocale": {
+ "name": "locale",
+ "description": "Locale hint for text recognition and document analysis. Value may contain only the language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"en-US\").",
+ "required": false,
+ "type": "string",
+ "in": "query",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryStringIndexType": {
+ "name": "stringIndexType",
+ "description": "Method used to compute string offset and length.",
+ "required": false,
+ "in": "query",
+ "type": "string",
+ "enum": [
+ "textElements",
+ "unicodeCodePoint",
+ "utf16CodeUnit"
+ ],
+ "x-ms-enum": {
+ "name": "StringIndexType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "textElements",
+ "description": "User-perceived display character, or grapheme cluster, as defined by Unicode 8.0.0."
+ },
+ {
+ "value": "unicodeCodePoint",
+ "description": "Character unit represented by a single unicode code point. Used by Python 3."
+ },
+ {
+ "value": "utf16CodeUnit",
+ "description": "Character unit represented by a 16-bit Unicode code unit. Used by JavaScript, Java, and .NET."
+ }
+ ]
+ },
+ "default": "textElements",
+ "x-ms-parameter-location": "method"
+ },
+ "QueryFeatures": {
+ "name": "features",
+ "description": "List of optional analysis features.",
+ "required": false,
+ "type": "array",
+ "in": "query",
+ "items": {
+ "type": "string",
+ "enum": [
+ "ocrHighResolution",
+ "languages",
+ "barcodes",
+ "formulas",
+ "keyValuePairs",
+ "styleFont"
+ ],
+ "x-ms-enum": {
+ "name": "DocumentAnalysisFeature",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "ocrHighResolution",
+ "description": "Perform OCR at a higher resolution to handle documents with fine print."
+ },
+ {
+ "value": "languages",
+ "description": "Enable the detection of the text content language."
+ },
+ {
+ "value": "barcodes",
+ "description": "Enable the detection of barcodes in the document."
+ },
+ {
+ "value": "formulas",
+ "description": "Enable the detection of mathematical expressions in the document."
+ },
+ {
+ "value": "keyValuePairs",
+ "description": "Enable the detection of general key value pairs (form fields) in the document."
+ },
+ {
+ "value": "styleFont",
+ "description": "Enable the recognition of various font styles."
+ }
+ ]
+ }
+ },
+ "collectionFormat": "csv",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AnalyzeDocument_Base64.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AnalyzeDocument_Base64.json
new file mode 100644
index 000000000000..83f0976f3df9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AnalyzeDocument_Base64.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "prebuilt-layout",
+ "pages": "1-2,4",
+ "locale": "en-US",
+ "stringIndexType": "textElements",
+ "analyzeRequest": {
+ "base64Source": "e2Jhc2U2NEVuY29kZWRQZGZ9"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/prebuilt-layout/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AnalyzeDocument_Url.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AnalyzeDocument_Url.json
new file mode 100644
index 000000000000..8cef6abd5ad6
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AnalyzeDocument_Url.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "customModel",
+ "pages": "1-2,4",
+ "locale": "en-US",
+ "stringIndexType": "textElements",
+ "analyzeRequest": {
+ "urlSource": "http://host.com/doc.pdf"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AuthorizeCopyDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AuthorizeCopyDocumentModel.json
new file mode 100644
index 000000000000..f45b7bd99e33
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/AuthorizeCopyDocumentModel.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "authorizeCopyRequest": {
+ "modelId": "targetModel",
+ "description": "Target model description"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
+ "targetResourceRegion": "targetResourceRegion",
+ "targetModelId": "targetModel",
+ "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/formrecognizer/documentModels/targetModel",
+ "accessToken": "accessToken",
+ "expirationDateTime": "2021-09-23T09:12:54.552Z"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/BuildDocumentClassifier.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/BuildDocumentClassifier.json
new file mode 100644
index 000000000000..aadc7c1306c1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/BuildDocumentClassifier.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "buildRequest": {
+ "classifierId": "myClassifier",
+ "description": "Classifier description",
+ "docTypes": {
+ "formA": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formADocs/"
+ }
+ },
+ "formB": {
+ "azureBlobFileListSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "fileList": "formB.jsonl"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/BuildDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/BuildDocumentModel.json
new file mode 100644
index 000000000000..11dc2026d613
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/BuildDocumentModel.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "buildRequest": {
+ "modelId": "myCustomModel",
+ "description": "Custom model description",
+ "buildMode": "template",
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "trainingDocs/"
+ },
+ "tags": {
+ "createdBy": "myUserId"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/ClassifyDocument_Url.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/ClassifyDocument_Url.json
new file mode 100644
index 000000000000..5449841997fb
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/ClassifyDocument_Url.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "classifierId": "classifierId",
+ "stringIndexType": "textElements",
+ "classifyRequest": {
+ "urlSource": "http://host.com/doc.pdf"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/ComposeDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/ComposeDocumentModel.json
new file mode 100644
index 000000000000..850886de0339
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/ComposeDocumentModel.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "composeRequest": {
+ "modelId": "composedModel",
+ "description": "Composed model description",
+ "componentModels": [
+ {
+ "modelId": "model1"
+ },
+ {
+ "modelId": "model2"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/CopyDocumentModelTo.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/CopyDocumentModelTo.json
new file mode 100644
index 000000000000..c8a04f432f97
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/CopyDocumentModelTo.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "sourceModel",
+ "copyToRequest": {
+ "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
+ "targetResourceRegion": "targetResourceRegion",
+ "targetModelId": "targetModel",
+ "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/formrecognizer/documentModels/targetModel",
+ "accessToken": "accessToken",
+ "expirationDateTime": "2021-09-23T09:12:54.552Z"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2023-07-31"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/DeleteDocumentClassifier.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/DeleteDocumentClassifier.json
new file mode 100644
index 000000000000..fe0cff431852
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/DeleteDocumentClassifier.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "classifierId": "myClassifier"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/DeleteDocumentModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/DeleteDocumentModel.json
new file mode 100644
index 000000000000..0c2a7b7e7657
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/DeleteDocumentModel.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "myCustomModel"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetAnalyzeDocumentResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetAnalyzeDocumentResult.json
new file mode 100644
index 000000000000..747759a4d301
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetAnalyzeDocumentResult.json
@@ -0,0 +1,7219 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "prebuilt-invoice",
+ "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "succeeded",
+ "createdDateTime": "2021-09-24T13:00:46Z",
+ "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
+ "analyzeResult": {
+ "apiVersion": "2023-07-31",
+ "modelId": "prebuilt-invoice",
+ "stringIndexType": "textElements",
+ "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:",
+ "pages": [
+ {
+ "pageNumber": 1,
+ "angle": 0,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "words": [
+ {
+ "content": "CONTOSO",
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 1.7451,
+ 0.6857,
+ 1.7451,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 0,
+ "length": 7
+ }
+ },
+ {
+ "content": "LTD.",
+ "polygon": [
+ 1.8441,
+ 0.6879,
+ 2.3181,
+ 0.6879,
+ 2.3181,
+ 0.865,
+ 1.8441,
+ 0.865
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 8,
+ "length": 4
+ }
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 7.0751,
+ 0.589,
+ 7.9886,
+ 0.589,
+ 7.9886,
+ 0.7697,
+ 7.0751,
+ 0.7697
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 13,
+ "length": 7
+ }
+ },
+ {
+ "content": "Contoso",
+ "polygon": [
+ 0.5882,
+ 1.4303,
+ 1.1337,
+ 1.4303,
+ 1.1337,
+ 1.5383,
+ 0.5882,
+ 1.5383
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 21,
+ "length": 7
+ }
+ },
+ {
+ "content": "Headquarters",
+ "polygon": [
+ 1.1905,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 1.1905,
+ 1.5664
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 29,
+ "length": 12
+ }
+ },
+ {
+ "content": "INVOICE:",
+ "polygon": [
+ 6.8599,
+ 1.4217,
+ 7.4328,
+ 1.4217,
+ 7.4328,
+ 1.5218,
+ 6.8599,
+ 1.5218
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 42,
+ "length": 8
+ }
+ },
+ {
+ "content": "INV-100",
+ "polygon": [
+ 7.4959,
+ 1.422,
+ 7.9988,
+ 1.422,
+ 7.9988,
+ 1.5215,
+ 7.4959,
+ 1.5215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 51,
+ "length": 7
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 1.6339,
+ 0.8213,
+ 1.6339,
+ 0.8213,
+ 1.742,
+ 0.5945,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 59,
+ "length": 3
+ }
+ },
+ {
+ "content": "456th",
+ "polygon": [
+ 0.874,
+ 1.6092,
+ 1.2102,
+ 1.6092,
+ 1.2102,
+ 1.742,
+ 0.874,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 63,
+ "length": 5
+ }
+ },
+ {
+ "content": "St",
+ "polygon": [
+ 1.2598,
+ 1.6339,
+ 1.3812,
+ 1.6339,
+ 1.3812,
+ 1.742,
+ 1.2598,
+ 1.742
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 69,
+ "length": 2
+ }
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 6.2263,
+ 1.6254,
+ 6.7562,
+ 1.6254,
+ 6.7562,
+ 1.7256,
+ 6.2263,
+ 1.7256
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 72,
+ "length": 7
+ }
+ },
+ {
+ "content": "DATE:",
+ "polygon": [
+ 6.8132,
+ 1.6267,
+ 7.1891,
+ 1.6267,
+ 7.1891,
+ 1.7248,
+ 6.8132,
+ 1.7248
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 80,
+ "length": 5
+ }
+ },
+ {
+ "content": "11/15/2019",
+ "polygon": [
+ 7.2528,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 7.2528,
+ 1.7449
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 86,
+ "length": 10
+ }
+ },
+ {
+ "content": "New",
+ "polygon": [
+ 0.5943,
+ 1.8385,
+ 0.8848,
+ 1.8385,
+ 0.8848,
+ 1.9454,
+ 0.5943,
+ 1.9454
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 97,
+ "length": 3
+ }
+ },
+ {
+ "content": "York,",
+ "polygon": [
+ 0.9293,
+ 1.8307,
+ 1.2568,
+ 1.8307,
+ 1.2568,
+ 1.9675,
+ 0.9293,
+ 1.9675
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 101,
+ "length": 5
+ }
+ },
+ {
+ "content": "NY,",
+ "polygon": [
+ 1.3205,
+ 1.8382,
+ 1.5242,
+ 1.8382,
+ 1.5242,
+ 1.9675,
+ 1.3205,
+ 1.9675
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 107,
+ "length": 3
+ }
+ },
+ {
+ "content": "10001",
+ "polygon": [
+ 1.5915,
+ 1.8372,
+ 1.9894,
+ 1.8372,
+ 1.9894,
+ 1.9454,
+ 1.5915,
+ 1.9454
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 111,
+ "length": 5
+ }
+ },
+ {
+ "content": "DUE",
+ "polygon": [
+ 6.4966,
+ 1.8333,
+ 6.7569,
+ 1.8333,
+ 6.7569,
+ 1.9322,
+ 6.4966,
+ 1.9322
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 117,
+ "length": 3
+ }
+ },
+ {
+ "content": "DATE:",
+ "polygon": [
+ 6.8126,
+ 1.8333,
+ 7.1846,
+ 1.8333,
+ 7.1846,
+ 1.9315,
+ 6.8126,
+ 1.9315
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 121,
+ "length": 5
+ }
+ },
+ {
+ "content": "12/15/2019",
+ "polygon": [
+ 7.2494,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 7.2494,
+ 1.9515
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 127,
+ "length": 10
+ }
+ },
+ {
+ "content": "CUSTOMER",
+ "polygon": [
+ 4.9513,
+ 2.0388,
+ 5.6868,
+ 2.0388,
+ 5.6868,
+ 2.1389,
+ 4.9513,
+ 2.1389
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 138,
+ "length": 8
+ }
+ },
+ {
+ "content": "NAME:",
+ "polygon": [
+ 5.7412,
+ 2.04,
+ 6.1764,
+ 2.04,
+ 6.1764,
+ 2.1381,
+ 5.7412,
+ 2.1381
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 147,
+ "length": 5
+ }
+ },
+ {
+ "content": "MICROSOFT",
+ "polygon": [
+ 6.2419,
+ 2.0391,
+ 6.9981,
+ 2.0391,
+ 6.9981,
+ 2.1386,
+ 6.2419,
+ 2.1386
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 153,
+ "length": 9
+ }
+ },
+ {
+ "content": "CORPORATION",
+ "polygon": [
+ 7.0448,
+ 2.0391,
+ 7.9825,
+ 2.0391,
+ 7.9825,
+ 2.1386,
+ 7.0448,
+ 2.1386
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 163,
+ "length": 11
+ }
+ },
+ {
+ "content": "SERVICE",
+ "polygon": [
+ 5.1667,
+ 2.2421,
+ 5.6923,
+ 2.2421,
+ 5.6923,
+ 2.3422,
+ 5.1667,
+ 2.3422
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 175,
+ "length": 7
+ }
+ },
+ {
+ "content": "PERIOD:",
+ "polygon": [
+ 5.748,
+ 2.2421,
+ 6.2721,
+ 2.2421,
+ 6.2721,
+ 2.3422,
+ 5.748,
+ 2.3422
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 183,
+ "length": 7
+ }
+ },
+ {
+ "content": "10/14/2019",
+ "polygon": [
+ 6.3357,
+ 2.2306,
+ 7.0749,
+ 2.2306,
+ 7.0749,
+ 2.3615,
+ 6.3357,
+ 2.3615
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 191,
+ "length": 10
+ }
+ },
+ {
+ "content": "–",
+ "polygon": [
+ 7.122,
+ 2.2922,
+ 7.1995,
+ 2.2922,
+ 7.1995,
+ 2.3037,
+ 7.122,
+ 2.3037
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 202,
+ "length": 1
+ }
+ },
+ {
+ "content": "11/14/2019",
+ "polygon": [
+ 7.2528,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 7.2528,
+ 2.3615
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 204,
+ "length": 10
+ }
+ },
+ {
+ "content": "CUSTOMER",
+ "polygon": [
+ 6.3253,
+ 2.4488,
+ 7.0608,
+ 2.4488,
+ 7.0608,
+ 2.5489,
+ 6.3253,
+ 2.5489
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 215,
+ "length": 8
+ }
+ },
+ {
+ "content": "ID:",
+ "polygon": [
+ 7.1153,
+ 2.45,
+ 7.2809,
+ 2.45,
+ 7.2809,
+ 2.5481,
+ 7.1153,
+ 2.5481
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 224,
+ "length": 3
+ }
+ },
+ {
+ "content": "CID-12345",
+ "polygon": [
+ 7.3369,
+ 2.4491,
+ 7.9951,
+ 2.4491,
+ 7.9951,
+ 2.5486,
+ 7.3369,
+ 2.5486
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 228,
+ "length": 9
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.2303,
+ 2.6436,
+ 1.2303,
+ 2.759,
+ 0.5943,
+ 2.759
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 238,
+ "length": 9
+ }
+ },
+ {
+ "content": "Corp",
+ "polygon": [
+ 1.2808,
+ 2.651,
+ 1.586,
+ 2.651,
+ 1.586,
+ 2.7871,
+ 1.2808,
+ 2.7871
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 248,
+ "length": 4
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 2.8541,
+ 0.8213,
+ 2.8541,
+ 0.8213,
+ 2.9623,
+ 0.5945,
+ 2.9623
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 253,
+ "length": 3
+ }
+ },
+ {
+ "content": "Other",
+ "polygon": [
+ 0.875,
+ 2.8476,
+ 1.262,
+ 2.8476,
+ 1.262,
+ 2.9623,
+ 0.875,
+ 2.9623
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 257,
+ "length": 5
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 1.3058,
+ 2.8541,
+ 1.4633,
+ 2.8541,
+ 1.4633,
+ 2.9845,
+ 1.3058,
+ 2.9845
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 263,
+ "length": 3
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 0.5943,
+ 3.0513,
+ 1.2222,
+ 3.0513,
+ 1.2222,
+ 3.1656,
+ 0.5943,
+ 3.1656
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 267,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 1.2753,
+ 3.0585,
+ 1.5468,
+ 3.0585,
+ 1.5468,
+ 3.1878,
+ 1.2753,
+ 3.1878
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 275,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 1.6033,
+ 3.0575,
+ 2.0083,
+ 3.0575,
+ 2.0083,
+ 3.1656,
+ 1.6033,
+ 3.1656
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 279,
+ "length": 5
+ }
+ },
+ {
+ "content": "BILL",
+ "polygon": [
+ 0.5909,
+ 3.5603,
+ 0.8438,
+ 3.5603,
+ 0.8438,
+ 3.6579,
+ 0.5909,
+ 3.6579
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 285,
+ "length": 4
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 0.8846,
+ 3.559,
+ 1.1032,
+ 3.559,
+ 1.1032,
+ 3.6592,
+ 0.8846,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 290,
+ "length": 3
+ }
+ },
+ {
+ "content": "SHIP",
+ "polygon": [
+ 3.3361,
+ 3.559,
+ 3.6278,
+ 3.559,
+ 3.6278,
+ 3.6592,
+ 3.3361,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 294,
+ "length": 4
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 3.6716,
+ 3.559,
+ 3.8903,
+ 3.559,
+ 3.8903,
+ 3.6592,
+ 3.6716,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 299,
+ "length": 3
+ }
+ },
+ {
+ "content": "SERVICE",
+ "polygon": [
+ 6.2104,
+ 3.559,
+ 6.7361,
+ 3.559,
+ 6.7361,
+ 3.6592,
+ 6.2104,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 303,
+ "length": 7
+ }
+ },
+ {
+ "content": "ADDRESS:",
+ "polygon": [
+ 6.7828,
+ 3.559,
+ 7.4232,
+ 3.559,
+ 7.4232,
+ 3.6592,
+ 6.7828,
+ 3.6592
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 311,
+ "length": 8
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.2303,
+ 3.7641,
+ 1.2303,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 320,
+ "length": 9
+ }
+ },
+ {
+ "content": "Finance",
+ "polygon": [
+ 1.287,
+ 3.7701,
+ 1.7878,
+ 3.7701,
+ 1.7878,
+ 3.8794,
+ 1.287,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 330,
+ "length": 7
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 3.9814,
+ 3.7641,
+ 3.9814,
+ 3.8794,
+ 3.3454,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 338,
+ "length": 9
+ }
+ },
+ {
+ "content": "Delivery",
+ "polygon": [
+ 4.0381,
+ 3.7647,
+ 4.5762,
+ 3.7647,
+ 4.5762,
+ 3.9076,
+ 4.0381,
+ 3.9076
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 348,
+ "length": 8
+ }
+ },
+ {
+ "content": "Microsoft",
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 6.8557,
+ 3.7641,
+ 6.8557,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 357,
+ "length": 9
+ }
+ },
+ {
+ "content": "Services",
+ "polygon": [
+ 6.9042,
+ 3.7701,
+ 7.4427,
+ 3.7701,
+ 7.4427,
+ 3.8794,
+ 6.9042,
+ 3.8794
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 367,
+ "length": 8
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 3.9746,
+ 0.8213,
+ 3.9746,
+ 0.8213,
+ 4.0827,
+ 0.5945,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 376,
+ "length": 3
+ }
+ },
+ {
+ "content": "Bill",
+ "polygon": [
+ 0.8842,
+ 3.9681,
+ 1.0657,
+ 3.9681,
+ 1.0657,
+ 4.0817,
+ 0.8842,
+ 4.0817
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 380,
+ "length": 4
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 1.1222,
+ 3.9746,
+ 1.2765,
+ 3.9746,
+ 1.2765,
+ 4.1049,
+ 1.1222,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 385,
+ "length": 3
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 3.3456,
+ 3.9746,
+ 3.5724,
+ 3.9746,
+ 3.5724,
+ 4.0827,
+ 3.3456,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 389,
+ "length": 3
+ }
+ },
+ {
+ "content": "Ship",
+ "polygon": [
+ 3.6239,
+ 3.9681,
+ 3.9042,
+ 3.9681,
+ 3.9042,
+ 4.1109,
+ 3.6239,
+ 4.1109
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 393,
+ "length": 4
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 3.9536,
+ 3.9746,
+ 4.1111,
+ 3.9746,
+ 4.1111,
+ 4.1049,
+ 3.9536,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 398,
+ "length": 3
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 6.2199,
+ 3.9746,
+ 6.4467,
+ 3.9746,
+ 6.4467,
+ 4.0827,
+ 6.2199,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 402,
+ "length": 3
+ }
+ },
+ {
+ "content": "Service",
+ "polygon": [
+ 6.4985,
+ 3.9734,
+ 6.9738,
+ 3.9734,
+ 6.9738,
+ 4.0827,
+ 6.4985,
+ 4.0827
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 406,
+ "length": 7
+ }
+ },
+ {
+ "content": "St,",
+ "polygon": [
+ 7.0246,
+ 3.9746,
+ 7.1821,
+ 3.9746,
+ 7.1821,
+ 4.1049,
+ 7.0246,
+ 4.1049
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 414,
+ "length": 3
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 0.5943,
+ 4.1717,
+ 1.2222,
+ 4.1717,
+ 1.2222,
+ 4.2861,
+ 0.5943,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 418,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 1.2753,
+ 4.1789,
+ 1.5468,
+ 4.1789,
+ 1.5468,
+ 4.3082,
+ 1.2753,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 426,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 1.6033,
+ 4.1779,
+ 2.0083,
+ 4.1779,
+ 2.0083,
+ 4.2861,
+ 1.6033,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 430,
+ "length": 5
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 3.3454,
+ 4.1717,
+ 3.9732,
+ 4.1717,
+ 3.9732,
+ 4.2861,
+ 3.3454,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 436,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 4.0264,
+ 4.1789,
+ 4.2979,
+ 4.1789,
+ 4.2979,
+ 4.3082,
+ 4.0264,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 444,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 4.3544,
+ 4.1779,
+ 4.7594,
+ 4.1779,
+ 4.7594,
+ 4.2861,
+ 4.3544,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 448,
+ "length": 5
+ }
+ },
+ {
+ "content": "Redmond",
+ "polygon": [
+ 6.2197,
+ 4.1717,
+ 6.8475,
+ 4.1717,
+ 6.8475,
+ 4.2861,
+ 6.2197,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 454,
+ "length": 7
+ }
+ },
+ {
+ "content": "WA,",
+ "polygon": [
+ 6.9007,
+ 4.1789,
+ 7.1722,
+ 4.1789,
+ 7.1722,
+ 4.3082,
+ 6.9007,
+ 4.3082
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 462,
+ "length": 3
+ }
+ },
+ {
+ "content": "98052",
+ "polygon": [
+ 7.2287,
+ 4.1779,
+ 7.6337,
+ 4.1779,
+ 7.6337,
+ 4.2861,
+ 7.2287,
+ 4.2861
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 466,
+ "length": 5
+ }
+ },
+ {
+ "content": "SALESPERSON",
+ "polygon": [
+ 0.7018,
+ 4.6528,
+ 1.6092,
+ 4.6528,
+ 1.6092,
+ 4.7529,
+ 0.7018,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 472,
+ "length": 11
+ }
+ },
+ {
+ "content": "P.O.",
+ "polygon": [
+ 2.1216,
+ 4.6528,
+ 2.3788,
+ 4.6528,
+ 2.3788,
+ 4.7529,
+ 2.1216,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 484,
+ "length": 4
+ }
+ },
+ {
+ "content": "NUMBER",
+ "polygon": [
+ 2.4376,
+ 4.654,
+ 3.0155,
+ 4.654,
+ 3.0155,
+ 4.7529,
+ 2.4376,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 489,
+ "length": 6
+ }
+ },
+ {
+ "content": "REQUISITIONER",
+ "polygon": [
+ 3.4953,
+ 4.6528,
+ 4.5157,
+ 4.6528,
+ 4.5157,
+ 4.7687,
+ 3.4953,
+ 4.7687
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 496,
+ "length": 13
+ }
+ },
+ {
+ "content": "SHIPPED",
+ "polygon": [
+ 4.81,
+ 4.6528,
+ 5.362,
+ 4.6528,
+ 5.362,
+ 4.7529,
+ 4.81,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 510,
+ "length": 7
+ }
+ },
+ {
+ "content": "VIA",
+ "polygon": [
+ 5.409,
+ 4.654,
+ 5.6317,
+ 4.654,
+ 5.6317,
+ 4.7517,
+ 5.409,
+ 4.7517
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 518,
+ "length": 3
+ }
+ },
+ {
+ "content": "F.O.B.",
+ "polygon": [
+ 5.8696,
+ 4.6528,
+ 6.2467,
+ 4.6528,
+ 6.2467,
+ 4.7529,
+ 5.8696,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 522,
+ "length": 6
+ }
+ },
+ {
+ "content": "POINT",
+ "polygon": [
+ 6.3054,
+ 4.6528,
+ 6.706,
+ 4.6528,
+ 6.706,
+ 4.7529,
+ 6.3054,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 529,
+ "length": 5
+ }
+ },
+ {
+ "content": "TERMS",
+ "polygon": [
+ 7.1806,
+ 4.6528,
+ 7.6304,
+ 4.6528,
+ 7.6304,
+ 4.7529,
+ 7.1806,
+ 4.7529
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 535,
+ "length": 5
+ }
+ },
+ {
+ "content": "PO-3333",
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 541,
+ "length": 7
+ }
+ },
+ {
+ "content": "DATE",
+ "polygon": [
+ 0.7409,
+ 5.421,
+ 1.0744,
+ 5.421,
+ 1.0744,
+ 5.5186,
+ 0.7409,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 549,
+ "length": 4
+ }
+ },
+ {
+ "content": "ITEM",
+ "polygon": [
+ 1.4213,
+ 5.421,
+ 1.7338,
+ 5.421,
+ 1.7338,
+ 5.5186,
+ 1.4213,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 554,
+ "length": 4
+ }
+ },
+ {
+ "content": "CODE",
+ "polygon": [
+ 1.7893,
+ 5.4197,
+ 2.1407,
+ 5.4197,
+ 2.1407,
+ 5.5199,
+ 1.7893,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 559,
+ "length": 4
+ }
+ },
+ {
+ "content": "DESCRIPTION",
+ "polygon": [
+ 2.8516,
+ 5.4197,
+ 3.7134,
+ 5.4197,
+ 3.7134,
+ 5.5199,
+ 2.8516,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 564,
+ "length": 11
+ }
+ },
+ {
+ "content": "QTY",
+ "polygon": [
+ 4.4043,
+ 5.4197,
+ 4.6631,
+ 5.4197,
+ 4.6631,
+ 5.5357,
+ 4.4043,
+ 5.5357
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 576,
+ "length": 3
+ }
+ },
+ {
+ "content": "UM",
+ "polygon": [
+ 5.049,
+ 5.421,
+ 5.2654,
+ 5.421,
+ 5.2654,
+ 5.5199,
+ 5.049,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 580,
+ "length": 2
+ }
+ },
+ {
+ "content": "PRICE",
+ "polygon": [
+ 5.8563,
+ 5.4199,
+ 6.2163,
+ 5.4199,
+ 6.2163,
+ 5.5197,
+ 5.8563,
+ 5.5197
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 583,
+ "length": 5
+ }
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.7169,
+ 5.421,
+ 6.974,
+ 5.421,
+ 6.974,
+ 5.5186,
+ 6.7169,
+ 5.5186
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 589,
+ "length": 3
+ }
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 7.2847,
+ 5.4197,
+ 7.9039,
+ 5.4197,
+ 7.9039,
+ 5.5199,
+ 7.2847,
+ 5.5199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 593,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/4/2021",
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 600,
+ "length": 8
+ }
+ },
+ {
+ "content": "A123",
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 609,
+ "length": 4
+ }
+ },
+ {
+ "content": "Consulting",
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.0438,
+ 5.6883,
+ 3.0438,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 614,
+ "length": 10
+ }
+ },
+ {
+ "content": "Services",
+ "polygon": [
+ 3.0925,
+ 5.6937,
+ 3.6278,
+ 5.6937,
+ 3.6278,
+ 5.803,
+ 3.0925,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 625,
+ "length": 8
+ }
+ },
+ {
+ "content": "2",
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 634,
+ "length": 1
+ }
+ },
+ {
+ "content": "hours",
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 636,
+ "length": 5
+ }
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 642,
+ "length": 6
+ }
+ },
+ {
+ "content": "10%",
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 649,
+ "length": 3
+ }
+ },
+ {
+ "content": "$60.00",
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 653,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/5/2021",
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 660,
+ "length": 8
+ }
+ },
+ {
+ "content": "B456",
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 669,
+ "length": 4
+ }
+ },
+ {
+ "content": "Document",
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.0318,
+ 5.993,
+ 3.0318,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 674,
+ "length": 8
+ }
+ },
+ {
+ "content": "Fee",
+ "polygon": [
+ 3.0887,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 3.0887,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 683,
+ "length": 3
+ }
+ },
+ {
+ "content": "3",
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 687,
+ "length": 1
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 689,
+ "length": 6
+ }
+ },
+ {
+ "content": "5%",
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 696,
+ "length": 2
+ }
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 699,
+ "length": 6
+ }
+ },
+ {
+ "content": "3/6/2021",
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 706,
+ "length": 8
+ }
+ },
+ {
+ "content": "C789",
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 715,
+ "length": 4
+ }
+ },
+ {
+ "content": "Printing",
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 2.8575,
+ 6.2906,
+ 2.8575,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 720,
+ "length": 8
+ }
+ },
+ {
+ "content": "Fee",
+ "polygon": [
+ 2.9143,
+ 6.2933,
+ 3.1351,
+ 6.2933,
+ 3.1351,
+ 6.3999,
+ 2.9143,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 729,
+ "length": 3
+ }
+ },
+ {
+ "content": "10",
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 733,
+ "length": 2
+ }
+ },
+ {
+ "content": "pages",
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 736,
+ "length": 5
+ }
+ },
+ {
+ "content": "$1.00",
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 742,
+ "length": 5
+ }
+ },
+ {
+ "content": "20%",
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 748,
+ "length": 3
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 752,
+ "length": 6
+ }
+ },
+ {
+ "content": "SUBTOTAL",
+ "polygon": [
+ 6.0282,
+ 6.9118,
+ 6.7309,
+ 6.9118,
+ 6.7309,
+ 7.0199,
+ 6.0282,
+ 7.0199
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 759,
+ "length": 8
+ }
+ },
+ {
+ "content": "$100.00",
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 768,
+ "length": 7
+ }
+ },
+ {
+ "content": "SALES",
+ "polygon": [
+ 6.0382,
+ 7.2089,
+ 6.4262,
+ 7.2089,
+ 6.4262,
+ 7.317,
+ 6.0382,
+ 7.317
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 776,
+ "length": 5
+ }
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.4702,
+ 7.2099,
+ 6.728,
+ 7.2099,
+ 6.728,
+ 7.316,
+ 6.4702,
+ 7.316
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 782,
+ "length": 3
+ }
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 786,
+ "length": 6
+ }
+ },
+ {
+ "content": "TOTAL",
+ "polygon": [
+ 6.2969,
+ 7.5089,
+ 6.7309,
+ 7.5089,
+ 6.7309,
+ 7.617,
+ 6.2969,
+ 7.617
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 793,
+ "length": 5
+ }
+ },
+ {
+ "content": "$110.00",
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 799,
+ "length": 7
+ }
+ },
+ {
+ "content": "PREVIOUS",
+ "polygon": [
+ 4.8126,
+ 7.8055,
+ 5.4789,
+ 7.8055,
+ 5.4789,
+ 7.9137,
+ 4.8126,
+ 7.9137
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 807,
+ "length": 8
+ }
+ },
+ {
+ "content": "UNPAID",
+ "polygon": [
+ 5.5362,
+ 7.8065,
+ 6.057,
+ 7.8065,
+ 6.057,
+ 7.9137,
+ 5.5362,
+ 7.9137
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 816,
+ "length": 6
+ }
+ },
+ {
+ "content": "BALANCE",
+ "polygon": [
+ 6.1164,
+ 7.8057,
+ 6.7249,
+ 7.8057,
+ 6.7249,
+ 7.9135,
+ 6.1164,
+ 7.9135
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 823,
+ "length": 7
+ }
+ },
+ {
+ "content": "$500.00",
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 831,
+ "length": 7
+ }
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 5.7652,
+ 8.1022,
+ 6.4055,
+ 8.1022,
+ 6.4055,
+ 8.2104,
+ 5.7652,
+ 8.2104
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 839,
+ "length": 6
+ }
+ },
+ {
+ "content": "DUE",
+ "polygon": [
+ 6.4562,
+ 8.1032,
+ 6.725,
+ 8.1032,
+ 6.725,
+ 8.2104,
+ 6.4562,
+ 8.2104
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 846,
+ "length": 3
+ }
+ },
+ {
+ "content": "$610.00",
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 850,
+ "length": 7
+ }
+ },
+ {
+ "content": "THANK",
+ "polygon": [
+ 3.129,
+ 8.5453,
+ 3.5887,
+ 8.5453,
+ 3.5887,
+ 8.6429,
+ 3.129,
+ 8.6429
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 858,
+ "length": 5
+ }
+ },
+ {
+ "content": "YOU",
+ "polygon": [
+ 3.6316,
+ 8.544,
+ 3.9064,
+ 8.544,
+ 3.9064,
+ 8.6442,
+ 3.6316,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 864,
+ "length": 3
+ }
+ },
+ {
+ "content": "FOR",
+ "polygon": [
+ 3.9671,
+ 8.544,
+ 4.2187,
+ 8.544,
+ 4.2187,
+ 8.6442,
+ 3.9671,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 868,
+ "length": 3
+ }
+ },
+ {
+ "content": "YOUR",
+ "polygon": [
+ 4.2638,
+ 8.544,
+ 4.6347,
+ 8.544,
+ 4.6347,
+ 8.6442,
+ 4.2638,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 872,
+ "length": 4
+ }
+ },
+ {
+ "content": "BUSINESS!",
+ "polygon": [
+ 4.6859,
+ 8.539,
+ 5.356,
+ 8.539,
+ 5.356,
+ 8.6442,
+ 4.6859,
+ 8.6442
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 877,
+ "length": 9
+ }
+ },
+ {
+ "content": "REMIT",
+ "polygon": [
+ 0.5909,
+ 9.1619,
+ 1.0014,
+ 9.1619,
+ 1.0014,
+ 9.2596,
+ 0.5909,
+ 9.2596
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 887,
+ "length": 5
+ }
+ },
+ {
+ "content": "TO:",
+ "polygon": [
+ 1.0446,
+ 9.1607,
+ 1.2603,
+ 9.1607,
+ 1.2603,
+ 9.2608,
+ 1.0446,
+ 9.2608
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 893,
+ "length": 3
+ }
+ },
+ {
+ "content": "Contoso",
+ "polygon": [
+ 0.5882,
+ 9.3697,
+ 1.1337,
+ 9.3697,
+ 1.1337,
+ 9.4777,
+ 0.5882,
+ 9.4777
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 897,
+ "length": 7
+ }
+ },
+ {
+ "content": "Billing",
+ "polygon": [
+ 1.1905,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 1.1905,
+ 9.5059
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 905,
+ "length": 7
+ }
+ },
+ {
+ "content": "123",
+ "polygon": [
+ 0.5945,
+ 9.5728,
+ 0.8213,
+ 9.5728,
+ 0.8213,
+ 9.681,
+ 0.5945,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 913,
+ "length": 3
+ }
+ },
+ {
+ "content": "Remit",
+ "polygon": [
+ 0.881,
+ 9.5717,
+ 1.264,
+ 9.5717,
+ 1.264,
+ 9.681,
+ 0.881,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 917,
+ "length": 5
+ }
+ },
+ {
+ "content": "St",
+ "polygon": [
+ 1.3125,
+ 9.5728,
+ 1.4337,
+ 9.5728,
+ 1.4337,
+ 9.681,
+ 1.3125,
+ 9.681
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 923,
+ "length": 2
+ }
+ },
+ {
+ "content": "New",
+ "polygon": [
+ 0.5943,
+ 9.7808,
+ 0.8848,
+ 9.7808,
+ 0.8848,
+ 9.8877,
+ 0.5943,
+ 9.8877
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 926,
+ "length": 3
+ }
+ },
+ {
+ "content": "York,",
+ "polygon": [
+ 0.9293,
+ 9.773,
+ 1.2568,
+ 9.773,
+ 1.2568,
+ 9.9098,
+ 0.9293,
+ 9.9098
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 930,
+ "length": 5
+ }
+ },
+ {
+ "content": "NY,",
+ "polygon": [
+ 1.3205,
+ 9.7805,
+ 1.5233,
+ 9.7805,
+ 1.5233,
+ 9.9098,
+ 1.3205,
+ 9.9098
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 936,
+ "length": 3
+ }
+ },
+ {
+ "content": "10001",
+ "polygon": [
+ 1.5903,
+ 9.7795,
+ 1.9882,
+ 9.7795,
+ 1.9882,
+ 9.8877,
+ 1.5903,
+ 9.8877
+ ],
+ "confidence": 1,
+ "span": {
+ "offset": 940,
+ "length": 5
+ }
+ }
+ ],
+ "selectionMarks": [
+ {
+ "state": "unselected",
+ "polygon": [
+ 4.3231,
+ 5.6279,
+ 4.7562,
+ 5.6279,
+ 4.7562,
+ 5.8654,
+ 4.3231,
+ 5.8654
+ ],
+ "confidence": 0.212,
+ "span": {
+ "offset": 946,
+ "length": 12
+ }
+ }
+ ],
+ "lines": [
+ {
+ "content": "CONTOSO LTD.",
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 2.3181,
+ 0.6857,
+ 2.3181,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ],
+ "spans": [
+ {
+ "offset": 0,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "INVOICE",
+ "polygon": [
+ 7.0751,
+ 0.589,
+ 7.9886,
+ 0.589,
+ 7.9886,
+ 0.7697,
+ 7.0751,
+ 0.7697
+ ],
+ "spans": [
+ {
+ "offset": 13,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "Contoso Headquarters",
+ "polygon": [
+ 0.5882,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 0.5882,
+ 1.5664
+ ],
+ "spans": [
+ {
+ "offset": 21,
+ "length": 20
+ }
+ ]
+ },
+ {
+ "content": "INVOICE: INV-100",
+ "polygon": [
+ 6.8599,
+ 1.4217,
+ 7.9988,
+ 1.4217,
+ 7.9988,
+ 1.5218,
+ 6.8599,
+ 1.5218
+ ],
+ "spans": [
+ {
+ "offset": 42,
+ "length": 16
+ }
+ ]
+ },
+ {
+ "content": "123 456th St",
+ "polygon": [
+ 0.5945,
+ 1.6092,
+ 1.3812,
+ 1.6092,
+ 1.3812,
+ 1.742,
+ 0.5945,
+ 1.742
+ ],
+ "spans": [
+ {
+ "offset": 59,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "INVOICE DATE: 11/15/2019",
+ "polygon": [
+ 6.2263,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 6.2263,
+ 1.7449
+ ],
+ "spans": [
+ {
+ "offset": 72,
+ "length": 24
+ }
+ ]
+ },
+ {
+ "content": "New York, NY, 10001",
+ "polygon": [
+ 0.5943,
+ 1.8307,
+ 1.9894,
+ 1.8307,
+ 1.9894,
+ 1.9675,
+ 0.5943,
+ 1.9675
+ ],
+ "spans": [
+ {
+ "offset": 97,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "content": "DUE DATE: 12/15/2019",
+ "polygon": [
+ 6.4966,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 6.4966,
+ 1.9515
+ ],
+ "spans": [
+ {
+ "offset": 117,
+ "length": 20
+ }
+ ]
+ },
+ {
+ "content": "CUSTOMER NAME: MICROSOFT CORPORATION",
+ "polygon": [
+ 4.9513,
+ 2.0388,
+ 7.9825,
+ 2.0388,
+ 7.9825,
+ 2.1389,
+ 4.9513,
+ 2.1389
+ ],
+ "spans": [
+ {
+ "offset": 138,
+ "length": 36
+ }
+ ]
+ },
+ {
+ "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019",
+ "polygon": [
+ 5.1667,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 5.1667,
+ 2.3615
+ ],
+ "spans": [
+ {
+ "offset": 175,
+ "length": 39
+ }
+ ]
+ },
+ {
+ "content": "CUSTOMER ID: CID-12345",
+ "polygon": [
+ 6.3253,
+ 2.4488,
+ 7.9951,
+ 2.4488,
+ 7.9951,
+ 2.5489,
+ 6.3253,
+ 2.5489
+ ],
+ "spans": [
+ {
+ "offset": 215,
+ "length": 22
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Corp",
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.586,
+ 2.6436,
+ 1.586,
+ 2.7871,
+ 0.5943,
+ 2.7871
+ ],
+ "spans": [
+ {
+ "offset": 238,
+ "length": 14
+ }
+ ]
+ },
+ {
+ "content": "123 Other St,",
+ "polygon": [
+ 0.5945,
+ 2.8476,
+ 1.4633,
+ 2.8476,
+ 1.4633,
+ 2.9845,
+ 0.5945,
+ 2.9845
+ ],
+ "spans": [
+ {
+ "offset": 253,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 0.5943,
+ 3.0513,
+ 2.0083,
+ 3.0513,
+ 2.0083,
+ 3.1878,
+ 0.5943,
+ 3.1878
+ ],
+ "spans": [
+ {
+ "offset": 267,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "BILL TO:",
+ "polygon": [
+ 0.5909,
+ 3.559,
+ 1.1032,
+ 3.559,
+ 1.1032,
+ 3.6592,
+ 0.5909,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 285,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "SHIP TO:",
+ "polygon": [
+ 3.3361,
+ 3.559,
+ 3.8903,
+ 3.559,
+ 3.8903,
+ 3.6592,
+ 3.3361,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 294,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "SERVICE ADDRESS:",
+ "polygon": [
+ 6.2104,
+ 3.559,
+ 7.4232,
+ 3.559,
+ 7.4232,
+ 3.6592,
+ 6.2104,
+ 3.6592
+ ],
+ "spans": [
+ {
+ "offset": 303,
+ "length": 16
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Finance",
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.7878,
+ 3.7641,
+ 1.7878,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ],
+ "spans": [
+ {
+ "offset": 320,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Delivery",
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 4.5762,
+ 3.7641,
+ 4.5762,
+ 3.9076,
+ 3.3454,
+ 3.9076
+ ],
+ "spans": [
+ {
+ "offset": 338,
+ "length": 18
+ }
+ ]
+ },
+ {
+ "content": "Microsoft Services",
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 7.4427,
+ 3.7641,
+ 7.4427,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ],
+ "spans": [
+ {
+ "offset": 357,
+ "length": 18
+ }
+ ]
+ },
+ {
+ "content": "123 Bill St,",
+ "polygon": [
+ 0.5945,
+ 3.9681,
+ 1.2765,
+ 3.9681,
+ 1.2765,
+ 4.1049,
+ 0.5945,
+ 4.1049
+ ],
+ "spans": [
+ {
+ "offset": 376,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "123 Ship St,",
+ "polygon": [
+ 3.3456,
+ 3.9681,
+ 4.1111,
+ 3.9681,
+ 4.1111,
+ 4.1109,
+ 3.3456,
+ 4.1109
+ ],
+ "spans": [
+ {
+ "offset": 389,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "123 Service St,",
+ "polygon": [
+ 6.2199,
+ 3.9734,
+ 7.1821,
+ 3.9734,
+ 7.1821,
+ 4.1049,
+ 6.2199,
+ 4.1049
+ ],
+ "spans": [
+ {
+ "offset": 402,
+ "length": 15
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 0.5943,
+ 4.1717,
+ 2.0083,
+ 4.1717,
+ 2.0083,
+ 4.3082,
+ 0.5943,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 418,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 3.3454,
+ 4.1717,
+ 4.7594,
+ 4.1717,
+ 4.7594,
+ 4.3082,
+ 3.3454,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 436,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "Redmond WA, 98052",
+ "polygon": [
+ 6.2197,
+ 4.1717,
+ 7.6337,
+ 4.1717,
+ 7.6337,
+ 4.3082,
+ 6.2197,
+ 4.3082
+ ],
+ "spans": [
+ {
+ "offset": 454,
+ "length": 17
+ }
+ ]
+ },
+ {
+ "content": "SALESPERSON",
+ "polygon": [
+ 0.7018,
+ 4.6528,
+ 1.6092,
+ 4.6528,
+ 1.6092,
+ 4.7529,
+ 0.7018,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "P.O. NUMBER",
+ "polygon": [
+ 2.1216,
+ 4.6528,
+ 3.0155,
+ 4.6528,
+ 3.0155,
+ 4.7529,
+ 2.1216,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 484,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "REQUISITIONER",
+ "polygon": [
+ 3.4953,
+ 4.6528,
+ 4.5157,
+ 4.6528,
+ 4.5157,
+ 4.7687,
+ 3.4953,
+ 4.7687
+ ],
+ "spans": [
+ {
+ "offset": 496,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "content": "SHIPPED VIA",
+ "polygon": [
+ 4.81,
+ 4.6528,
+ 5.6317,
+ 4.6528,
+ 5.6317,
+ 4.7529,
+ 4.81,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 510,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "F.O.B. POINT",
+ "polygon": [
+ 5.8696,
+ 4.6528,
+ 6.706,
+ 4.6528,
+ 6.706,
+ 4.7529,
+ 5.8696,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 522,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "TERMS",
+ "polygon": [
+ 7.1806,
+ 4.6528,
+ 7.6304,
+ 4.6528,
+ 7.6304,
+ 4.7529,
+ 7.1806,
+ 4.7529
+ ],
+ "spans": [
+ {
+ "offset": 535,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "PO-3333",
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ],
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "DATE",
+ "polygon": [
+ 0.7409,
+ 5.421,
+ 1.0744,
+ 5.421,
+ 1.0744,
+ 5.5186,
+ 0.7409,
+ 5.5186
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "ITEM CODE",
+ "polygon": [
+ 1.4213,
+ 5.4197,
+ 2.1407,
+ 5.4197,
+ 2.1407,
+ 5.5199,
+ 1.4213,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 554,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "DESCRIPTION",
+ "polygon": [
+ 2.8516,
+ 5.4197,
+ 3.7134,
+ 5.4197,
+ 3.7134,
+ 5.5199,
+ 2.8516,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 564,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "content": "QTY",
+ "polygon": [
+ 4.4043,
+ 5.4197,
+ 4.6631,
+ 5.4197,
+ 4.6631,
+ 5.5357,
+ 4.4043,
+ 5.5357
+ ],
+ "spans": [
+ {
+ "offset": 576,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "UM",
+ "polygon": [
+ 5.049,
+ 5.421,
+ 5.2654,
+ 5.421,
+ 5.2654,
+ 5.5199,
+ 5.049,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 580,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "PRICE",
+ "polygon": [
+ 5.8563,
+ 5.4199,
+ 6.2163,
+ 5.4199,
+ 6.2163,
+ 5.5197,
+ 5.8563,
+ 5.5197
+ ],
+ "spans": [
+ {
+ "offset": 583,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "TAX",
+ "polygon": [
+ 6.7169,
+ 5.421,
+ 6.974,
+ 5.421,
+ 6.974,
+ 5.5186,
+ 6.7169,
+ 5.5186
+ ],
+ "spans": [
+ {
+ "offset": 589,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "AMOUNT",
+ "polygon": [
+ 7.2847,
+ 5.4197,
+ 7.9039,
+ 5.4197,
+ 7.9039,
+ 5.5199,
+ 7.2847,
+ 5.5199
+ ],
+ "spans": [
+ {
+ "offset": 593,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/4/2021",
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ],
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "A123",
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ],
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Consulting Services",
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.6278,
+ 5.6883,
+ 3.6278,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ],
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "content": "2",
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ],
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "content": "hours",
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ],
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ],
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "10%",
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ],
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "$60.00",
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ],
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/5/2021",
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ],
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "B456",
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Document Fee",
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "3",
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ],
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ],
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "5%",
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ],
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "$30.00",
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ],
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "3/6/2021",
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ],
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "C789",
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ],
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "content": "Printing Fee",
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 3.1351,
+ 6.2906,
+ 3.1351,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ],
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "10",
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ],
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "content": "pages",
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ],
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$1.00",
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ],
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "20%",
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ],
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ],
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "SUBTOTAL",
+ "polygon": [
+ 6.0282,
+ 6.9118,
+ 6.7309,
+ 6.9118,
+ 6.7309,
+ 7.0199,
+ 6.0282,
+ 7.0199
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "content": "$100.00",
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ],
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "SALES TAX",
+ "polygon": [
+ 6.0382,
+ 7.2089,
+ 6.728,
+ 7.2089,
+ 6.728,
+ 7.317,
+ 6.0382,
+ 7.317
+ ],
+ "spans": [
+ {
+ "offset": 776,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "$10.00",
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ],
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "content": "TOTAL",
+ "polygon": [
+ 6.2969,
+ 7.5089,
+ 6.7309,
+ 7.5089,
+ 6.7309,
+ 7.617,
+ 6.2969,
+ 7.617
+ ],
+ "spans": [
+ {
+ "offset": 793,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "content": "$110.00",
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ],
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "PREVIOUS UNPAID BALANCE",
+ "polygon": [
+ 4.8126,
+ 7.8055,
+ 6.7249,
+ 7.8055,
+ 6.7249,
+ 7.9137,
+ 4.8126,
+ 7.9137
+ ],
+ "spans": [
+ {
+ "offset": 807,
+ "length": 23
+ }
+ ]
+ },
+ {
+ "content": "$500.00",
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ],
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "AMOUNT DUE",
+ "polygon": [
+ 5.7652,
+ 8.1022,
+ 6.725,
+ 8.1022,
+ 6.725,
+ 8.2104,
+ 5.7652,
+ 8.2104
+ ],
+ "spans": [
+ {
+ "offset": 839,
+ "length": 10
+ }
+ ]
+ },
+ {
+ "content": "$610.00",
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ],
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "content": "THANK YOU FOR YOUR BUSINESS!",
+ "polygon": [
+ 3.129,
+ 8.539,
+ 5.356,
+ 8.539,
+ 5.356,
+ 8.6442,
+ 3.129,
+ 8.6442
+ ],
+ "spans": [
+ {
+ "offset": 858,
+ "length": 28
+ }
+ ]
+ },
+ {
+ "content": "REMIT TO:",
+ "polygon": [
+ 0.5909,
+ 9.1607,
+ 1.2603,
+ 9.1607,
+ 1.2603,
+ 9.2608,
+ 0.5909,
+ 9.2608
+ ],
+ "spans": [
+ {
+ "offset": 887,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "content": "Contoso Billing",
+ "polygon": [
+ 0.5882,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 0.5882,
+ 9.5059
+ ],
+ "spans": [
+ {
+ "offset": 897,
+ "length": 15
+ }
+ ]
+ },
+ {
+ "content": "123 Remit St",
+ "polygon": [
+ 0.5945,
+ 9.5717,
+ 1.4337,
+ 9.5717,
+ 1.4337,
+ 9.681,
+ 0.5945,
+ 9.681
+ ],
+ "spans": [
+ {
+ "offset": 913,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "content": "New York, NY, 10001",
+ "polygon": [
+ 0.5943,
+ 9.773,
+ 1.9882,
+ 9.773,
+ 1.9882,
+ 9.9098,
+ 0.5943,
+ 9.9098
+ ],
+ "spans": [
+ {
+ "offset": 926,
+ "length": 19
+ }
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 0,
+ "length": 958
+ }
+ ]
+ }
+ ],
+ "tables": [
+ {
+ "rowCount": 4,
+ "columnCount": 8,
+ "cells": [
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "DATE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4932,
+ 5.329,
+ 1.3011,
+ 5.3213,
+ 1.3011,
+ 5.6056,
+ 0.5009,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "ITEM CODE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.3213,
+ 2.2476,
+ 5.3213,
+ 2.2399,
+ 5.6056,
+ 1.3011,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 554,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "DESCRIPTION",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2476,
+ 5.3213,
+ 4.3174,
+ 5.329,
+ 4.3097,
+ 5.6056,
+ 2.2399,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 564,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "QTY",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3174,
+ 5.329,
+ 4.7483,
+ 5.329,
+ 4.7483,
+ 5.6056,
+ 4.3097,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 576,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "UM",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.329,
+ 5.5639,
+ 5.329,
+ 5.5639,
+ 5.6056,
+ 4.7483,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 580,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PRICE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.329,
+ 6.495,
+ 5.329,
+ 6.495,
+ 5.6056,
+ 5.5639,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 583,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TAX",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.329,
+ 7.1875,
+ 5.329,
+ 7.1952,
+ 5.6056,
+ 6.495,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 589,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "AMOUNT",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1875,
+ 5.329,
+ 7.9954,
+ 5.329,
+ 7.9954,
+ 5.598,
+ 7.1952,
+ 5.6056
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 593,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/4/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5009,
+ 5.6056,
+ 1.3011,
+ 5.6056,
+ 1.3011,
+ 5.8976,
+ 0.5009,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "A123",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.6056,
+ 2.2399,
+ 5.6056,
+ 2.2322,
+ 5.8976,
+ 1.3011,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Consulting Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2399,
+ 5.6056,
+ 4.3097,
+ 5.6056,
+ 4.3097,
+ 5.8976,
+ 2.2322,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "2 :unselected:",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 5.6056,
+ 4.7483,
+ 5.6056,
+ 4.7483,
+ 5.8976,
+ 4.3097,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ },
+ {
+ "offset": 946,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "hours",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.6056,
+ 5.5639,
+ 5.6056,
+ 5.5639,
+ 5.8976,
+ 4.7483,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.6056,
+ 6.495,
+ 5.6056,
+ 6.495,
+ 5.8976,
+ 5.5639,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "10%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.6056,
+ 7.1952,
+ 5.6056,
+ 7.1952,
+ 5.8976,
+ 6.495,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 5.6056,
+ 7.9954,
+ 5.598,
+ 7.9954,
+ 5.9053,
+ 7.1952,
+ 5.8976
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/5/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5009,
+ 5.8976,
+ 1.3011,
+ 5.8976,
+ 1.3011,
+ 6.1973,
+ 0.5086,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "B456",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 5.8976,
+ 2.2322,
+ 5.8976,
+ 2.2245,
+ 6.1973,
+ 1.3011,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Document Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2322,
+ 5.8976,
+ 4.3097,
+ 5.8976,
+ 4.3097,
+ 6.1973,
+ 2.2245,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 5.8976,
+ 4.7483,
+ 5.8976,
+ 4.7483,
+ 6.1973,
+ 4.3097,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 5.8976,
+ 5.5639,
+ 5.8976,
+ 5.5639,
+ 6.1973,
+ 4.7483,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 5.8976,
+ 6.495,
+ 5.8976,
+ 6.495,
+ 6.1973,
+ 5.5639,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "5%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 5.8976,
+ 7.1952,
+ 5.8976,
+ 7.1952,
+ 6.1973,
+ 6.495,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 5.8976,
+ 7.9954,
+ 5.9053,
+ 7.9954,
+ 6.1896,
+ 7.1952,
+ 6.1973
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "3/6/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5086,
+ 6.1973,
+ 1.3011,
+ 6.1973,
+ 1.3011,
+ 6.4969,
+ 0.5086,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "C789",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.3011,
+ 6.1973,
+ 2.2245,
+ 6.1973,
+ 2.2245,
+ 6.4969,
+ 1.3011,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "Printing Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.2245,
+ 6.1973,
+ 4.3097,
+ 6.1973,
+ 4.3097,
+ 6.4969,
+ 2.2245,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "10",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.3097,
+ 6.1973,
+ 4.7483,
+ 6.1973,
+ 4.7483,
+ 6.4969,
+ 4.3097,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "pages",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7483,
+ 6.1973,
+ 5.5639,
+ 6.1973,
+ 5.5639,
+ 6.4969,
+ 4.7483,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$1.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.5639,
+ 6.1973,
+ 6.495,
+ 6.1973,
+ 6.495,
+ 6.4969,
+ 5.5639,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 6,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "20%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.495,
+ 6.1973,
+ 7.1952,
+ 6.1973,
+ 7.1952,
+ 6.4969,
+ 6.495,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 7,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.1952,
+ 6.1973,
+ 7.9954,
+ 6.1896,
+ 7.9954,
+ 6.5046,
+ 7.1952,
+ 6.4969
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4901,
+ 5.3293,
+ 7.9946,
+ 5.3289,
+ 7.9954,
+ 6.5019,
+ 0.4906,
+ 6.502
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 549,
+ "length": 209
+ },
+ {
+ "offset": 946,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "rowCount": 2,
+ "columnCount": 6,
+ "cells": [
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SALESPERSON",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4977,
+ 4.565,
+ 1.8042,
+ 4.565,
+ 1.8119,
+ 4.8388,
+ 0.5054,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "P.O. NUMBER",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.8042,
+ 4.565,
+ 3.3105,
+ 4.565,
+ 3.3105,
+ 4.8388,
+ 1.8119,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 484,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "REQUISITIONER",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3105,
+ 4.565,
+ 4.6939,
+ 4.565,
+ 4.6862,
+ 4.8388,
+ 3.3105,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 496,
+ "length": 13
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SHIPPED VIA",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.6939,
+ 4.565,
+ 5.7468,
+ 4.565,
+ 5.7468,
+ 4.8388,
+ 4.6862,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 510,
+ "length": 11
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "F.O.B. POINT",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.7468,
+ 4.565,
+ 6.815,
+ 4.565,
+ 6.815,
+ 4.8388,
+ 5.7468,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 522,
+ "length": 12
+ }
+ ]
+ },
+ {
+ "kind": "columnHeader",
+ "rowIndex": 0,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TERMS",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.815,
+ 4.565,
+ 7.9985,
+ 4.565,
+ 7.9985,
+ 4.8388,
+ 6.815,
+ 4.8388
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 535,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5054,
+ 4.8388,
+ 1.8119,
+ 4.8388,
+ 1.8119,
+ 5.1058,
+ 0.5131,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PO-3333",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.8119,
+ 4.8388,
+ 3.3105,
+ 4.8388,
+ 3.3105,
+ 5.1058,
+ 1.8119,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 2,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3105,
+ 4.8388,
+ 4.6862,
+ 4.8388,
+ 4.6862,
+ 5.1058,
+ 3.3105,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 3,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.6862,
+ 4.8388,
+ 5.7468,
+ 4.8388,
+ 5.7468,
+ 5.1058,
+ 4.6862,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 4,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.7468,
+ 4.8388,
+ 6.815,
+ 4.8388,
+ 6.815,
+ 5.1058,
+ 5.7468,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 5,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.815,
+ 4.8388,
+ 7.9985,
+ 4.8388,
+ 7.9985,
+ 5.1125,
+ 6.815,
+ 5.1058
+ ]
+ }
+ ],
+ "spans": []
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.4971,
+ 4.565,
+ 7.9889,
+ 4.5653,
+ 7.989,
+ 5.1146,
+ 0.4963,
+ 5.1141
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 472,
+ "length": 76
+ }
+ ]
+ },
+ {
+ "rowCount": 5,
+ "columnCount": 2,
+ "cells": [
+ {
+ "rowIndex": 0,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SUBTOTAL",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7474,
+ 6.7934,
+ 6.8058,
+ 6.7934,
+ 6.8105,
+ 7.0886,
+ 4.7474,
+ 7.0886
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 8
+ }
+ ]
+ },
+ {
+ "rowIndex": 0,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$100.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8058,
+ 6.7934,
+ 7.9981,
+ 6.7934,
+ 7.9981,
+ 7.0934,
+ 6.8105,
+ 7.0886
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "SALES TAX",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7474,
+ 7.0886,
+ 6.8105,
+ 7.0886,
+ 6.8105,
+ 7.3743,
+ 4.7427,
+ 7.3743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 776,
+ "length": 9
+ }
+ ]
+ },
+ {
+ "rowIndex": 1,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.0886,
+ 7.9981,
+ 7.0934,
+ 7.9981,
+ 7.3934,
+ 6.8105,
+ 7.3743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "TOTAL",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.3743,
+ 6.8105,
+ 7.3743,
+ 6.8105,
+ 7.6839,
+ 4.7427,
+ 7.6839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 793,
+ "length": 5
+ }
+ ]
+ },
+ {
+ "rowIndex": 2,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$110.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.3743,
+ 7.9981,
+ 7.3934,
+ 7.9981,
+ 7.6886,
+ 6.8105,
+ 7.6839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "PREVIOUS UNPAID BALANCE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.6839,
+ 6.8105,
+ 7.6839,
+ 6.8105,
+ 7.9743,
+ 4.7427,
+ 7.9743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 807,
+ "length": 23
+ }
+ ]
+ },
+ {
+ "rowIndex": 3,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$500.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.6839,
+ 7.9981,
+ 7.6886,
+ 7.9981,
+ 7.9839,
+ 6.8105,
+ 7.9743
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ {
+ "rowIndex": 4,
+ "columnIndex": 0,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "AMOUNT DUE",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7427,
+ 7.9743,
+ 6.8105,
+ 7.9743,
+ 6.8105,
+ 8.2839,
+ 4.7381,
+ 8.2839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 839,
+ "length": 10
+ }
+ ]
+ },
+ {
+ "rowIndex": 4,
+ "columnIndex": 1,
+ "rowSpan": 1,
+ "columnSpan": 1,
+ "content": "$610.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.8105,
+ 7.9743,
+ 7.9981,
+ 7.9839,
+ 7.9981,
+ 8.2839,
+ 6.8105,
+ 8.2839
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ }
+ ],
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.7456,
+ 6.7793,
+ 8.0143,
+ 6.7788,
+ 8.0137,
+ 8.2981,
+ 4.7446,
+ 8.2981
+ ]
+ }
+ ],
+ "spans": [
+ {
+ "offset": 759,
+ "length": 98
+ }
+ ]
+ }
+ ],
+ "documents": [
+ {
+ "docType": "prebuilt:invoice",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "fields": {
+ "AmountDue": {
+ "type": "number",
+ "valueNumber": 610,
+ "content": "$610.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 8.0584,
+ 7.9181,
+ 8.0584,
+ 7.9181,
+ 8.2022,
+ 7.3842,
+ 8.2022
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 850,
+ "length": 7
+ }
+ ]
+ },
+ "BillingAddress": {
+ "type": "string",
+ "valueString": "123 Bill St, Redmond WA, 98052",
+ "content": "123 Bill St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 3.9681,
+ 2.0083,
+ 3.9681,
+ 2.0083,
+ 4.3082,
+ 0.5943,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.947,
+ "spans": [
+ {
+ "offset": 376,
+ "length": 12
+ },
+ {
+ "offset": 418,
+ "length": 17
+ }
+ ]
+ },
+ "BillingAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Finance",
+ "content": "Microsoft Finance",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 3.7641,
+ 1.7878,
+ 3.7641,
+ 1.7878,
+ 3.8794,
+ 0.5943,
+ 3.8794
+ ]
+ }
+ ],
+ "confidence": 0.957,
+ "spans": [
+ {
+ "offset": 320,
+ "length": 17
+ }
+ ]
+ },
+ "CustomerAddress": {
+ "type": "string",
+ "valueString": "123 Other St, Redmond WA, 98052",
+ "content": "123 Other St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 2.8476,
+ 2.0083,
+ 2.8476,
+ 2.0083,
+ 3.1878,
+ 0.5943,
+ 3.1878
+ ]
+ }
+ ],
+ "confidence": 0.947,
+ "spans": [
+ {
+ "offset": 253,
+ "length": 31
+ }
+ ]
+ },
+ "CustomerAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Corp",
+ "content": "Microsoft Corp",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 2.6436,
+ 1.586,
+ 2.6436,
+ 1.586,
+ 2.7871,
+ 0.5943,
+ 2.7871
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 238,
+ "length": 14
+ }
+ ]
+ },
+ "CustomerId": {
+ "type": "string",
+ "valueString": "CID-12345",
+ "content": "CID-12345",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3369,
+ 2.4491,
+ 7.9951,
+ 2.4491,
+ 7.9951,
+ 2.5486,
+ 7.3369,
+ 2.5486
+ ]
+ }
+ ],
+ "confidence": 0.964,
+ "spans": [
+ {
+ "offset": 228,
+ "length": 9
+ }
+ ]
+ },
+ "CustomerName": {
+ "type": "string",
+ "valueString": "MICROSOFT CORPORATION",
+ "content": "MICROSOFT CORPORATION",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2419,
+ 2.0391,
+ 7.9825,
+ 2.0391,
+ 7.9825,
+ 2.1386,
+ 6.2419,
+ 2.1386
+ ]
+ }
+ ],
+ "confidence": 0.949,
+ "spans": [
+ {
+ "offset": 153,
+ "length": 21
+ }
+ ]
+ },
+ "DueDate": {
+ "type": "date",
+ "valueDate": "2019-12-15",
+ "content": "12/15/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2494,
+ 1.8206,
+ 7.993,
+ 1.8206,
+ 7.993,
+ 1.9515,
+ 7.2494,
+ 1.9515
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 127,
+ "length": 10
+ }
+ ]
+ },
+ "InvoiceDate": {
+ "type": "date",
+ "valueDate": "2019-11-15",
+ "content": "11/15/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2528,
+ 1.6139,
+ 7.993,
+ 1.6139,
+ 7.993,
+ 1.7449,
+ 7.2528,
+ 1.7449
+ ]
+ }
+ ],
+ "confidence": 0.972,
+ "spans": [
+ {
+ "offset": 86,
+ "length": 10
+ }
+ ]
+ },
+ "InvoiceId": {
+ "type": "string",
+ "valueString": "INV-100",
+ "content": "INV-100",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4959,
+ 1.422,
+ 7.9988,
+ 1.422,
+ 7.9988,
+ 1.5215,
+ 7.4959,
+ 1.5215
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 51,
+ "length": 7
+ }
+ ]
+ },
+ "InvoiceTotal": {
+ "type": "number",
+ "valueNumber": 110,
+ "content": "$110.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 7.465,
+ 7.9181,
+ 7.465,
+ 7.9181,
+ 7.6089,
+ 7.3842,
+ 7.6089
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 799,
+ "length": 7
+ }
+ ]
+ },
+ "Items": {
+ "type": "array",
+ "valueArray": [
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 60,
+ "content": "$60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8215,
+ 7.4642,
+ 5.8215
+ ]
+ }
+ ],
+ "confidence": 0.902,
+ "spans": [
+ {
+ "offset": 653,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-04",
+ "content": "3/4/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.682,
+ 1.2092,
+ 5.682,
+ 1.2092,
+ 5.8243,
+ 0.592,
+ 5.8243
+ ]
+ }
+ ],
+ "confidence": 0.938,
+ "spans": [
+ {
+ "offset": 600,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Consulting Services",
+ "content": "Consulting Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.3388,
+ 5.6883,
+ 3.6278,
+ 5.6883,
+ 3.6278,
+ 5.8312,
+ 2.3388,
+ 5.8312
+ ]
+ }
+ ],
+ "confidence": 0.9,
+ "spans": [
+ {
+ "offset": 614,
+ "length": 19
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "A123",
+ "content": "A123",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6069,
+ 5.6948,
+ 1.9417,
+ 5.6948,
+ 1.9417,
+ 5.803,
+ 1.6069,
+ 5.803
+ ]
+ }
+ ],
+ "confidence": 0.877,
+ "spans": [
+ {
+ "offset": 609,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 2,
+ "content": "2",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5977,
+ 5.6948,
+ 4.6635,
+ 5.6948,
+ 4.6635,
+ 5.8017,
+ 4.5977,
+ 5.8017
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 634,
+ "length": 1
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "10%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.7168,
+ 5.6932,
+ 6.9826,
+ 5.6932,
+ 6.9826,
+ 5.8045,
+ 6.7168,
+ 5.8045
+ ]
+ }
+ ],
+ "confidence": 0.78,
+ "spans": [
+ {
+ "offset": 649,
+ "length": 3
+ }
+ ]
+ },
+ "Unit": {
+ "type": "string",
+ "valueString": "hours",
+ "content": "hours",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.8444,
+ 5.6883,
+ 5.2071,
+ 5.6883,
+ 5.2071,
+ 5.803,
+ 4.8444,
+ 5.803
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 636,
+ "length": 5
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 30,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.9669,
+ 5.6777,
+ 6.4142,
+ 5.6777,
+ 6.4142,
+ 5.8215,
+ 5.9669,
+ 5.8215
+ ]
+ }
+ ],
+ "confidence": 0.828,
+ "spans": [
+ {
+ "offset": 642,
+ "length": 6
+ }
+ ]
+ }
+ },
+ "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.6777,
+ 7.9116,
+ 5.6777,
+ 7.9116,
+ 5.8312,
+ 0.592,
+ 5.8312
+ ]
+ }
+ ],
+ "confidence": 0.955,
+ "spans": [
+ {
+ "offset": 600,
+ "length": 59
+ }
+ ]
+ },
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 30,
+ "content": "$30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.1182,
+ 7.4642,
+ 6.1182
+ ]
+ }
+ ],
+ "confidence": 0.916,
+ "spans": [
+ {
+ "offset": 699,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-05",
+ "content": "3/5/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.9787,
+ 1.2088,
+ 5.9787,
+ 1.2088,
+ 6.121,
+ 0.592,
+ 6.121
+ ]
+ }
+ ],
+ "confidence": 0.902,
+ "spans": [
+ {
+ "offset": 660,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Document Fee",
+ "content": "Document Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.345,
+ 5.993,
+ 3.3096,
+ 5.993,
+ 3.3096,
+ 6.0997,
+ 2.345,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.901,
+ "spans": [
+ {
+ "offset": 674,
+ "length": 12
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "B456",
+ "content": "B456",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6214,
+ 5.9915,
+ 1.9419,
+ 5.9915,
+ 1.9419,
+ 6.0997,
+ 1.6214,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.886,
+ "spans": [
+ {
+ "offset": 669,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 3,
+ "content": "3",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5967,
+ 5.9915,
+ 4.6627,
+ 5.9915,
+ 4.6627,
+ 6.0997,
+ 4.5967,
+ 6.0997
+ ]
+ }
+ ],
+ "confidence": 0.898,
+ "spans": [
+ {
+ "offset": 687,
+ "length": 1
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "5%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.7508,
+ 5.9898,
+ 6.9393,
+ 5.9898,
+ 6.9393,
+ 6.1012,
+ 6.7508,
+ 6.1012
+ ]
+ }
+ ],
+ "confidence": 0.772,
+ "spans": [
+ {
+ "offset": 696,
+ "length": 2
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 5.9669,
+ 5.9743,
+ 6.4142,
+ 5.9743,
+ 6.4142,
+ 6.1182,
+ 5.9669,
+ 6.1182
+ ]
+ }
+ ],
+ "confidence": 0.831,
+ "spans": [
+ {
+ "offset": 689,
+ "length": 6
+ }
+ ]
+ }
+ },
+ "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 5.9743,
+ 7.9116,
+ 5.9743,
+ 7.9116,
+ 6.121,
+ 0.592,
+ 6.121
+ ]
+ }
+ ],
+ "confidence": 0.941,
+ "spans": [
+ {
+ "offset": 660,
+ "length": 45
+ }
+ ]
+ },
+ {
+ "type": "object",
+ "valueObject": {
+ "Amount": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4642,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4184,
+ 7.4642,
+ 6.4184
+ ]
+ }
+ ],
+ "confidence": 0.959,
+ "spans": [
+ {
+ "offset": 752,
+ "length": 6
+ }
+ ]
+ },
+ "Date": {
+ "type": "date",
+ "valueDate": "2021-03-06",
+ "content": "3/6/2021",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 6.2789,
+ 1.2088,
+ 6.2789,
+ 1.2088,
+ 6.4213,
+ 0.592,
+ 6.4213
+ ]
+ }
+ ],
+ "confidence": 0.903,
+ "spans": [
+ {
+ "offset": 706,
+ "length": 8
+ }
+ ]
+ },
+ "Description": {
+ "type": "string",
+ "valueString": "Printing Fee",
+ "content": "Printing Fee",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 2.345,
+ 6.2906,
+ 3.1351,
+ 6.2906,
+ 3.1351,
+ 6.4281,
+ 2.345,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 720,
+ "length": 12
+ }
+ ]
+ },
+ "ProductCode": {
+ "type": "string",
+ "valueString": "C789",
+ "content": "C789",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.6152,
+ 6.2918,
+ 1.94,
+ 6.2918,
+ 1.94,
+ 6.3999,
+ 1.6152,
+ 6.3999
+ ]
+ }
+ ],
+ "confidence": 0.898,
+ "spans": [
+ {
+ "offset": 715,
+ "length": 4
+ }
+ ]
+ },
+ "Quantity": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "10",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.5158,
+ 6.2918,
+ 4.6637,
+ 6.2918,
+ 4.6637,
+ 6.3999,
+ 4.5158,
+ 6.3999
+ ]
+ }
+ ],
+ "confidence": 0.903,
+ "spans": [
+ {
+ "offset": 733,
+ "length": 2
+ }
+ ]
+ },
+ "Tax": {
+ "type": "number",
+ "content": "20%",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.712,
+ 6.2901,
+ 6.9826,
+ 6.2901,
+ 6.9826,
+ 6.4014,
+ 6.712,
+ 6.4014
+ ]
+ }
+ ],
+ "confidence": 0.791,
+ "spans": [
+ {
+ "offset": 748,
+ "length": 3
+ }
+ ]
+ },
+ "Unit": {
+ "type": "string",
+ "valueString": "pages",
+ "content": "pages",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 4.8444,
+ 6.3196,
+ 5.2199,
+ 6.3196,
+ 5.2199,
+ 6.4281,
+ 4.8444,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.899,
+ "spans": [
+ {
+ "offset": 736,
+ "length": 5
+ }
+ ]
+ },
+ "UnitPrice": {
+ "type": "number",
+ "valueNumber": 1,
+ "content": "$1.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.0502,
+ 6.2746,
+ 6.4142,
+ 6.2746,
+ 6.4142,
+ 6.4184,
+ 6.0502,
+ 6.4184
+ ]
+ }
+ ],
+ "confidence": 0.829,
+ "spans": [
+ {
+ "offset": 742,
+ "length": 5
+ }
+ ]
+ }
+ },
+ "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.592,
+ 6.2746,
+ 7.9116,
+ 6.2746,
+ 7.9116,
+ 6.4281,
+ 0.592,
+ 6.4281
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 706,
+ "length": 52
+ }
+ ]
+ }
+ ]
+ },
+ "Locale": {
+ "type": "string",
+ "valueString": "en-US",
+ "confidence": 1
+ },
+ "PreviousUnpaidBalance": {
+ "type": "number",
+ "valueNumber": 500,
+ "content": "$500.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 7.7617,
+ 7.9181,
+ 7.7617,
+ 7.9181,
+ 7.9055,
+ 7.3842,
+ 7.9055
+ ]
+ }
+ ],
+ "confidence": 0.962,
+ "spans": [
+ {
+ "offset": 831,
+ "length": 7
+ }
+ ]
+ },
+ "PurchaseOrder": {
+ "type": "string",
+ "valueString": "PO-3333",
+ "content": "PO-3333",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 1.9114,
+ 4.9282,
+ 2.4718,
+ 4.9282,
+ 2.4718,
+ 5.0363,
+ 1.9114,
+ 5.0363
+ ]
+ }
+ ],
+ "confidence": 0.967,
+ "spans": [
+ {
+ "offset": 541,
+ "length": 7
+ }
+ ]
+ },
+ "RemittanceAddress": {
+ "type": "string",
+ "valueString": "123 Remit St New York, NY, 10001",
+ "content": "123 Remit St New York, NY, 10001",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 9.5717,
+ 1.9882,
+ 9.5717,
+ 1.9882,
+ 9.9098,
+ 0.5943,
+ 9.9098
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 913,
+ "length": 32
+ }
+ ]
+ },
+ "RemittanceAddressRecipient": {
+ "type": "string",
+ "valueString": "Contoso Billing",
+ "content": "Contoso Billing",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5882,
+ 9.3631,
+ 1.5828,
+ 9.3631,
+ 1.5828,
+ 9.5059,
+ 0.5882,
+ 9.5059
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 897,
+ "length": 15
+ }
+ ]
+ },
+ "ServiceAddress": {
+ "type": "string",
+ "valueString": "123 Service St, Redmond WA, 98052",
+ "content": "123 Service St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2197,
+ 3.9734,
+ 7.6337,
+ 3.9734,
+ 7.6337,
+ 4.3082,
+ 6.2197,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 402,
+ "length": 15
+ },
+ {
+ "offset": 454,
+ "length": 17
+ }
+ ]
+ },
+ "ServiceAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Services",
+ "content": "Microsoft Services",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.2197,
+ 3.7641,
+ 7.4427,
+ 3.7641,
+ 7.4427,
+ 3.8794,
+ 6.2197,
+ 3.8794
+ ]
+ }
+ ],
+ "confidence": 0.951,
+ "spans": [
+ {
+ "offset": 357,
+ "length": 18
+ }
+ ]
+ },
+ "ServiceEndDate": {
+ "type": "date",
+ "valueDate": "2019-11-14",
+ "content": "11/14/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.2528,
+ 2.2306,
+ 7.9952,
+ 2.2306,
+ 7.9952,
+ 2.3615,
+ 7.2528,
+ 2.3615
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 204,
+ "length": 10
+ }
+ ]
+ },
+ "ServiceStartDate": {
+ "type": "date",
+ "valueDate": "2019-10-14",
+ "content": "10/14/2019",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 6.3357,
+ 2.2306,
+ 7.0749,
+ 2.2306,
+ 7.0749,
+ 2.3615,
+ 6.3357,
+ 2.3615
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 191,
+ "length": 10
+ }
+ ]
+ },
+ "ShippingAddress": {
+ "type": "string",
+ "valueString": "123 Ship St, Redmond WA, 98052",
+ "content": "123 Ship St, Redmond WA, 98052",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3454,
+ 3.9681,
+ 4.7594,
+ 3.9681,
+ 4.7594,
+ 4.3082,
+ 3.3454,
+ 4.3082
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 389,
+ "length": 12
+ },
+ {
+ "offset": 436,
+ "length": 17
+ }
+ ]
+ },
+ "ShippingAddressRecipient": {
+ "type": "string",
+ "valueString": "Microsoft Delivery",
+ "content": "Microsoft Delivery",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 3.3454,
+ 3.7641,
+ 4.5762,
+ 3.7641,
+ 4.5762,
+ 3.9076,
+ 3.3454,
+ 3.9076
+ ]
+ }
+ ],
+ "confidence": 0.955,
+ "spans": [
+ {
+ "offset": 338,
+ "length": 18
+ }
+ ]
+ },
+ "SubTotal": {
+ "type": "number",
+ "valueNumber": 100,
+ "content": "$100.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.3842,
+ 6.8679,
+ 7.9181,
+ 6.8679,
+ 7.9181,
+ 7.0118,
+ 7.3842,
+ 7.0118
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 768,
+ "length": 7
+ }
+ ]
+ },
+ "TotalTax": {
+ "type": "number",
+ "valueNumber": 10,
+ "content": "$10.00",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 7.4709,
+ 7.165,
+ 7.9182,
+ 7.165,
+ 7.9182,
+ 7.3089,
+ 7.4709,
+ 7.3089
+ ]
+ }
+ ],
+ "confidence": 0.973,
+ "spans": [
+ {
+ "offset": 786,
+ "length": 6
+ }
+ ]
+ },
+ "VendorAddress": {
+ "type": "string",
+ "valueString": "123 456th St New York, NY, 10001",
+ "content": "123 456th St New York, NY, 10001",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5943,
+ 1.6092,
+ 1.9894,
+ 1.6092,
+ 1.9894,
+ 1.9675,
+ 0.5943,
+ 1.9675
+ ]
+ }
+ ],
+ "confidence": 0.946,
+ "spans": [
+ {
+ "offset": 59,
+ "length": 12
+ },
+ {
+ "offset": 97,
+ "length": 19
+ }
+ ]
+ },
+ "VendorAddressRecipient": {
+ "type": "string",
+ "valueString": "Contoso Headquarters",
+ "content": "Contoso Headquarters",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5882,
+ 1.4239,
+ 2.0978,
+ 1.4239,
+ 2.0978,
+ 1.5664,
+ 0.5882,
+ 1.5664
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 21,
+ "length": 20
+ }
+ ]
+ },
+ "VendorName": {
+ "type": "string",
+ "valueString": "CONTOSO LTD.",
+ "content": "CONTOSO LTD.",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0.5911,
+ 0.6857,
+ 2.3181,
+ 0.6857,
+ 2.3181,
+ 0.8664,
+ 0.5911,
+ 0.8664
+ ]
+ }
+ ],
+ "confidence": 0.956,
+ "spans": [
+ {
+ "offset": 0,
+ "length": 12
+ }
+ ]
+ }
+ },
+ "confidence": 1,
+ "spans": [
+ {
+ "offset": 0,
+ "length": 958
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetClassifyDocumentResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetClassifyDocumentResult.json
new file mode 100644
index 000000000000..01fbc604d18f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetClassifyDocumentResult.json
@@ -0,0 +1,101 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "classifierId": "myClassifier",
+ "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "succeeded",
+ "createdDateTime": "2021-09-24T13:00:46Z",
+ "lastUpdatedDateTime": "2021-09-24T13:00:49Z",
+ "analyzeResult": {
+ "apiVersion": "2023-07-31",
+ "modelId": "myClassifier",
+ "stringIndexType": "textElements",
+ "content": "",
+ "pages": [
+ {
+ "pageNumber": 1,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "spans": []
+ },
+ {
+ "pageNumber": 2,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "spans": []
+ },
+ {
+ "pageNumber": 3,
+ "width": 8.5,
+ "height": 11,
+ "unit": "inch",
+ "spans": []
+ }
+ ],
+ "documents": [
+ {
+ "docType": "formA",
+ "boundingRegions": [
+ {
+ "pageNumber": 1,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ },
+ {
+ "pageNumber": 2,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "confidence": 0.97,
+ "spans": []
+ },
+ {
+ "docType": "formB",
+ "boundingRegions": [
+ {
+ "pageNumber": 3,
+ "polygon": [
+ 0,
+ 0,
+ 8.5,
+ 0,
+ 8.5,
+ 11,
+ 0,
+ 11
+ ]
+ }
+ ],
+ "confidence": 0.97,
+ "spans": []
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentClassifier.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentClassifier.json
new file mode 100644
index 000000000000..376bf78ba417
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentClassifier.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "classifierId": "myClassifier"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "classifierId": "myClassifier",
+ "description": "Classifier description",
+ "createdDateTime": "2022-07-30T00:00:00Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-07-31",
+ "docTypes": {
+ "formA": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formADocs/"
+ }
+ },
+ "formB": {
+ "azureBlobFileListSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "fileList": "formB.jsonl"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentClassifiers.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentClassifiers.json
new file mode 100644
index 000000000000..d9e47160db5e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentClassifiers.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "classifierId": "classifier1",
+ "description": "Classifier1 description",
+ "createdDateTime": "2022-07-30T00:00:00Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-07-31",
+ "docTypes": {
+ "formA": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formADocs/"
+ }
+ },
+ "formB": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formBDocs/"
+ }
+ }
+ }
+ },
+ {
+ "classifierId": "classifier2",
+ "description": "Classifier2 description",
+ "createdDateTime": "2022-07-30T00:00:00Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-07-31",
+ "docTypes": {
+ "formB": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formBDocs/"
+ }
+ },
+ "formC": {
+ "azureBlobSource": {
+ "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken",
+ "prefix": "formCDocs/"
+ }
+ }
+ }
+ }
+ ],
+ "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentClassifiers?nextLink=nextLinkData"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModel_Custom.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModel_Custom.json
new file mode 100644
index 000000000000..9562be774a20
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModel_Custom.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "myCustomModel"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelId": "myCustomModel",
+ "description": "Custom model description",
+ "createdDateTime": "2021-09-24T12:54:35Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "apiVersion": "2023-07-31",
+ "docTypes": {
+ "myForm": {
+ "fieldSchema": {
+ "Name": {
+ "type": "string"
+ },
+ "Date": {
+ "type": "date"
+ },
+ "Amount": {
+ "type": "number"
+ }
+ },
+ "buildMode": "template",
+ "fieldConfidence": {
+ "Name": 0.9,
+ "Date": 0.95,
+ "Amount": 0.93
+ }
+ }
+ },
+ "tags": {
+ "createdBy": "myUserId"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModel_Prebuilt.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModel_Prebuilt.json
new file mode 100644
index 000000000000..77d9731ae97d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModel_Prebuilt.json
@@ -0,0 +1,134 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "modelId": "prebuilt-invoice"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelId": "prebuilt-invoice",
+ "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.",
+ "createdDateTime": "2021-07-30T00:00:00Z",
+ "apiVersion": "2023-07-31",
+ "docTypes": {
+ "prebuilt:invoice": {
+ "fieldSchema": {
+ "CustomerName": {
+ "type": "string"
+ },
+ "CustomerId": {
+ "type": "string"
+ },
+ "PurchaseOrder": {
+ "type": "string"
+ },
+ "InvoiceId": {
+ "type": "string"
+ },
+ "InvoiceDate": {
+ "type": "date"
+ },
+ "DueDate": {
+ "type": "date"
+ },
+ "VendorName": {
+ "type": "string"
+ },
+ "VendorAddress": {
+ "type": "string"
+ },
+ "VendorAddressRecipient": {
+ "type": "string"
+ },
+ "CustomerAddress": {
+ "type": "string"
+ },
+ "CustomerAddressRecipient": {
+ "type": "string"
+ },
+ "BillingAddress": {
+ "type": "string"
+ },
+ "BillingAddressRecipient": {
+ "type": "string"
+ },
+ "ShippingAddress": {
+ "type": "string"
+ },
+ "ShippingAddressRecipient": {
+ "type": "string"
+ },
+ "SubTotal": {
+ "type": "number"
+ },
+ "TotalTax": {
+ "type": "number"
+ },
+ "InvoiceTotal": {
+ "type": "number"
+ },
+ "AmountDue": {
+ "type": "number"
+ },
+ "PreviousUnpaidBalance": {
+ "type": "number"
+ },
+ "RemittanceAddress": {
+ "type": "string"
+ },
+ "RemittanceAddressRecipient": {
+ "type": "string"
+ },
+ "ServiceAddress": {
+ "type": "string"
+ },
+ "ServiceAddressRecipient": {
+ "type": "string"
+ },
+ "ServiceStartDate": {
+ "type": "date"
+ },
+ "ServiceEndDate": {
+ "type": "date"
+ },
+ "Items": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "Amount": {
+ "type": "number"
+ },
+ "Date": {
+ "type": "date"
+ },
+ "Description": {
+ "type": "string"
+ },
+ "Quantity": {
+ "type": "number"
+ },
+ "ProductCode": {
+ "type": "string"
+ },
+ "Tax": {
+ "type": "number"
+ },
+ "Unit": {
+ "type": "string"
+ },
+ "UnitPrice": {
+ "type": "number"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "tags": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModels.json
new file mode 100644
index 000000000000..00c4146e8431
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetDocumentModels.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "modelId": "prebuilt-layout",
+ "createdDateTime": "2021-07-30T00:00:00Z",
+ "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.",
+ "apiVersion": "2023-07-31"
+ },
+ {
+ "modelId": "myCustomModel",
+ "createdDateTime": "2021-09-24T12:54:35Z",
+ "expirationDateTime": "2023-01-01T00:00:00Z",
+ "description": "Custom model description",
+ "apiVersion": "2023-07-31"
+ }
+ ],
+ "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels?nextLink=nextLinkData"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetOperation.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetOperation.json
new file mode 100644
index 000000000000..7f51fd4e741e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetOperation.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31",
+ "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "operationId": "31533879936_426a3e4c-c6fb-4c83-937c-a92414c371a4",
+ "status": "succeeded",
+ "percentCompleted": 100,
+ "createdDateTime": "2021-09-23T09:12:57Z",
+ "lastUpdatedDateTime": "2021-09-23T09:13:01Z",
+ "kind": "documentModelBuild",
+ "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/myCustomModel",
+ "result": {
+ "modelId": "myCustomModel",
+ "description": "Custom model description",
+ "createdDateTime": "2021-09-23T09:13:01Z",
+ "apiVersion": "2023-07-31"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetOperations.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetOperations.json
new file mode 100644
index 000000000000..49afff9eebea
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetOperations.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4",
+ "status": "running",
+ "percentCompleted": 0,
+ "createdDateTime": "2021-09-23T09:12:57Z",
+ "lastUpdatedDateTime": "2021-09-23T09:12:58Z",
+ "kind": "documentModelBuild",
+ "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/documentModels/myCustomModel",
+ "apiVersion": "2023-07-31"
+ }
+ ],
+ "nextLink": "https://myendpoint.cognitiveservices.azure.com/formrecognizer/operations?nextLink=nextLinkData"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetResourceDetails.json b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetResourceDetails.json
new file mode 100644
index 000000000000..1deefed1d0ff
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/FormRecognizer/stable/2023-07-31/examples/GetResourceDetails.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "endpoint": "https://myendpoint.cognitiveservices.azure.com",
+ "api-version": "2023-07-31"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "customDocumentModels": {
+ "count": 2,
+ "limit": 13
+ },
+ "customNeuralDocumentModelBuilds": {
+ "used": 1,
+ "quota": 10,
+ "quotaResetDateTime": "2023-03-01T00:00:00Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/HealthInsights/preview/2023-03-01-preview/openapi.json b/specification/cognitiveservices/data-plane/HealthInsights/preview/2023-03-01-preview/openapi.json
index b3c226255a51..f843cc3e4725 100644
--- a/specification/cognitiveservices/data-plane/HealthInsights/preview/2023-03-01-preview/openapi.json
+++ b/specification/cognitiveservices/data-plane/HealthInsights/preview/2023-03-01-preview/openapi.json
@@ -42,8 +42,8 @@
"securityDefinitions": {
"ApiKeyAuth": {
"type": "apiKey",
- "in": "header",
- "name": "Ocp-Apim-Subscription-Key"
+ "name": "Ocp-Apim-Subscription-Key",
+ "in": "header"
}
},
"tags": [
@@ -57,10 +57,10 @@
"paths": {
"/oncophenotype/jobs": {
"post": {
+ "operationId": "OncoPhenotype_CreateJob",
"tags": [
"OncoPhenotype"
],
- "operationId": "OncoPhenotype_CreateJob",
"summary": "Create Onco Phenotype job",
"description": "Creates an Onco Phenotype job with the given request body.",
"parameters": [
@@ -76,10 +76,10 @@
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/OncoPhenotypeData"
- },
- "required": true
+ }
}
],
"responses": {
@@ -93,18 +93,18 @@
"description": "The request has been accepted for processing, but processing has not yet completed.",
"headers": {
"Operation-Location": {
- "description": "The location for monitoring the operation state.",
"type": "string",
- "format": "uri"
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
},
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"Repeatability-Result": {
- "description": "Indicates whether the repeatable request was accepted or rejected.",
"type": "string",
+ "description": "Indicates whether the repeatable request was accepted or rejected.",
"enum": [
"accepted",
"rejected"
@@ -114,14 +114,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -129,15 +129,16 @@
"Creates an Onco Phenotype job with the given request body.": {
"$ref": "./examples/SuccessfulOncoPhenotypeRequest.json"
}
- }
+ },
+ "x-ms-long-running-operation": true
}
},
"/oncophenotype/jobs/{jobId}": {
"get": {
+ "operationId": "OncoPhenotype_GetJob",
"tags": [
"OncoPhenotype"
],
- "operationId": "OncoPhenotype_GetJob",
"summary": "Get Onco Phenotype job details",
"description": "Gets the status and details of the Onco Phenotype job.",
"parameters": [
@@ -147,8 +148,8 @@
{
"name": "jobId",
"in": "path",
- "required": true,
"description": "A processing job identifier.",
+ "required": true,
"type": "string",
"format": "uuid"
}
@@ -162,14 +163,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -182,10 +183,10 @@
},
"/trialmatcher/jobs": {
"post": {
+ "operationId": "TrialMatcher_CreateJob",
"tags": [
"TrialMatcher"
],
- "operationId": "TrialMatcher_CreateJob",
"summary": "Create Trial Matcher job",
"description": "Creates a Trial Matcher job with the given request body.",
"parameters": [
@@ -201,10 +202,10 @@
{
"name": "body",
"in": "body",
+ "required": true,
"schema": {
"$ref": "#/definitions/TrialMatcherData"
- },
- "required": true
+ }
}
],
"responses": {
@@ -218,18 +219,18 @@
"description": "The request has been accepted for processing, but processing has not yet completed.",
"headers": {
"Operation-Location": {
- "description": "The location for monitoring the operation state.",
"type": "string",
- "format": "uri"
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
},
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"Repeatability-Result": {
- "description": "Indicates whether the repeatable request was accepted or rejected.",
"type": "string",
+ "description": "Indicates whether the repeatable request was accepted or rejected.",
"enum": [
"accepted",
"rejected"
@@ -239,14 +240,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -254,15 +255,16 @@
"Creates a Trial Matcher job with the given request body.": {
"$ref": "./examples/SuccessfulTrialMatcherRequest.json"
}
- }
+ },
+ "x-ms-long-running-operation": true
}
},
"/trialmatcher/jobs/{jobId}": {
"get": {
+ "operationId": "TrialMatcher_GetJob",
"tags": [
"TrialMatcher"
],
- "operationId": "TrialMatcher_GetJob",
"summary": "Get Trial Matcher job details",
"description": "Gets the status and details of the Trial Matcher job.",
"parameters": [
@@ -272,8 +274,8 @@
{
"name": "jobId",
"in": "path",
- "required": true,
"description": "A processing job identifier.",
+ "required": true,
"type": "string",
"format": "uuid"
}
@@ -287,14 +289,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -309,6 +311,7 @@
"definitions": {
"AcceptedAge": {
"type": "object",
+ "description": "A person's age, given as a number (value) and a unit (e.g. years, months)",
"properties": {
"unit": {
"$ref": "#/definitions/AgeUnit",
@@ -320,7 +323,6 @@
"description": "The number of years/months/days that represents the person's age."
}
},
- "description": "A person's age, given as a number (value) and a unit (e.g. years, months)",
"required": [
"unit",
"value"
@@ -328,6 +330,7 @@
},
"AcceptedAgeRange": {
"type": "object",
+ "description": "A definition of the range of ages accepted by a clinical trial. Contains a minimum age and/or a maximum age.",
"properties": {
"minimumAge": {
"$ref": "#/definitions/AcceptedAge",
@@ -337,8 +340,7 @@
"$ref": "#/definitions/AcceptedAge",
"description": "A person's age, given as a number (value) and a unit (e.g. years, months)"
}
- },
- "description": "A definition of the range of ages accepted by a clinical trial. Contains a minimum age and/or a maximum age."
+ }
},
"AgeUnit": {
"type": "string",
@@ -385,6 +387,7 @@
},
"AreaGeometry": {
"type": "object",
+ "description": "`GeoJSON` geometry, representing the area circle's center.",
"properties": {
"type": {
"$ref": "#/definitions/GeoJsonGeometryType",
@@ -392,17 +395,15 @@
},
"coordinates": {
"type": "array",
+ "description": "Coordinates of the area circle's center, represented according to the `GeoJSON` standard.\nThis is an array of 2 decimal numbers, longitude and latitude (precisely in this order).",
+ "minItems": 2,
+ "maxItems": 2,
"items": {
"type": "number",
"format": "float"
- },
- "description": "Coordinates of the area circle's center, represented according to the `GeoJSON` standard.\nThis is an array of 2 decimal numbers, longitude and latitude (precisely in this order).",
- "x-typespec-name": "float32[]",
- "minItems": 2,
- "maxItems": 2
+ }
}
},
- "description": "`GeoJSON` geometry, representing the area circle's center.",
"required": [
"type",
"coordinates"
@@ -410,6 +411,7 @@
},
"AreaProperties": {
"type": "object",
+ "description": "`GeoJSON` object properties.",
"properties": {
"subType": {
"$ref": "#/definitions/GeoJsonPropertiesSubType",
@@ -421,7 +423,6 @@
"description": "The radius of the area's circle, in meters."
}
},
- "description": "`GeoJSON` object properties.",
"required": [
"subType",
"radius"
@@ -429,6 +430,7 @@
},
"Azure.Core.Foundations.Error": {
"type": "object",
+ "description": "The error object.",
"properties": {
"code": {
"type": "string",
@@ -444,19 +446,17 @@
},
"details": {
"type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of details about specific errors that led to this reported error.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]"
+ "x-ms-identifiers": []
},
"innererror": {
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "An object containing more specific information than the current object about the error."
}
},
- "description": "The error object.",
"required": [
"code",
"message"
@@ -464,19 +464,20 @@
},
"Azure.Core.Foundations.ErrorResponse": {
"type": "object",
+ "description": "A response containing error details.",
"properties": {
"error": {
"$ref": "#/definitions/Azure.Core.Foundations.Error",
"description": "The error object."
}
},
- "description": "A response containing error details.",
"required": [
"error"
]
},
"Azure.Core.Foundations.InnerError": {
"type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
"properties": {
"code": {
"type": "string",
@@ -486,11 +487,11 @@
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "Inner error."
}
- },
- "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses."
+ }
},
"ClinicalCodedElement": {
"type": "object",
+ "description": "A piece of clinical information, expressed as a code in a clinical coding system.",
"properties": {
"system": {
"type": "string",
@@ -509,7 +510,6 @@
"description": "A value associated with the code within the given clinical coding system."
}
},
- "description": "A piece of clinical information, expressed as a code in a clinical coding system.",
"required": [
"system",
"code"
@@ -569,6 +569,7 @@
},
"ClinicalNoteEvidence": {
"type": "object",
+ "description": "A piece of evidence from a clinical note (text document).",
"properties": {
"id": {
"type": "string",
@@ -591,7 +592,6 @@
"minimum": 1
}
},
- "description": "A piece of evidence from a clinical note (text document).",
"required": [
"id",
"offset",
@@ -627,6 +627,7 @@
},
"ClinicalTrialDemographics": {
"type": "object",
+ "description": "Demographic criteria for a clinical trial.",
"properties": {
"acceptedSex": {
"$ref": "#/definitions/ClinicalTrialAcceptedSex",
@@ -636,11 +637,11 @@
"$ref": "#/definitions/AcceptedAgeRange",
"description": "A definition of the range of ages accepted by a clinical trial. Contains a minimum age and/or a maximum age."
}
- },
- "description": "Demographic criteria for a clinical trial."
+ }
},
"ClinicalTrialDetails": {
"type": "object",
+ "description": "A description of a clinical trial.",
"properties": {
"id": {
"type": "string",
@@ -660,7 +661,6 @@
"description": "Trial data which is of interest to the potential participant."
}
},
- "description": "A description of a clinical trial.",
"required": [
"id",
"metadata"
@@ -668,14 +668,14 @@
},
"ClinicalTrialMetadata": {
"type": "object",
+ "description": "Trial data which is of interest to the potential participant.",
"properties": {
"phases": {
"type": "array",
+ "description": "Phases which are relevant for the clinical trial.\nEach clinical trial can be in a certain phase or in multiple phases.",
"items": {
"$ref": "#/definitions/ClinicalTrialPhase"
- },
- "description": "Phases which are relevant for the clinical trial.\nEach clinical trial can be in a certain phase or in multiple phases.",
- "x-typespec-name": "ClinicalTrialPhase[]"
+ }
},
"studyType": {
"$ref": "#/definitions/ClinicalTrialStudyType",
@@ -687,41 +687,36 @@
},
"conditions": {
"type": "array",
+ "description": "Medical conditions and their synonyms which are relevant for the clinical trial, given as strings.",
+ "minItems": 1,
"items": {
"type": "string"
- },
- "description": "Medical conditions and their synonyms which are relevant for the clinical trial, given as strings.",
- "x-typespec-name": "string[]",
- "minItems": 1
+ }
},
"sponsors": {
"type": "array",
+ "description": "Sponsors/collaborators involved with the trial.",
"items": {
"type": "string"
- },
- "description": "Sponsors/collaborators involved with the trial.",
- "x-typespec-name": "string[]"
+ }
},
"contacts": {
"type": "array",
+ "description": "Contact details of the trial administrators, for patients that want to participate in the trial.",
"items": {
"$ref": "#/definitions/ContactDetails"
},
- "x-ms-identifiers": [],
- "description": "Contact details of the trial administrators, for patients that want to participate in the trial.",
- "x-typespec-name": "ContactDetails[]"
+ "x-ms-identifiers": []
},
"facilities": {
"type": "array",
+ "description": "Research facilities where the clinical trial is conducted.",
"items": {
"$ref": "#/definitions/ClinicalTrialResearchFacility"
},
- "x-ms-identifiers": [],
- "description": "Research facilities where the clinical trial is conducted.",
- "x-typespec-name": "ClinicalTrialResearchFacility[]"
+ "x-ms-identifiers": []
}
},
- "description": "Trial data which is of interest to the potential participant.",
"required": [
"conditions"
]
@@ -864,102 +859,92 @@
},
"ClinicalTrialRegistryFilter": {
"type": "object",
+ "description": "A filter defining a subset of clinical trials from a given clinical trial registry (e.g. clinicaltrials.gov).",
"properties": {
"conditions": {
"type": "array",
+ "description": "Trials with any of the given medical conditions will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the medical conditions.",
"items": {
"type": "string"
- },
- "description": "Trials with any of the given medical conditions will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the medical conditions.",
- "x-typespec-name": "string[]"
+ }
},
"studyTypes": {
"type": "array",
+ "description": "Trials with any of the given study types will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the study types.",
"items": {
"$ref": "#/definitions/ClinicalTrialStudyType"
- },
- "description": "Trials with any of the given study types will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the study types.",
- "x-typespec-name": "ClinicalTrialStudyType[]"
+ }
},
"recruitmentStatuses": {
"type": "array",
+ "description": "Trials with any of the given recruitment statuses will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the recruitment statuses.",
"items": {
"$ref": "#/definitions/ClinicalTrialRecruitmentStatus"
- },
- "description": "Trials with any of the given recruitment statuses will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the recruitment statuses.",
- "x-typespec-name": "ClinicalTrialRecruitmentStatus[]"
+ }
},
"sponsors": {
"type": "array",
+ "description": "Trials with any of the given sponsors will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the sponsors.",
"items": {
"type": "string"
- },
- "description": "Trials with any of the given sponsors will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the sponsors.",
- "x-typespec-name": "string[]"
+ }
},
"phases": {
"type": "array",
+ "description": "Trials with any of the given phases will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the phases.",
"items": {
"$ref": "#/definitions/ClinicalTrialPhase"
- },
- "description": "Trials with any of the given phases will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the phases.",
- "x-typespec-name": "ClinicalTrialPhase[]"
+ }
},
"purposes": {
"type": "array",
+ "description": "Trials with any of the given purposes will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the purposes.",
"items": {
"$ref": "#/definitions/ClinicalTrialPurpose"
- },
- "description": "Trials with any of the given purposes will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the purposes.",
- "x-typespec-name": "ClinicalTrialPurpose[]"
+ }
},
"ids": {
"type": "array",
+ "description": "Trials with any of the given identifiers will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial identifiers.",
"items": {
"type": "string"
- },
- "description": "Trials with any of the given identifiers will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial identifiers.",
- "x-typespec-name": "string[]"
+ }
},
"sources": {
"type": "array",
+ "description": "Trials with any of the given sources will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the sources.",
"items": {
"$ref": "#/definitions/ClinicalTrialSource"
- },
- "description": "Trials with any of the given sources will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the sources.",
- "x-typespec-name": "ClinicalTrialSource[]"
+ }
},
"facilityNames": {
"type": "array",
+ "description": "Trials with any of the given facility names will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial facility names.",
"items": {
"type": "string"
- },
- "description": "Trials with any of the given facility names will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial facility names.",
- "x-typespec-name": "string[]"
+ }
},
"facilityLocations": {
"type": "array",
+ "description": "Trials with any of the given facility locations will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial facility locations.",
"items": {
"$ref": "#/definitions/GeographicLocation"
},
- "x-ms-identifiers": [],
- "description": "Trials with any of the given facility locations will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial facility locations.",
- "x-typespec-name": "GeographicLocation[]"
+ "x-ms-identifiers": []
},
"facilityAreas": {
"type": "array",
+ "description": "Trials with any of the given facility area boundaries will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial facility area boundaries.",
"items": {
"$ref": "#/definitions/GeographicArea"
},
- "x-ms-identifiers": [],
- "description": "Trials with any of the given facility area boundaries will be included in the selection (provided that other limitations are satisfied).\nLeaving this list empty will not limit the trial facility area boundaries.",
- "x-typespec-name": "GeographicArea[]"
+ "x-ms-identifiers": []
}
- },
- "description": "A filter defining a subset of clinical trials from a given clinical trial registry (e.g. clinicaltrials.gov)."
+ }
},
"ClinicalTrialResearchFacility": {
"type": "object",
+ "description": "Details of a research facility where a clinical trial is conducted.",
"properties": {
"name": {
"type": "string",
@@ -978,7 +963,6 @@
"description": "Country/region name."
}
},
- "description": "Details of a research facility where a clinical trial is conducted.",
"required": [
"name",
"countryOrRegion"
@@ -1040,31 +1024,30 @@
},
"ClinicalTrials": {
"type": "object",
+ "description": "The clinical trials that the patient(s) should be matched to. \nThe trial selection can be given as a list of custom clinical trials and/or a list of filters to known clinical trial registries.\nIn case both are given, the resulting trial set is a union of the two sets.",
"properties": {
"customTrials": {
"type": "array",
+ "description": "A list of clinical trials.",
+ "minItems": 1,
"items": {
"$ref": "#/definitions/ClinicalTrialDetails"
- },
- "description": "A list of clinical trials.",
- "x-typespec-name": "ClinicalTrialDetails[]",
- "minItems": 1
+ }
},
"registryFilters": {
"type": "array",
+ "description": "A list of filters, each one creating a selection of trials from a given\nclinical trial registry.",
+ "minItems": 1,
"items": {
"$ref": "#/definitions/ClinicalTrialRegistryFilter"
},
- "x-ms-identifiers": [],
- "description": "A list of filters, each one creating a selection of trials from a given\nclinical trial registry.",
- "x-typespec-name": "ClinicalTrialRegistryFilter[]",
- "minItems": 1
+ "x-ms-identifiers": []
}
- },
- "description": "The clinical trials that the patient(s) should be matched to. \nThe trial selection can be given as a list of custom clinical trials and/or a list of filters to known clinical trial registries.\nIn case both are given, the resulting trial set is a union of the two sets."
+ }
},
"ContactDetails": {
"type": "object",
+ "description": "A person's contact details.",
"properties": {
"name": {
"type": "string",
@@ -1078,11 +1061,11 @@
"type": "string",
"description": "A person's phone number."
}
- },
- "description": "A person's contact details."
+ }
},
"DocumentContent": {
"type": "object",
+ "description": "The content of the patient document.",
"properties": {
"sourceType": {
"$ref": "#/definitions/DocumentContentSourceType",
@@ -1093,7 +1076,6 @@
"description": "The content of the document, given either inline (as a string) or as a reference (URI)."
}
},
- "description": "The content of the patient document.",
"required": [
"sourceType",
"value"
@@ -1155,6 +1137,7 @@
},
"ExtendedClinicalCodedElement": {
"type": "object",
+ "description": "A piece of clinical information, expressed as a code in a clinical coding system, extended by semantic information.",
"properties": {
"system": {
"type": "string",
@@ -1181,7 +1164,6 @@
"description": "The bio-medical category related to the coded concept, e.g. Diagnosis, Symptom, Medication, Examination."
}
},
- "description": "A piece of clinical information, expressed as a code in a clinical coding system, extended by semantic information.",
"required": [
"system",
"code"
@@ -1240,6 +1222,7 @@
},
"GeographicArea": {
"type": "object",
+ "description": "A geographic area, expressed as a `Circle` geometry represented using a `GeoJSON Feature` (see [GeoJSON spec](https://tools.ietf.org/html/rfc7946)).",
"properties": {
"type": {
"$ref": "#/definitions/GeoJsonType",
@@ -1254,7 +1237,6 @@
"description": "`GeoJSON` object properties."
}
},
- "description": "A geographic area, expressed as a `Circle` geometry represented using a `GeoJSON Feature` (see [GeoJSON spec](https://tools.ietf.org/html/rfc7946)).",
"required": [
"type",
"geometry",
@@ -1263,6 +1245,7 @@
},
"GeographicLocation": {
"type": "object",
+ "description": "A location given as a combination of city, state and country/region. It could specify a city, a state or a country/region.\nIn case a city is specified, either state +country/region or country/region (for countries/regions where there are no states) should be added.\nIn case a state is specified (without a city), country/region should be added.",
"properties": {
"city": {
"type": "string",
@@ -1277,13 +1260,13 @@
"description": "Country/region name."
}
},
- "description": "A location given as a combination of city, state and country/region. It could specify a city, a state or a country/region.\nIn case a city is specified, either state +country/region or country/region (for countries/regions where there are no states) should be added.\nIn case a state is specified (without a city), country/region should be added.",
"required": [
"countryOrRegion"
]
},
"Inference": {
"type": "object",
+ "description": "An inference made by the model regarding a patient.",
"properties": {
"value": {
"type": "string",
@@ -1301,13 +1284,13 @@
"maximum": 1
}
},
- "description": "An inference made by the model regarding a patient.",
"required": [
"value"
]
},
"InferenceEvidence": {
"type": "object",
+ "description": "A piece of evidence corresponding to an inference.",
"properties": {
"patientDataEvidence": {
"$ref": "#/definitions/ClinicalNoteEvidence",
@@ -1324,8 +1307,7 @@
"minimum": 0,
"maximum": 1
}
- },
- "description": "A piece of evidence corresponding to an inference."
+ }
},
"JobStatus": {
"type": "string",
@@ -1370,35 +1352,35 @@
},
"NeededClinicalInfo": {
"type": "array",
+ "description": "Clinical information which is needed to provide better trial matching results for the patient.",
"items": {
"$ref": "#/definitions/ExtendedClinicalCodedElement"
},
- "x-ms-identifiers": [],
- "description": "Clinical information which is needed to provide better trial matching results for the patient."
+ "x-ms-identifiers": []
},
"OncoPhenotypeData": {
"type": "object",
+ "description": "The body of the Onco Phenotype request.",
"properties": {
"patients": {
"type": "array",
+ "description": "The list of patients, including their clinical information and data.",
"items": {
"$ref": "#/definitions/PatientRecord"
- },
- "description": "The list of patients, including their clinical information and data.",
- "x-typespec-name": "PatientRecord[]"
+ }
},
"configuration": {
"$ref": "#/definitions/OncoPhenotypeModelConfiguration",
"description": "Configuration affecting the Onco Phenotype model's inference."
}
},
- "description": "The body of the Onco Phenotype request.",
"required": [
"patients"
]
},
"OncoPhenotypeInference": {
"type": "object",
+ "description": "An inference made by the Onco Phenotype model regarding a patient.",
"properties": {
"type": {
"$ref": "#/definitions/OncoPhenotypeInferenceType",
@@ -1421,19 +1403,17 @@
},
"evidence": {
"type": "array",
+ "description": "The evidence corresponding to the inference value.",
"items": {
"$ref": "#/definitions/InferenceEvidence"
},
- "x-ms-identifiers": [],
- "description": "The evidence corresponding to the inference value.",
- "x-typespec-name": "InferenceEvidence[]"
+ "x-ms-identifiers": []
},
"caseId": {
"type": "string",
"description": "An identifier for a clinical case, if there are multiple clinical cases regarding the same patient."
}
},
- "description": "An inference made by the Onco Phenotype model regarding a patient.",
"required": [
"type",
"value"
@@ -1493,6 +1473,7 @@
},
"OncoPhenotypeModelConfiguration": {
"type": "object",
+ "description": "Configuration affecting the Onco Phenotype model's inference.",
"properties": {
"verbose": {
"type": "boolean",
@@ -1506,22 +1487,21 @@
},
"inferenceTypes": {
"type": "array",
+ "description": "A list of inference types to be inferred for the current request.\nThis could be used if only part of the Onco Phenotype inferences are required.\nIf this list is omitted or empty, the model will return all the inference types.",
"items": {
"$ref": "#/definitions/OncoPhenotypeInferenceType"
- },
- "description": "A list of inference types to be inferred for the current request.\nThis could be used if only part of the Onco Phenotype inferences are required.\nIf this list is omitted or empty, the model will return all the inference types.",
- "x-typespec-name": "OncoPhenotypeInferenceType[]"
+ }
},
"checkForCancerCase": {
"type": "boolean",
"description": "An indication whether to perform a preliminary step on the patient's documents to determine whether they relate to a Cancer case.",
"default": false
}
- },
- "description": "Configuration affecting the Onco Phenotype model's inference."
+ }
},
"OncoPhenotypePatientResult": {
"type": "object",
+ "description": "The results of the model's work for a single patient.",
"properties": {
"id": {
"type": "string",
@@ -1529,15 +1509,13 @@
},
"inferences": {
"type": "array",
+ "description": "The model's inferences for the given patient.",
"items": {
"$ref": "#/definitions/OncoPhenotypeInference"
},
- "x-ms-identifiers": [],
- "description": "The model's inferences for the given patient.",
- "x-typespec-name": "OncoPhenotypeInference[]"
+ "x-ms-identifiers": []
}
},
- "description": "The results of the model's work for a single patient.",
"required": [
"id",
"inferences"
@@ -1545,11 +1523,12 @@
},
"OncoPhenotypeResult": {
"type": "object",
+ "description": "The response for the Onco Phenotype request.",
"properties": {
"jobId": {
"type": "string",
- "description": "A processing job identifier.",
"format": "uuid",
+ "description": "A processing job identifier.",
"readOnly": true
},
"createdDateTime": {
@@ -1577,13 +1556,12 @@
},
"errors": {
"type": "array",
+ "description": "An array of errors, if any errors occurred during the processing job.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of errors, if any errors occurred during the processing job.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]",
- "readOnly": true
+ "readOnly": true,
+ "x-ms-identifiers": []
},
"results": {
"$ref": "#/definitions/OncoPhenotypeResults",
@@ -1591,7 +1569,6 @@
"readOnly": true
}
},
- "description": "The response for the Onco Phenotype request.",
"required": [
"jobId",
"createdDateTime",
@@ -1602,21 +1579,20 @@
},
"OncoPhenotypeResults": {
"type": "object",
+ "description": "The inference results for the Onco Phenotype request.",
"properties": {
"patients": {
"type": "array",
+ "description": "Results for the patients given in the request.",
"items": {
"$ref": "#/definitions/OncoPhenotypePatientResult"
- },
- "description": "Results for the patients given in the request.",
- "x-typespec-name": "OncoPhenotypePatientResult[]"
+ }
},
"modelVersion": {
"$ref": "#/definitions/ModelVersion",
"description": "The version of the model used for inference, expressed as the model date."
}
},
- "description": "The inference results for the Onco Phenotype request.",
"required": [
"patients",
"modelVersion"
@@ -1624,6 +1600,7 @@
},
"PatientDocument": {
"type": "object",
+ "description": "A clinical document related to a patient. Document here is in the wide sense - not just a text document (note).",
"properties": {
"type": {
"$ref": "#/definitions/DocumentType",
@@ -1652,7 +1629,6 @@
"description": "The content of the patient document."
}
},
- "description": "A clinical document related to a patient. Document here is in the wide sense - not just a text document (note).",
"required": [
"type",
"id",
@@ -1661,6 +1637,7 @@
},
"PatientInfo": {
"type": "object",
+ "description": "Patient structured information, including demographics and known structured clinical information.",
"properties": {
"sex": {
"$ref": "#/definitions/PatientInfoSex",
@@ -1673,15 +1650,13 @@
},
"clinicalInfo": {
"type": "array",
+ "description": "Known clinical information for the patient, structured.",
"items": {
"$ref": "#/definitions/ClinicalCodedElement"
},
- "x-ms-identifiers": [],
- "description": "Known clinical information for the patient, structured.",
- "x-typespec-name": "ClinicalCodedElement[]"
+ "x-ms-identifiers": []
}
- },
- "description": "Patient structured information, including demographics and known structured clinical information."
+ }
},
"PatientInfoSex": {
"type": "string",
@@ -1712,6 +1687,7 @@
},
"PatientRecord": {
"type": "object",
+ "description": "A patient record, including their clinical information and data.",
"properties": {
"id": {
"type": "string",
@@ -1724,41 +1700,39 @@
},
"data": {
"type": "array",
+ "description": "Patient unstructured clinical data, given as documents.",
"items": {
"$ref": "#/definitions/PatientDocument"
- },
- "description": "Patient unstructured clinical data, given as documents.",
- "x-typespec-name": "PatientDocument[]"
+ }
}
},
- "description": "A patient record, including their clinical information and data.",
"required": [
"id"
]
},
"TrialMatcherData": {
"type": "object",
+ "description": "The body of the Trial Matcher request.",
"properties": {
"patients": {
"type": "array",
+ "description": "The list of patients, including their clinical information and data.",
"items": {
"$ref": "#/definitions/PatientRecord"
- },
- "description": "The list of patients, including their clinical information and data.",
- "x-typespec-name": "PatientRecord[]"
+ }
},
"configuration": {
"$ref": "#/definitions/TrialMatcherModelConfiguration",
"description": "Configuration affecting the Trial Matcher model's inference."
}
},
- "description": "The body of the Trial Matcher request.",
"required": [
"patients"
]
},
"TrialMatcherInference": {
"type": "object",
+ "description": "An inference made by the Trial Matcher model regarding a patient.",
"properties": {
"type": {
"$ref": "#/definitions/TrialMatcherInferenceType",
@@ -1781,12 +1755,11 @@
},
"evidence": {
"type": "array",
+ "description": "The evidence corresponding to the inference value.",
"items": {
"$ref": "#/definitions/TrialMatcherInferenceEvidence"
},
- "x-ms-identifiers": [],
- "description": "The evidence corresponding to the inference value.",
- "x-typespec-name": "TrialMatcherInferenceEvidence[]"
+ "x-ms-identifiers": []
},
"id": {
"type": "string",
@@ -1802,7 +1775,6 @@
"description": "Trial data which is of interest to the potential participant."
}
},
- "description": "An inference made by the Trial Matcher model regarding a patient.",
"required": [
"type",
"value"
@@ -1810,6 +1782,7 @@
},
"TrialMatcherInferenceEvidence": {
"type": "object",
+ "description": "A piece of evidence corresponding to a Trial Matcher inference.",
"properties": {
"eligibilityCriteriaEvidence": {
"type": "string",
@@ -1830,8 +1803,7 @@
"minimum": 0,
"maximum": 1
}
- },
- "description": "A piece of evidence corresponding to a Trial Matcher inference."
+ }
},
"TrialMatcherInferenceType": {
"type": "string",
@@ -1852,6 +1824,7 @@
},
"TrialMatcherModelConfiguration": {
"type": "object",
+ "description": "Configuration affecting the Trial Matcher model's inference.",
"properties": {
"verbose": {
"type": "boolean",
@@ -1868,13 +1841,13 @@
"description": "The clinical trials that the patient(s) should be matched to.
The trial\nselection can be given as a list of custom clinical trials and/or a list of\nfilters to known clinical trial registries. In case both are given, the\nresulting trial set is a union of the two sets."
}
},
- "description": "Configuration affecting the Trial Matcher model's inference.",
"required": [
"clinicalTrials"
]
},
"TrialMatcherPatientResult": {
"type": "object",
+ "description": "The results of the model's work for a single patient.",
"properties": {
"id": {
"type": "string",
@@ -1882,18 +1855,16 @@
},
"inferences": {
"type": "array",
+ "description": "The model's inferences for the given patient.",
"items": {
"$ref": "#/definitions/TrialMatcherInference"
- },
- "description": "The model's inferences for the given patient.",
- "x-typespec-name": "TrialMatcherInference[]"
+ }
},
"neededClinicalInfo": {
"$ref": "#/definitions/NeededClinicalInfo",
"description": "Clinical information which is needed to provide better trial matching results for the patient."
}
},
- "description": "The results of the model's work for a single patient.",
"required": [
"id",
"inferences"
@@ -1901,11 +1872,12 @@
},
"TrialMatcherResult": {
"type": "object",
+ "description": "The response for the Trial Matcher request.",
"properties": {
"jobId": {
"type": "string",
- "description": "A processing job identifier.",
"format": "uuid",
+ "description": "A processing job identifier.",
"readOnly": true
},
"createdDateTime": {
@@ -1933,13 +1905,12 @@
},
"errors": {
"type": "array",
+ "description": "An array of errors, if any errors occurred during the processing job.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of errors, if any errors occurred during the processing job.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]",
- "readOnly": true
+ "readOnly": true,
+ "x-ms-identifiers": []
},
"results": {
"$ref": "#/definitions/TrialMatcherResults",
@@ -1947,7 +1918,6 @@
"readOnly": true
}
},
- "description": "The response for the Trial Matcher request.",
"required": [
"jobId",
"createdDateTime",
@@ -1958,14 +1928,14 @@
},
"TrialMatcherResults": {
"type": "object",
+ "description": "The inference results for the Trial Matcher request.",
"properties": {
"patients": {
"type": "array",
+ "description": "Results for the patients given in the request.",
"items": {
"$ref": "#/definitions/TrialMatcherPatientResult"
- },
- "description": "Results for the patients given in the request.",
- "x-typespec-name": "TrialMatcherPatientResult[]"
+ }
},
"modelVersion": {
"$ref": "#/definitions/ModelVersion",
@@ -1977,7 +1947,6 @@
"description": "The date when the clinical trials knowledge graph was last updated."
}
},
- "description": "The inference results for the Trial Matcher request.",
"required": [
"patients",
"modelVersion"
@@ -1988,31 +1957,31 @@
"Azure.Core.Foundations.ApiVersionParameter": {
"name": "api-version",
"in": "query",
- "required": true,
"description": "The API version to use for this operation.",
- "x-ms-client-name": "apiVersion",
+ "required": true,
"type": "string",
"minLength": 1,
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
},
"Azure.Core.RepeatabilityRequestHeaders.repeatabilityFirstSent": {
"name": "Repeatability-First-Sent",
"in": "header",
- "required": false,
"description": "Specifies the date and time at which the request was first created.",
- "x-ms-client-name": "repeatabilityFirstSent",
+ "required": false,
"type": "string",
"format": "date-time",
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "repeatabilityFirstSent"
},
"Azure.Core.RepeatabilityRequestHeaders.repeatabilityRequestId": {
"name": "Repeatability-Request-ID",
"in": "header",
- "required": false,
"description": "An opaque, globally-unique, client-generated string identifier for the request.",
- "x-ms-client-name": "repeatabilityRequestId",
+ "required": false,
"type": "string",
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "repeatabilityRequestId"
}
}
}
diff --git a/specification/cognitiveservices/data-plane/Language/readme.md b/specification/cognitiveservices/data-plane/Language/readme.md
index 3dd5c2e95b05..561a46647aa3 100644
--- a/specification/cognitiveservices/data-plane/Language/readme.md
+++ b/specification/cognitiveservices/data-plane/Language/readme.md
@@ -205,11 +205,3 @@ This is not used by Autorest itself.
swagger-to-sdk:
- repo: azure-sdk-for-net-track2
```
-
-## Suppression
-
-``` yaml
-directive:
- - suppress: MISSING_APIS_IN_DEFAULT_TAG
- reason: Not every service will ship new versions within the Language pillar.
-```
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/UnifiedVision.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/UnifiedVision.json
new file mode 100644
index 000000000000..a4ae46a9e2e2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/UnifiedVision.json
@@ -0,0 +1,3305 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Computer Vision Client",
+ "description": "The Computer Vision API provides state-of-the-art algorithms to process images and return information. For example, it can be used to extract text using Read OCR, caption an image using descriptive natural language, detect objects, people, and more.",
+ "version": "2023-04-01-preview"
+ },
+ "paths": {
+ "/imageanalysis:segment": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Analyze the input image. The request either contains an image stream with any content type ['image/*', 'application/octet-stream'], or a JSON payload which includes a url property to be used to retrieve the image stream. An image stream of content type 'image/png' is returned, where the pixel values depend on the analysis mode. The returned image has the same dimensions as the input image for modes: foregroundMatting. The returned image has the same aspect ratio and same dimensions as the input image up to a limit of 16 megapixels for modes: backgroundRemoval.",
+ "operationId": "ImageAnalysis_Segment",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "image/png",
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "mode",
+ "description": "The analysis mode requested.",
+ "type": "string",
+ "enum": [
+ "backgroundRemoval",
+ "foregroundMatting"
+ ],
+ "x-ms-enum": {
+ "name": "SegmentationMode",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "A JSON document with a URL pointing to the image that is to be analyzed.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageUrl"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Segment_BackgroundRemoval_FromImageUrl": {
+ "$ref": "./examples/Segment_BackgroundRemoval_FromImageUrl.json"
+ },
+ "Segment_ForegroundMatting_FromImageUrl": {
+ "$ref": "./examples/Segment_ForegroundMatting_FromImageUrl.json"
+ }
+ }
+ }
+ },
+ "/retrieval:vectorizeText": {
+ "post": {
+ "tags": [
+ "ImageRetrieval"
+ ],
+ "summary": "Return vector from a text.",
+ "operationId": "ImageRetrieval_VectorizeText",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "model-version",
+ "description": "Model version.",
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request of VectorizeText.",
+ "schema": {
+ "$ref": "#/definitions/VectorizeTextRequestApiModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SingleVectorResultApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImageRetrieval_VectorizeText": {
+ "$ref": "./examples/ImageRetrieval_VectorizeText.json"
+ }
+ }
+ }
+ },
+ "/retrieval:vectorizeImage": {
+ "post": {
+ "tags": [
+ "ImageRetrieval"
+ ],
+ "summary": "Return vector from an image.",
+ "operationId": "ImageRetrieval_VectorizeImage",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "model-version",
+ "description": "Model version.",
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "A JSON document with a URL pointing to the image that is to be analyzed.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageUrl"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SingleVectorResultApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImageRetrieval_VectorizeImage": {
+ "$ref": "./examples/ImageRetrieval_VectorizeImage.json"
+ }
+ }
+ }
+ },
+ "/imagecomposition:stitch": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Run the image stitching operation against a sequence of images.",
+ "operationId": "ImageComposition_Stitch",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "image/jpeg",
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Input images urls that pass into image stitching operation.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageStitchingRequestApiModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImageComposition_Stitch": {
+ "$ref": "./examples/ImageComposition_Stitch.json"
+ }
+ }
+ }
+ },
+ "/imagecomposition:rectify": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Run the image rectification operation against an image with 4 control points provided in the parameter.",
+ "operationId": "ImageComposition_Rectify",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "image/jpeg",
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Input image url and control points that are passed into rectification operation.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageRectificationRequestApiModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImageComposition_Rectify": {
+ "$ref": "./examples/ImageComposition_Rectify.json"
+ }
+ }
+ }
+ },
+ "/planogramcompliance:match": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Run the planogram matching operation against a planogram and a product understanding result.",
+ "operationId": "PlanogramCompliance_Match",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Input to pass into the planogram matching operation.",
+ "schema": {
+ "$ref": "#/definitions/PlanogramMatchingRequestApiModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PlanogramMatchingResultApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PlanogramCompliance_Match": {
+ "$ref": "./examples/PlanogramCompliance_Match.json"
+ }
+ }
+ }
+ },
+ "/productrecognition/{modelName}/runs/{runName}": {
+ "put": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Run the product recognition against a model with an image.",
+ "operationId": "ProductRecognition_Create",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "modelName",
+ "description": "The name of the model to run product recognition with.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "path",
+ "name": "runName",
+ "description": "The name of the product recognition run.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ProductRecognitionApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ProductRecognition_Create": {
+ "$ref": "./examples/ProductRecognition_Create.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Get information about a specific product recognition run.",
+ "operationId": "ProductRecognition_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "modelName",
+ "description": "The name of the model the product recognition run belongs to.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "path",
+ "name": "runName",
+ "description": "The name of the product recognition run.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ProductRecognitionApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ProductRecognition_Get": {
+ "$ref": "./examples/ProductRecognition_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Delete a product recognition run. A product recognition run can be deleted if it is in the 'Succeeded' or 'Failed' states.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A product recognition run with the specified name was not found.",
+ "operationId": "ProductRecognition_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "modelName",
+ "description": "The name of the model to delete the product recognition run for.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "path",
+ "name": "runName",
+ "description": "The name of the product recognition run.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ProductRecognition_Delete": {
+ "$ref": "./examples/ProductRecognition_Delete.json"
+ }
+ }
+ }
+ },
+ "/productrecognition/{modelName}/runs": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "List all product recognition run of a model.",
+ "operationId": "ProductRecognition_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "modelName",
+ "description": "The name of the model the product recognition runs belongs to.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "query",
+ "name": "skip",
+ "description": "Number of product recognition runs to be skipped.",
+ "type": "integer",
+ "format": "int32",
+ "default": 0,
+ "maximum": 2147483647,
+ "minimum": 0
+ },
+ {
+ "in": "query",
+ "name": "top",
+ "description": "Number of product recognition runs to be returned after skipping. The maximum allowed value is 30.",
+ "type": "integer",
+ "format": "int32",
+ "default": 10,
+ "maximum": 30,
+ "minimum": 1
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ProductRecognitionApiModelCollectionApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ProductRecognition_List": {
+ "$ref": "./examples/ProductRecognition_List.json"
+ }
+ }
+ }
+ },
+ "/imageanalysis:analyze": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Analyze the input image. The request either contains image stream with any content type ['image/*', 'application/octet-stream'], or a JSON payload which includes an url property to be used to retrieve the image stream.",
+ "operationId": "ImageAnalysis_Analyze",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "features",
+ "description": "The visual features requested: tags, objects, caption, denseCaptions, read, smartCrops, people. This parameter needs to be specified if the parameter \"model-name\" is not specified.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "tags",
+ "caption",
+ "denseCaptions",
+ "objects",
+ "read",
+ "smartCrops",
+ "people"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "VisualFeature",
+ "modelAsString": true
+ }
+ },
+ "collectionFormat": "csv"
+ },
+ {
+ "in": "query",
+ "name": "model-name",
+ "description": "The name of the custom trained model. This parameter needs to be specified if the parameter \"features\" is not specified.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "language",
+ "description": "The desired language for output generation. If this parameter is not specified, the default value is \"en\". See https://aka.ms/cv-languages for a list of supported languages.",
+ "type": "string",
+ "default": "en"
+ },
+ {
+ "in": "query",
+ "name": "smartcrops-aspect-ratios",
+ "description": "A list of aspect ratios to use for smartCrops feature. Aspect ratios are calculated by dividing the target crop width by the height. Supported values are between 0.75 and 1.8 (inclusive). Multiple values should be comma-separated. If this parameter is not specified, the service will return one crop suggestion with an aspect ratio it sees fit between 0.5 and 2.0 (inclusive).",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "gender-neutral-caption",
+ "description": "Boolean flag for enabling gender-neutral captioning for caption and denseCaptions features. If this parameter is not specified, the default value is \"false\".",
+ "type": "boolean",
+ "default": false
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "A JSON document with a URL pointing to the image that is to be analyzed.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageUrl"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ImageAnalysisResult"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AnalyzeImage_CustomModel": {
+ "$ref": "./examples/AnalyzeImage_CustomModel.json"
+ }
+ }
+ }
+ },
+ "/datasets/{name}": {
+ "put": {
+ "tags": [
+ "Datasets"
+ ],
+ "summary": "Register a new dataset.\r\n \r\nStatus codes returned:\r\n- 201: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 409: A dataset with the specified name already exists.",
+ "operationId": "Datasets_Register",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "A name that can be used to uniquely identify the dataset after it has been registered.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Properties for the dataset, such as the list of URIs to the annotation files.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Dataset"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Dataset"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegisterDataset_ImageClassification": {
+ "$ref": "./examples/RegisterDataset_ImageClassification.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Datasets"
+ ],
+ "summary": "Get information about a specific dataset.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A dataset with the specified name was not found.",
+ "operationId": "Datasets_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the dataset to get.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Dataset"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Datasets_Get": {
+ "$ref": "./examples/Datasets_Get.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Datasets"
+ ],
+ "summary": "Update the properties of an existing dataset.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A dataset with the specified name was not found.\r\n- 412: An If-Match header was provided, but the given ETag did not match the current ETag value.",
+ "operationId": "Datasets_Update",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the dataset to update.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "header",
+ "name": "If-Match",
+ "description": "Optional ETag for the dataset to update.
\r\nIf an ETag is provided, then the dataset will be updated only if its current ETag value matches the given ETag.\r\nIf the ETag values don't match, then the update operation will fail with status code 412 (Precondition Failed).\r\nThis indicates that the dataset has been updated since the last time information for the dataset was obtained.
\r\nIf an ETag is not provided or its value is '*', then the dataset will always be updated regardless of the current ETag value.",
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Properties to update on the existing dataset.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Dataset"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Dataset"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Datasets_Update": {
+ "$ref": "./examples/Datasets_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Datasets"
+ ],
+ "summary": "Unregister a dataset.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A dataset with the specified name was not found.\r\n- 412: An If-Match header was provided, but the given ETag did not match the current ETag value.",
+ "operationId": "Datasets_Unregister",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the dataset to unregister.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "header",
+ "name": "If-Match",
+ "description": "Optional ETag for the dataset to unregister.
\r\nIf an ETag is provided, then the dataset will be unregistered only if its current ETag value matches the given ETag.\r\nIf the ETag values don't match, then the unregister operation will fail with status code 412 (Precondition Failed).\r\nThis indicates that the dataset has been updated since the last time information for the dataset was obtained.
\r\nIf an ETag is not provided or its value is '*', then the dataset will always be unregistered regardless of the current ETag value.",
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Datasets_Unregister": {
+ "$ref": "./examples/Datasets_Unregister.json"
+ }
+ }
+ }
+ },
+ "/datasets": {
+ "get": {
+ "tags": [
+ "Datasets"
+ ],
+ "summary": "Get a list of datasets that have been registered.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.",
+ "operationId": "Datasets_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skip",
+ "description": "Number of datasets to be skipped.",
+ "type": "integer",
+ "format": "int32",
+ "default": 0,
+ "maximum": 2147483647,
+ "minimum": 0
+ },
+ {
+ "in": "query",
+ "name": "top",
+ "description": "Number of datasets to be returned after skipping. The maximum allowed value is 30.",
+ "type": "integer",
+ "format": "int32",
+ "default": 10,
+ "maximum": 30,
+ "minimum": 1
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatasetApiModelCollectionApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Datasets_List": {
+ "$ref": "./examples/Datasets_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/models/{name}": {
+ "put": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Start training a custom model.\r\n \r\nStatus codes returned:\r\n- 201: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 409: A model with the specified name already exists.",
+ "operationId": "Models_Create",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "A name that can be used to uniquely identify the model after it has been created.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Properties for the model, such as the name of the dataset to use to train the model.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Model"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Model"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Models_Create": {
+ "$ref": "./examples/Models_Create.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Get information about a specific model.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model with the specified name was not found.",
+ "operationId": "Models_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to get.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Model"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Models_Get": {
+ "$ref": "./examples/Models_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Delete a custom model. A model can be deleted if it is in one of the 'Succeeded', 'Failed', or 'Canceled' states.\r\nIf a model is in the 'NotStarted' or 'Training' state, cancel training and wait for cancellation to finish before deleting the model.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model with the specified name was not found.",
+ "operationId": "Models_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to delete.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Models_Delete": {
+ "$ref": "./examples/Models_Delete.json"
+ }
+ }
+ }
+ },
+ "/models": {
+ "get": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Get a list of the available models.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.",
+ "operationId": "Models_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "skip",
+ "description": "Number of models to be skipped.",
+ "type": "integer",
+ "format": "int32",
+ "default": 0,
+ "maximum": 2147483647,
+ "minimum": 0
+ },
+ {
+ "in": "query",
+ "name": "top",
+ "description": "Number of models to be returned after skipping. The maximum allowed value is 30.",
+ "type": "integer",
+ "format": "int32",
+ "default": 10,
+ "maximum": 30,
+ "minimum": 1
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ModelApiModelCollectionApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Models_List": {
+ "$ref": "./examples/Models_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/models/{name}:cancel": {
+ "post": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Cancel model training.\r\n \r\nStatus codes returned:\r\n- 202: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model with the specified name was not found.",
+ "operationId": "Models_CancelTraining",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to cancel training.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Models_CancelTraining": {
+ "$ref": "./examples/Models_CancelTraining.json"
+ }
+ }
+ }
+ },
+ "/models/{name}/evaluations/{evaluationName}": {
+ "put": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Evaluate an existing model.\r\n \r\nStatus codes returned:\r\n- 201: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 409: An evaluation with the specified name already exists.",
+ "operationId": "ModelEvaluations_Create",
+ "consumes": [
+ "application/json-patch+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to evaluate.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "path",
+ "name": "evaluationName",
+ "description": "A name that can be used to uniquely identify the evaluation after it has been created.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Properties for the evaluation, such as the name of the dataset to use to test the model.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ModelEvaluation"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ModelEvaluation"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ModelEvaluations_Create": {
+ "$ref": "./examples/ModelEvaluations_Create.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Get information about a specific model evaluation.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model evaluation with the specified name was not found.",
+ "operationId": "ModelEvaluations_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to get the evaluation for.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "path",
+ "name": "evaluationName",
+ "description": "The name of the model evaluation to get.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ModelEvaluation"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ModelEvaluations_Get": {
+ "$ref": "./examples/ModelEvaluations_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Delete a model evaluation. A model evaluation can be deleted if it is in the 'Succeeded' or 'Failed' states.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model evaluation with the specified name was not found.",
+ "operationId": "ModelEvaluations_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to delete the evaluation for.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "path",
+ "name": "evaluationName",
+ "description": "The name of the model evaluation to delete.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ModelEvaluations_Delete": {
+ "$ref": "./examples/ModelEvaluations_Delete.json"
+ }
+ }
+ }
+ },
+ "/models/{name}/evaluations": {
+ "get": {
+ "tags": [
+ "Models"
+ ],
+ "summary": "Get a list of the available evaluations for a model.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.",
+ "operationId": "ModelEvaluations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "name",
+ "description": "The name of the model to get evaluations for.",
+ "required": true,
+ "type": "string",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$"
+ },
+ {
+ "in": "query",
+ "name": "skip",
+ "description": "Number of evaluations to be skipped.",
+ "type": "integer",
+ "format": "int32",
+ "default": 0,
+ "maximum": 2147483647,
+ "minimum": 0
+ },
+ {
+ "in": "query",
+ "name": "top",
+ "description": "Number of evaluations to be returned after skipping. The maximum allowed value is 30.",
+ "type": "integer",
+ "format": "int32",
+ "default": 10,
+ "maximum": 30,
+ "minimum": 1
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ModelEvaluationApiModelCollectionApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ModelEvaluations_List": {
+ "$ref": "./examples/ModelEvaluations_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AdultMatch": {
+ "description": "An object describing adult content match.",
+ "required": [
+ "confidence",
+ "isMatch"
+ ],
+ "type": "object",
+ "properties": {
+ "isMatch": {
+ "description": "A value indicating if the image is matched adult content.",
+ "type": "boolean"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "A value indicating the confidence level of matched adult content.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "AdultResult": {
+ "description": "An object describing whether the image contains adult-oriented content and/or is racy.",
+ "required": [
+ "adult",
+ "gore",
+ "racy"
+ ],
+ "type": "object",
+ "properties": {
+ "adult": {
+ "$ref": "#/definitions/AdultMatch"
+ },
+ "racy": {
+ "$ref": "#/definitions/AdultMatch"
+ },
+ "gore": {
+ "$ref": "#/definitions/AdultMatch"
+ }
+ }
+ },
+ "BoundingBox": {
+ "description": "A bounding box for an area inside an image.",
+ "required": [
+ "h",
+ "w",
+ "x",
+ "y"
+ ],
+ "type": "object",
+ "properties": {
+ "x": {
+ "format": "int32",
+ "description": "Left-coordinate of the top left point of the area, in pixels.",
+ "minimum": 0,
+ "type": "integer"
+ },
+ "y": {
+ "format": "int32",
+ "description": "Top-coordinate of the top left point of the area, in pixels.",
+ "minimum": 0,
+ "type": "integer"
+ },
+ "w": {
+ "format": "int32",
+ "description": "Width measured from the top-left point of the area, in pixels.",
+ "minimum": 1,
+ "type": "integer"
+ },
+ "h": {
+ "format": "int32",
+ "description": "Height measured from the top-left point of the area, in pixels.",
+ "minimum": 1,
+ "type": "integer"
+ }
+ }
+ },
+ "CaptionResult": {
+ "description": "A brief description of what the image depicts.",
+ "required": [
+ "confidence",
+ "text"
+ ],
+ "type": "object",
+ "properties": {
+ "text": {
+ "description": "The text of the caption.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "The level of confidence the service has in the caption.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "CropRegion": {
+ "description": "A region identified for smart cropping. There will be one region returned for each requested aspect ratio.",
+ "required": [
+ "aspectRatio",
+ "boundingBox"
+ ],
+ "type": "object",
+ "properties": {
+ "aspectRatio": {
+ "format": "double",
+ "description": "The aspect ratio of the crop region.",
+ "type": "number"
+ },
+ "boundingBox": {
+ "$ref": "#/definitions/BoundingBox"
+ }
+ }
+ },
+ "DenseCaption": {
+ "description": "A brief description of what the image depicts.",
+ "required": [
+ "confidence",
+ "text"
+ ],
+ "type": "object",
+ "properties": {
+ "text": {
+ "description": "The text of the caption.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "The level of confidence the service has in the caption.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ },
+ "boundingBox": {
+ "$ref": "#/definitions/BoundingBox"
+ }
+ }
+ },
+ "DenseCaptionsResult": {
+ "description": "A list of captions.",
+ "required": [
+ "values"
+ ],
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "A list of captions.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DenseCaption"
+ }
+ }
+ }
+ },
+ "Description": {
+ "description": "A brief description of what the image depicts.",
+ "required": [
+ "confidence",
+ "text"
+ ],
+ "type": "object",
+ "properties": {
+ "text": {
+ "description": "The text of the caption.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "The level of confidence the service has in the caption.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "DescriptionResult": {
+ "description": "A list of descriptions sorted by confidence level.",
+ "required": [
+ "values"
+ ],
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "A list of descriptions sorted by confidence level.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Description"
+ }
+ }
+ }
+ },
+ "DetectedObject": {
+ "description": "Describes a detected object in an image.",
+ "required": [
+ "boundingBox",
+ "tags"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Id of the detected object.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "boundingBox": {
+ "$ref": "#/definitions/BoundingBox"
+ },
+ "tags": {
+ "description": "Classification confidences of the detected object.",
+ "minItems": 1,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tag"
+ }
+ }
+ }
+ },
+ "DetectedPerson": {
+ "description": "A person detected in an image.",
+ "required": [
+ "boundingBox",
+ "confidence"
+ ],
+ "type": "object",
+ "properties": {
+ "boundingBox": {
+ "$ref": "#/definitions/BoundingBox"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "Confidence score of having observed the person in the image, as a value ranging from 0 to 1.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "DocumentLanguage": {
+ "description": "An object representing the detected language for a given text span.",
+ "required": [
+ "confidence",
+ "languageCode",
+ "spans"
+ ],
+ "type": "object",
+ "properties": {
+ "spans": {
+ "description": "Location of the text elements in the concatenated content the language applies to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "languageCode": {
+ "description": "Detected language. Value may an ISO 639-1 language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"zh-Hans\").",
+ "minLength": 1,
+ "type": "string"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "Confidence of correctly identifying the language.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "DocumentLine": {
+ "description": "A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.",
+ "required": [
+ "boundingBox",
+ "content",
+ "spans"
+ ],
+ "type": "object",
+ "properties": {
+ "content": {
+ "description": "Concatenated content of the contained elements in reading order.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "boundingBox": {
+ "description": "Bounding box of the line.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "spans": {
+ "description": "Location of the line in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ }
+ },
+ "DocumentPage": {
+ "description": "The content and layout elements extracted from a page from the input.",
+ "required": [
+ "angle",
+ "height",
+ "lines",
+ "pageNumber",
+ "spans",
+ "width",
+ "words"
+ ],
+ "type": "object",
+ "properties": {
+ "height": {
+ "format": "double",
+ "description": "The height of the image/PDF in pixels/inches, respectively.",
+ "type": "number"
+ },
+ "width": {
+ "format": "double",
+ "description": "The width of the image/PDF in pixels/inches, respectively.",
+ "type": "number"
+ },
+ "angle": {
+ "format": "double",
+ "description": "The general orientation of the content in clockwise direction, measured in degrees between (-180, 180].",
+ "type": "number"
+ },
+ "pageNumber": {
+ "format": "int32",
+ "description": "1-based page number in the input document.",
+ "type": "integer"
+ },
+ "words": {
+ "description": "Extracted words from the page.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentWord"
+ }
+ },
+ "spans": {
+ "description": "Location of the page in the reading order concatenated content.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "lines": {
+ "description": "Extracted lines from the page, potentially containing both textual and visual elements.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentLine"
+ }
+ }
+ }
+ },
+ "DocumentSpan": {
+ "description": "Contiguous region of the concatenated content property, specified as an offset and length.",
+ "required": [
+ "length",
+ "offset"
+ ],
+ "type": "object",
+ "properties": {
+ "offset": {
+ "format": "int32",
+ "description": "Zero-based index of the content represented by the span.",
+ "type": "integer"
+ },
+ "length": {
+ "format": "int32",
+ "description": "Number of characters in the content represented by the span.",
+ "type": "integer"
+ }
+ }
+ },
+ "DocumentStyle": {
+ "description": "An object representing observed text styles.",
+ "required": [
+ "spans"
+ ],
+ "type": "object",
+ "properties": {
+ "isHandwritten": {
+ "description": "Is content handwritten or not.",
+ "type": "boolean"
+ },
+ "spans": {
+ "description": "Location of the text elements in the concatenated content the style applies to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ },
+ "confidence": {
+ "format": "double",
+ "description": "Confidence of correctly identifying the style.",
+ "type": "number"
+ }
+ }
+ },
+ "DocumentWord": {
+ "description": "A word object consisting of a contiguous sequence of characters. For non-space delimited languages,\r\nsuch as Chinese, Japanese, and Korean, each character is represented as its own word.",
+ "required": [
+ "boundingBox",
+ "confidence",
+ "content",
+ "span"
+ ],
+ "type": "object",
+ "properties": {
+ "content": {
+ "description": "Text content of the word.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "boundingBox": {
+ "description": "Bounding box of the word.",
+ "type": "array",
+ "items": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "confidence": {
+ "format": "double",
+ "description": "Confidence of correctly extracting the word.",
+ "type": "number"
+ },
+ "span": {
+ "$ref": "#/definitions/DocumentSpan"
+ }
+ }
+ },
+ "ErrorResponse": {
+ "description": "Response returned when an error occurs.",
+ "required": [
+ "error"
+ ],
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ErrorResponseDetails"
+ }
+ }
+ },
+ "ErrorResponseDetails": {
+ "description": "Error info.",
+ "required": [
+ "code",
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "Target of the error.",
+ "type": "string"
+ },
+ "details": {
+ "description": "List of detailed errors.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResponseDetails"
+ }
+ },
+ "innererror": {
+ "$ref": "#/definitions/ErrorResponseInnerError"
+ }
+ }
+ },
+ "ErrorResponseInnerError": {
+ "description": "Detailed error.",
+ "required": [
+ "code",
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Error message.",
+ "type": "string"
+ },
+ "innererror": {
+ "$ref": "#/definitions/ErrorResponseInnerError"
+ }
+ }
+ },
+ "FixtureApiModel": {
+ "description": "Describes a fixture in a planogram.",
+ "required": [
+ "h",
+ "id",
+ "w",
+ "x",
+ "y"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Id of the fixture.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "w": {
+ "format": "double",
+ "description": "Width of the fixture.",
+ "type": "number"
+ },
+ "h": {
+ "format": "double",
+ "description": "Height of the fixture.",
+ "type": "number"
+ },
+ "x": {
+ "format": "double",
+ "description": "Left offset from the origin, in unit of in inches or centimeters.",
+ "minimum": 0,
+ "type": "number"
+ },
+ "y": {
+ "format": "double",
+ "description": "Top offset from the origin, in unit of in inches or centimeters.",
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "ImageAnalysisResult": {
+ "description": "Describe the combined results of different types of image analysis.",
+ "required": [
+ "metadata",
+ "modelVersion"
+ ],
+ "type": "object",
+ "properties": {
+ "customModelResult": {
+ "$ref": "#/definitions/ImagePredictionResult"
+ },
+ "captionResult": {
+ "$ref": "#/definitions/CaptionResult"
+ },
+ "objectsResult": {
+ "$ref": "#/definitions/ObjectsResult"
+ },
+ "readResult": {
+ "$ref": "#/definitions/ReadResult"
+ },
+ "denseCaptionsResult": {
+ "$ref": "#/definitions/DenseCaptionsResult"
+ },
+ "modelVersion": {
+ "description": "Model Version.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "metadata": {
+ "$ref": "#/definitions/ImageMetadataApiModel"
+ },
+ "tagsResult": {
+ "$ref": "#/definitions/TagsResult"
+ },
+ "adultResult": {
+ "$ref": "#/definitions/AdultResult"
+ },
+ "smartCropsResult": {
+ "$ref": "#/definitions/SmartCropsResult"
+ },
+ "peopleResult": {
+ "$ref": "#/definitions/PeopleResult"
+ }
+ }
+ },
+ "ImageMetadataApiModel": {
+ "description": "The image metadata information such as height and width.",
+ "required": [
+ "height",
+ "width"
+ ],
+ "type": "object",
+ "properties": {
+ "width": {
+ "format": "int32",
+ "description": "The width of the image in pixels.",
+ "minimum": 1,
+ "type": "integer"
+ },
+ "height": {
+ "format": "int32",
+ "description": "The height of the image in pixels.",
+ "minimum": 1,
+ "type": "integer"
+ }
+ }
+ },
+ "ImagePredictionResult": {
+ "description": "Describes the prediction result of an image.",
+ "type": "object",
+ "properties": {
+ "tagsResult": {
+ "$ref": "#/definitions/TagsResult"
+ },
+ "objectsResult": {
+ "$ref": "#/definitions/ObjectsResult"
+ }
+ }
+ },
+ "ImageRectificationControlPointsApiModel": {
+ "description": "Four corner control points for rectification. The origin is at top-left.",
+ "required": [
+ "bottomLeft",
+ "bottomRight",
+ "topLeft",
+ "topRight"
+ ],
+ "type": "object",
+ "properties": {
+ "topLeft": {
+ "$ref": "#/definitions/NormalizedCoordinateApiModel"
+ },
+ "topRight": {
+ "$ref": "#/definitions/NormalizedCoordinateApiModel"
+ },
+ "bottomLeft": {
+ "$ref": "#/definitions/NormalizedCoordinateApiModel"
+ },
+ "bottomRight": {
+ "$ref": "#/definitions/NormalizedCoordinateApiModel"
+ }
+ }
+ },
+ "ImageRectificationRequestApiModel": {
+ "description": "Image rectification input.",
+ "required": [
+ "controlPoints",
+ "url"
+ ],
+ "type": "object",
+ "properties": {
+ "url": {
+ "format": "uri",
+ "description": "Source image blob URL.",
+ "type": "string"
+ },
+ "controlPoints": {
+ "$ref": "#/definitions/ImageRectificationControlPointsApiModel"
+ }
+ }
+ },
+ "ImageStitchingRequestApiModel": {
+ "description": "Image stitching input.",
+ "required": [
+ "images"
+ ],
+ "type": "object",
+ "properties": {
+ "images": {
+ "description": "Source images to stitch.",
+ "maxItems": 20,
+ "minItems": 2,
+ "type": "array",
+ "items": {
+ "format": "uri",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ImageUrl": {
+ "description": "A JSON document with a URL pointing to the image that is to be analyzed.",
+ "required": [
+ "url"
+ ],
+ "type": "object",
+ "properties": {
+ "url": {
+ "description": "Publicly reachable URL of an image.",
+ "type": "string"
+ }
+ }
+ },
+ "NormalizedCoordinateApiModel": {
+ "description": "Normalized XY-coordinate.",
+ "required": [
+ "x",
+ "y"
+ ],
+ "type": "object",
+ "properties": {
+ "x": {
+ "format": "double",
+ "description": "Horizontal coordinate.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ },
+ "y": {
+ "format": "double",
+ "description": "Vertical coordinate.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "ObjectsResult": {
+ "description": "Describes detected objects in an image.",
+ "required": [
+ "values"
+ ],
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "An array of detected objects.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DetectedObject"
+ }
+ }
+ }
+ },
+ "PeopleResult": {
+ "description": "An object describing whether the image contains people.",
+ "required": [
+ "values"
+ ],
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "An array of detected people.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DetectedPerson"
+ }
+ }
+ }
+ },
+ "PlanogramApiModel": {
+ "description": "Describes the planogram for planogram matching operations.",
+ "required": [
+ "fixtures",
+ "height",
+ "positions",
+ "products",
+ "width"
+ ],
+ "type": "object",
+ "properties": {
+ "width": {
+ "format": "double",
+ "description": "Width of the planogram.",
+ "type": "number"
+ },
+ "height": {
+ "format": "double",
+ "description": "Height of the planogram.",
+ "type": "number"
+ },
+ "products": {
+ "description": "List of products in the planogram.",
+ "minItems": 1,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProductApiModel"
+ }
+ },
+ "fixtures": {
+ "description": "List of fixtures in the planogram.",
+ "minItems": 1,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FixtureApiModel"
+ }
+ },
+ "positions": {
+ "description": "List of positions in the planogram.",
+ "minItems": 1,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PositionApiModel"
+ }
+ }
+ }
+ },
+ "PlanogramMatchingRequestApiModel": {
+ "description": "Input to pass into the planogram matching operation.",
+ "required": [
+ "detectedProducts",
+ "planogram"
+ ],
+ "type": "object",
+ "properties": {
+ "detectedProducts": {
+ "$ref": "#/definitions/ProductRecognitionResultApiModel"
+ },
+ "planogram": {
+ "$ref": "#/definitions/PlanogramApiModel"
+ }
+ }
+ },
+ "PlanogramMatchingResultApiModel": {
+ "description": "Results from the planogram matching operation.",
+ "required": [
+ "matchingResultPerPosition"
+ ],
+ "type": "object",
+ "properties": {
+ "matchingResultPerPosition": {
+ "description": "The matched detected object information for each planogram position.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PositionMatchingResultApiModel"
+ }
+ }
+ }
+ },
+ "PositionApiModel": {
+ "description": "Describes a product position in a planogram.",
+ "required": [
+ "fixtureId",
+ "id",
+ "productId",
+ "x",
+ "y"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Id of the position.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "productId": {
+ "description": "Id of the product.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "fixtureId": {
+ "description": "Id of the fixture that the product is on.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "x": {
+ "format": "double",
+ "description": "Left offset from the origin, in unit of in inches or centimeters.",
+ "minimum": 0,
+ "type": "number"
+ },
+ "y": {
+ "format": "double",
+ "description": "Top offset from the origin, in unit of in inches or centimeters.",
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "PositionMatchingResultApiModel": {
+ "description": "Paired planogram position ID and corresponding detected object from product understanding result.",
+ "required": [
+ "detectedObject",
+ "positionId"
+ ],
+ "type": "object",
+ "properties": {
+ "positionId": {
+ "description": "The position ID from the planogram matched to the corresponding detected object.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "detectedObject": {
+ "$ref": "#/definitions/DetectedObject"
+ }
+ }
+ },
+ "ProductApiModel": {
+ "description": "Describes a product in the planogram.",
+ "required": [
+ "h",
+ "id",
+ "name",
+ "w"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Id of the product.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "name": {
+ "description": "Name of the product.",
+ "maxLength": 255,
+ "minLength": 1,
+ "type": "string"
+ },
+ "w": {
+ "format": "double",
+ "description": "Width of the product.",
+ "type": "number"
+ },
+ "h": {
+ "format": "double",
+ "description": "Height of the fixture.",
+ "type": "number"
+ }
+ }
+ },
+ "ProductRecognitionApiModel": {
+ "required": [
+ "createdDateTime",
+ "modelName",
+ "result",
+ "runName",
+ "status",
+ "updatedDateTime"
+ ],
+ "type": "object",
+ "properties": {
+ "runName": {
+ "description": "Read only. The name that is used to uniquely identify the product recognition run.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "modelName": {
+ "description": "Read only. The model to run product recognition against.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the product recognition run was first created, in UTC.",
+ "type": "string"
+ },
+ "updatedDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the product recognition run was last updated, in UTC.",
+ "type": "string"
+ },
+ "status": {
+ "description": "Read only. The current state of the product recognition run.",
+ "enum": [
+ "notStarted",
+ "running",
+ "succeeded",
+ "failed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ProductRecognitionState",
+ "modelAsString": true
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/ErrorResponseDetails"
+ },
+ "result": {
+ "$ref": "#/definitions/ProductRecognitionResultApiModel"
+ }
+ }
+ },
+ "ProductRecognitionApiModelCollectionApiModel": {
+ "description": "Contains an array of results that may be paginated.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The array of results.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProductRecognitionApiModel"
+ }
+ },
+ "nextLink": {
+ "description": "A link to the next set of paginated results, if there are more results available; not present otherwise.",
+ "type": "string"
+ }
+ }
+ },
+ "ProductRecognitionResultApiModel": {
+ "description": "Results from the product understanding operation.",
+ "required": [
+ "gaps",
+ "imageMetadata",
+ "products"
+ ],
+ "type": "object",
+ "properties": {
+ "imageMetadata": {
+ "$ref": "#/definitions/ImageMetadataApiModel"
+ },
+ "products": {
+ "description": "Products detected in the image.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DetectedObject"
+ }
+ },
+ "gaps": {
+ "description": "Gaps detected in the image.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DetectedObject"
+ }
+ }
+ }
+ },
+ "ReadResult": {
+ "description": "The results of an Read operation.",
+ "required": [
+ "content",
+ "pages",
+ "stringIndexType"
+ ],
+ "type": "object",
+ "properties": {
+ "stringIndexType": {
+ "description": "The method used to compute string offset and length, possible values include: 'textElements', 'unicodeCodePoint', 'utf16CodeUnit' etc.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "content": {
+ "description": "Concatenate string representation of all textual and visual elements in reading order.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "pages": {
+ "description": "A list of analyzed pages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentPage"
+ }
+ },
+ "styles": {
+ "description": "Extracted font styles.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DocumentStyle"
+ }
+ }
+ }
+ },
+ "SingleVectorResultApiModel": {
+ "description": "Results of image vectorization.",
+ "type": "object",
+ "properties": {
+ "vector": {
+ "description": "Vector of the image.",
+ "type": "array",
+ "items": {
+ "format": "float",
+ "type": "number"
+ }
+ },
+ "modelVersion": {
+ "description": "Model version.",
+ "type": "string"
+ }
+ }
+ },
+ "SmartCropsResult": {
+ "description": "Smart cropping result.",
+ "required": [
+ "values"
+ ],
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "Recommended regions for cropping the image.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CropRegion"
+ }
+ }
+ }
+ },
+ "Tag": {
+ "description": "An entity observation in the image, along with the confidence score.",
+ "required": [
+ "confidence",
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the entity.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "confidence": {
+ "format": "double",
+ "description": "The level of confidence that the entity was observed.",
+ "maximum": 1,
+ "minimum": 0,
+ "type": "number"
+ }
+ }
+ },
+ "TagsResult": {
+ "description": "A list of tags with confidence level.",
+ "required": [
+ "values"
+ ],
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "A list of tags with confidence level.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tag"
+ }
+ }
+ }
+ },
+ "VectorizeTextRequestApiModel": {
+ "description": "Model for VectorizeText request.",
+ "required": [
+ "text"
+ ],
+ "type": "object",
+ "properties": {
+ "text": {
+ "description": "Text for vectorization.",
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "Dataset": {
+ "description": "Describes a dataset, which represents a set of images and annotations that can be used for training or testing a model.",
+ "type": "object",
+ "properties": {
+ "annotationKind": {
+ "description": "The kind of annotations contained in the annotation files.\r\nFor example, \"ImageClassification\" to specify that the annotation file contain object labels for training or testing a multiclass image classification model.",
+ "enum": [
+ "imageClassification",
+ "imageObjectDetection"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AnnotationKind",
+ "modelAsString": true
+ }
+ },
+ "annotationFileUris": {
+ "description": "List of absolute URIs to annotation files, each of which must be stored as a blob in an Azure Storage blob container.\r\nEach file must follow the COCO format for the specified AnnotationKind, with each image path being an absolute URI to a blob in a blob container.\r\nThe Computer Vision resource must have permission to read the annotation files and all referenced image files.\r\nThis can be done by turning on System managed identities for the Computer Vision resource, then assigning the identity to a role that has permission to read from the blob container containing the annotation and image files.",
+ "maxItems": 10,
+ "type": "array",
+ "items": {
+ "format": "uri",
+ "type": "string"
+ }
+ },
+ "customProperties": {
+ "description": "Dictionary of arbitrary key-value pairs for use by the application. A maximum of 10 key-value pairs are allowed.",
+ "maxLength": 10,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Read only. The name that is used to uniquely identify the dataset.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the dataset was first registered, in UTC.",
+ "type": "string"
+ },
+ "updatedDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the dataset was last updated, in UTC.",
+ "type": "string"
+ },
+ "eTag": {
+ "description": "Read only. The latest ETag for the dataset. May be used with the 'If-Match' header when updating or deleting a dataset.",
+ "type": "string"
+ },
+ "authentication": {
+ "$ref": "#/definitions/StorageAuthenticationSettingsApiModel"
+ }
+ }
+ },
+ "DatasetApiModelCollectionApiModel": {
+ "description": "Contains an array of results that may be paginated.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The array of results.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Dataset"
+ }
+ },
+ "nextLink": {
+ "description": "A link to the next set of paginated results, if there are more results available; not present otherwise.",
+ "type": "string"
+ }
+ }
+ },
+ "Model": {
+ "description": "Describes a training run for training a custom model.",
+ "required": [
+ "trainingParameters"
+ ],
+ "type": "object",
+ "properties": {
+ "trainingParameters": {
+ "$ref": "#/definitions/TrainingParameters"
+ },
+ "name": {
+ "description": "Read only. The name that is used to uniquely identify the training run.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the training run was first created, in UTC.",
+ "type": "string"
+ },
+ "updatedDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the training run was last updated, in UTC.",
+ "type": "string"
+ },
+ "status": {
+ "description": "Read only. The current state of the training run.",
+ "enum": [
+ "notStarted",
+ "training",
+ "succeeded",
+ "failed",
+ "cancelling",
+ "cancelled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ModelState",
+ "modelAsString": true
+ }
+ },
+ "trainingCostInMinutes": {
+ "format": "int32",
+ "description": "Read only. Actual training cost consumed, in minutes. Present only if the training run as completed.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "error": {
+ "$ref": "#/definitions/ErrorResponseDetails"
+ },
+ "modelPerformance": {
+ "$ref": "#/definitions/ModelPerformance"
+ },
+ "evaluationParameters": {
+ "$ref": "#/definitions/ModelEvaluationParameters"
+ }
+ }
+ },
+ "ModelApiModelCollectionApiModel": {
+ "description": "Contains an array of results that may be paginated.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The array of results.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Model"
+ }
+ },
+ "nextLink": {
+ "description": "A link to the next set of paginated results, if there are more results available; not present otherwise.",
+ "type": "string"
+ }
+ }
+ },
+ "ModelEvaluation": {
+ "description": "Describes an evaluation run for evaluating the accuracy of a model using a test set.",
+ "required": [
+ "evaluationParameters"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Read only. The name that is used to uniquely identify the evaluation run.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "modelName": {
+ "description": "Read only. The model to evaluate.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "createdDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the evaluation run was first created, in UTC.",
+ "type": "string"
+ },
+ "updatedDateTime": {
+ "format": "date-time",
+ "description": "Read only. The date and time when the evaluation run was last updated, in UTC.",
+ "type": "string"
+ },
+ "status": {
+ "description": "Read only. The current state of the evaluation run.",
+ "enum": [
+ "notStarted",
+ "running",
+ "succeeded",
+ "failed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ModelEvaluationState",
+ "modelAsString": true
+ }
+ },
+ "evaluationParameters": {
+ "$ref": "#/definitions/ModelEvaluationParameters"
+ },
+ "error": {
+ "$ref": "#/definitions/ErrorResponseDetails"
+ },
+ "modelPerformance": {
+ "$ref": "#/definitions/ModelPerformance"
+ }
+ }
+ },
+ "ModelEvaluationApiModelCollectionApiModel": {
+ "description": "Contains an array of results that may be paginated.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The array of results.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelEvaluation"
+ }
+ },
+ "nextLink": {
+ "description": "A link to the next set of paginated results, if there are more results available; not present otherwise.",
+ "type": "string"
+ }
+ }
+ },
+ "ModelEvaluationParameters": {
+ "description": "Parameters for specifying how a model is evaluated.",
+ "type": "object",
+ "properties": {
+ "testDatasetName": {
+ "description": "The dataset name used for testing.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ }
+ }
+ },
+ "ModelPerformance": {
+ "description": "Performance metrics for a custom trained model.",
+ "required": [
+ "tagPerformance"
+ ],
+ "type": "object",
+ "properties": {
+ "accuracyTop1": {
+ "format": "double",
+ "description": "Read only. For multiclass classification models. The proportion of test samples where the ground truth class matches the predicted class.",
+ "type": "number",
+ "readOnly": true
+ },
+ "accuracyTop5": {
+ "format": "double",
+ "description": "Read only. For multiclass classification models. The proportion of test samples where the ground truth class is in the top five predicted classes.",
+ "type": "number",
+ "readOnly": true
+ },
+ "averagePrecision": {
+ "format": "double",
+ "description": "Read only. A measure of the model performance, it summarizes the precision and recall at different confidence thresholds.",
+ "type": "number",
+ "readOnly": true
+ },
+ "calibrationECE": {
+ "format": "double",
+ "description": "Read only. For multiclass classification models. Expected calibration error.",
+ "type": "number",
+ "readOnly": true
+ },
+ "meanAveragePrecision30": {
+ "format": "double",
+ "description": "Read only. For object detection models. Mean average precision at a threshold of 30%.",
+ "type": "number",
+ "readOnly": true
+ },
+ "meanAveragePrecision50": {
+ "format": "double",
+ "description": "Read only. For object detection models. Mean average precision at a threshold of 50%.",
+ "type": "number",
+ "readOnly": true
+ },
+ "meanAveragePrecision75": {
+ "format": "double",
+ "description": "Read only. For object detection models. Mean average precision at a threshold of 75%.",
+ "type": "number",
+ "readOnly": true
+ },
+ "tagPerformance": {
+ "description": "Read only. Performance metrics for each tag recognized by the model.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/ModelTagPerformance"
+ }
+ }
+ }
+ },
+ "ModelTagPerformance": {
+ "description": "Performance metrics for each tag recognized by a custom trained model.",
+ "type": "object",
+ "properties": {
+ "accuracy": {
+ "format": "double",
+ "description": "Read only. For multiclass models. Tag accuracy.",
+ "type": "number",
+ "readOnly": true
+ },
+ "averagePrecision50": {
+ "format": "double",
+ "description": "Read only. For object detection models. Average precision at a threshold of 50%.",
+ "type": "number",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageAuthenticationSettingsApiModel": {
+ "description": "Describes the storage authentication settings.",
+ "required": [
+ "kind"
+ ],
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "The storage authentication kind.",
+ "enum": [
+ "none",
+ "managedIdentity",
+ "sas"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "StorageAuthenticationKind",
+ "modelAsString": true
+ }
+ },
+ "sasToken": {
+ "description": "Optional. The sas token to access container. Only needed when Kind = Sas.",
+ "type": "string"
+ }
+ }
+ },
+ "TrainingParameters": {
+ "description": "Parameters for specifying how a training run trains a custom model.",
+ "required": [
+ "timeBudgetInHours",
+ "trainingDatasetName"
+ ],
+ "type": "object",
+ "properties": {
+ "trainingDatasetName": {
+ "description": "The dataset name used for training.",
+ "maxLength": 255,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]*$",
+ "type": "string"
+ },
+ "timeBudgetInHours": {
+ "format": "int32",
+ "description": "Time budget for training, in hours. The minimum allowed value is 1, and the maximum allowed value is 336 hours for GenericClassifier, 1344 hours for GenericDetector.\r\nThis is the maximum amount of compute time that will be spent to train the model.",
+ "maximum": 1344,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "modelKind": {
+ "description": "Model kind.",
+ "enum": [
+ "Product-Recognizer",
+ "Generic-Classifier",
+ "Generic-Detector"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ModelKind",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ApiVersion": {
+ "in": "query",
+ "name": "api-version",
+ "description": "Requested API version.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "client"
+ }
+ },
+ "x-ms-paths": {
+ "/imageanalysis:segment?overload=stream": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Analyze the input image. The request either contains an image stream with any content type ['image/*', 'application/octet-stream'], or a JSON payload which includes a url property to be used to retrieve the image stream. An image stream of content type 'image/png' is returned, where the pixel values depend on the analysis mode. The returned image has the same dimensions as the input image for modes: foregroundMatting. The returned image has the same aspect ratio and same dimensions as the input image up to a limit of 16 megapixels for modes: backgroundRemoval.",
+ "operationId": "ImageAnalysis_SegmentFromImageStream",
+ "consumes": [
+ "application/octet-stream",
+ "image/jpeg",
+ "image/gif",
+ "image/tiff",
+ "image/bmp",
+ "image/png"
+ ],
+ "produces": [
+ "image/png",
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "mode",
+ "description": "The analysis mode requested.",
+ "type": "string",
+ "enum": [
+ "backgroundRemoval",
+ "foregroundMatting"
+ ],
+ "x-ms-enum": {
+ "name": "SegmentationMode",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "An image stream.",
+ "required": true,
+ "schema": {
+ "format": "byte",
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "type": "file"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Segment_BackgroundRemoval_FromImageStream": {
+ "$ref": "./examples/Segment_BackgroundRemoval_FromImageStream.json"
+ },
+ "Segment_ForegroundMatting_FromImageStream": {
+ "$ref": "./examples/Segment_ForegroundMatting_FromImageStream.json"
+ }
+ }
+ }
+ },
+ "/retrieval:vectorizeImage?overload=stream": {
+ "post": {
+ "tags": [
+ "ImageRetrieval"
+ ],
+ "summary": "Return vector from an image.",
+ "operationId": "ImageRetrieval_VectorizeImageFromImageStream",
+ "consumes": [
+ "application/octet-stream",
+ "image/jpeg",
+ "image/gif",
+ "image/tiff",
+ "image/bmp",
+ "image/png"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "model-version",
+ "description": "Model version.",
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "An image stream.",
+ "required": true,
+ "schema": {
+ "format": "byte",
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SingleVectorResultApiModel"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImageRetrieval_VectorizeImageFromImageStream": {
+ "$ref": "./examples/ImageRetrieval_VectorizeImageFromImageStream.json"
+ }
+ }
+ }
+ },
+ "/imageanalysis:analyze?overload=stream": {
+ "post": {
+ "tags": [
+ "Operations"
+ ],
+ "summary": "Analyze the input image. The request either contains image stream with any content type ['image/*', 'application/octet-stream'], or a JSON payload which includes an url property to be used to retrieve the image stream.",
+ "operationId": "ImageAnalysis_AnalyzeFromImageStream",
+ "consumes": [
+ "application/octet-stream",
+ "image/jpeg",
+ "image/gif",
+ "image/tiff",
+ "image/bmp",
+ "image/png"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "features",
+ "description": "The visual features requested: tags, objects, caption, denseCaptions, read, smartCrops, people. This parameter needs to be specified if the parameter \"model-name\" is not specified.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "tags",
+ "caption",
+ "denseCaptions",
+ "objects",
+ "read",
+ "smartCrops",
+ "people"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "VisualFeature",
+ "modelAsString": true
+ }
+ },
+ "collectionFormat": "csv"
+ },
+ {
+ "in": "query",
+ "name": "model-name",
+ "description": "The name of the custom trained model. This parameter needs to be specified if the parameter \"features\" is not specified.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "language",
+ "description": "The desired language for output generation. If this parameter is not specified, the default value is \"en\". See https://aka.ms/cv-languages for a list of supported languages.",
+ "type": "string",
+ "default": "en"
+ },
+ {
+ "in": "query",
+ "name": "smartcrops-aspect-ratios",
+ "description": "A list of aspect ratios to use for smartCrops feature. Aspect ratios are calculated by dividing the target crop width by the height. Supported values are between 0.75 and 1.8 (inclusive). Multiple values should be comma-separated. If this parameter is not specified, the service will return one crop suggestion with an aspect ratio it sees fit between 0.5 and 2.0 (inclusive).",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "gender-neutral-caption",
+ "description": "Boolean flag for enabling gender-neutral captioning for caption and denseCaptions features. If this parameter is not specified, the default value is \"false\".",
+ "type": "boolean",
+ "default": false
+ },
+ {
+ "$ref": "#/parameters/ApiVersion"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "An image stream.",
+ "required": true,
+ "schema": {
+ "format": "byte",
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ImageAnalysisResult"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AnalyzeImageFromImageStream_CustomModel": {
+ "$ref": "./examples/AnalyzeImageFromImageStream_CustomModel.json"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/AnalyzeImageFromImageStream_CustomModel.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/AnalyzeImageFromImageStream_CustomModel.json
new file mode 100644
index 000000000000..846d8814261d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/AnalyzeImageFromImageStream_CustomModel.json
@@ -0,0 +1,56 @@
+{
+ "title": "Analyze the input image. The request either contains image stream with any content type ['image/*', 'application/octet-stream'], or a JSON payload which includes an url property to be used to retrieve the image stream.",
+ "operationId": "ImageAnalysis_AnalyzeFromImageStream",
+ "parameters": {
+ "api-version": "2023-04-01-preview",
+ "model-name": "my_model_name",
+ "body": "Ynl0ZXM="
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "modelVersion": "2023-04-01-preview",
+ "customModelResult": {
+ "objectsResult": {
+ "values": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ },
+ {
+ "id": "2",
+ "boundingBox": {
+ "x": 0,
+ "y": 77,
+ "w": 241,
+ "h": 359
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.87890625
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "metadata": {
+ "width": 660,
+ "height": 495
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/AnalyzeImage_CustomModel.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/AnalyzeImage_CustomModel.json
new file mode 100644
index 000000000000..904a36ca706b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/AnalyzeImage_CustomModel.json
@@ -0,0 +1,58 @@
+{
+ "title": "Analyze the input image. The request either contains image stream with any content type ['image/*', 'application/octet-stream'], or a JSON payload which includes an url property to be used to retrieve the image stream.",
+ "operationId": "ImageAnalysis_Analyze",
+ "parameters": {
+ "api-version": "2023-04-01-preview",
+ "model-name": "my_model_name",
+ "body": {
+ "url": "https://example.com/image.jpg"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "customModelResult": {
+ "objectsResult": {
+ "values": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ },
+ {
+ "id": "2",
+ "boundingBox": {
+ "x": 0,
+ "y": 77,
+ "w": 241,
+ "h": 359
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.87890625
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "modelVersion": "2023-04-01-preview",
+ "metadata": {
+ "width": 660,
+ "height": 495
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Get.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Get.json
new file mode 100644
index 000000000000..3a0ad5391f72
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Get.json
@@ -0,0 +1,22 @@
+{
+ "title": "Get information about a specific dataset.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A dataset with the specified name was not found.",
+ "operationId": "Datasets_Get",
+ "parameters": {
+ "name": "my_dataset_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "annotationKind": "imageClassification",
+ "annotationFileUris": [
+ "https://example.com/dataset.json"
+ ],
+ "name": "my_dataset_name",
+ "createdDateTime": "2023-01-13T20:46:20.189Z",
+ "updatedDateTime": "2023-01-13T20:46:20.189Z",
+ "eTag": "kzktjgnqkjagdlkualdzikaseg"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_List.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_List.json
new file mode 100644
index 000000000000..53be7091166e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_List.json
@@ -0,0 +1,25 @@
+{
+ "title": "Get a list of datasets that have been registered.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.",
+ "operationId": "Datasets_List",
+ "parameters": {
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "annotationKind": "imageClassification",
+ "annotationFileUris": [
+ "https://example.com/dataset.json"
+ ],
+ "name": "my_dataset_name",
+ "createdDateTime": "2023-01-13T20:46:20.189Z",
+ "updatedDateTime": "2023-01-13T20:46:20.189Z",
+ "eTag": "kzktjgnqkjagdlkualdzikaseg"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Unregister.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Unregister.json
new file mode 100644
index 000000000000..c9e527c031da
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Unregister.json
@@ -0,0 +1,11 @@
+{
+ "title": "Unregister a dataset.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A dataset with the specified name was not found.\r\n- 412: An If-Match header was provided, but the given ETag did not match the current ETag value.",
+ "operationId": "Datasets_Unregister",
+ "parameters": {
+ "name": "my_dataset_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Update.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Update.json
new file mode 100644
index 000000000000..0933308c2e07
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Datasets_Update.json
@@ -0,0 +1,28 @@
+{
+ "title": "Update the properties of an existing dataset.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A dataset with the specified name was not found.\r\n- 412: An If-Match header was provided, but the given ETag did not match the current ETag value.",
+ "operationId": "Datasets_Update",
+ "parameters": {
+ "name": "my_dataset_name",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "annotationKind": "imageClassification",
+ "annotationFileUris": [
+ "https://microsoft.com/a"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "annotationKind": "imageClassification",
+ "annotationFileUris": [
+ "https://microsoft.com/a"
+ ],
+ "name": "my_dataset_name",
+ "createdDateTime": "2023-01-13T20:46:20.189Z",
+ "updatedDateTime": "2023-01-13T20:46:20.189Z",
+ "eTag": "kzktjgnqkjagdlkualdzikaseg"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageComposition_Rectify.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageComposition_Rectify.json
new file mode 100644
index 000000000000..acad997b48ba
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageComposition_Rectify.json
@@ -0,0 +1,33 @@
+{
+ "title": "Run the image rectification operation against an image with 4 control points provided in the parameter.",
+ "operationId": "ImageComposition_Rectify",
+ "parameters": {
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "url": "https://example.com/image.jpg",
+ "controlPoints": {
+ "topLeft": {
+ "x": 0.1,
+ "y": 0.1
+ },
+ "topRight": {
+ "x": 0.9,
+ "y": 0.1
+ },
+ "bottomLeft": {
+ "x": 0.1,
+ "y": 0.9
+ },
+ "bottomRight": {
+ "x": 0.9,
+ "y": 0.9
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": "Ynl0ZXM="
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageComposition_Stitch.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageComposition_Stitch.json
new file mode 100644
index 000000000000..6fdf89fe5c55
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageComposition_Stitch.json
@@ -0,0 +1,21 @@
+{
+ "title": "Run the image stitching operation against a sequence of images.",
+ "operationId": "ImageComposition_Stitch",
+ "parameters": {
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "images": [
+ "https://example.com/image-1.jpg",
+ "https://example.com/image-2.jpg",
+ "https://example.com/image-3.jpg",
+ "https://example.com/image-4.jpg",
+ "https://example.com/image-5.jpg"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": "Ynl0ZXM="
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeImage.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeImage.json
new file mode 100644
index 000000000000..3ce5f9d65703
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeImage.json
@@ -0,0 +1,23 @@
+{
+ "title": "Return vector from an image.",
+ "operationId": "ImageRetrieval_VectorizeImage",
+ "parameters": {
+ "model-version": "2023-04-01-preview",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "url": "https://example.com/image.jpg"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "vector": [
+ 0.0,
+ 1.1,
+ 2.2
+ ],
+ "modelVersion": "2023-04-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeImageFromImageStream.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeImageFromImageStream.json
new file mode 100644
index 000000000000..df27cfe91af4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeImageFromImageStream.json
@@ -0,0 +1,21 @@
+{
+ "title": "Return vector from an image.",
+ "operationId": "ImageRetrieval_VectorizeImage",
+ "parameters": {
+ "model-version": "2023-04-01-preview",
+ "api-version": "2023-04-01-preview",
+ "body": "Ynl0ZXM="
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "vector": [
+ 0.0,
+ 1.1,
+ 2.2
+ ],
+ "modelVersion": "2023-04-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeText.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeText.json
new file mode 100644
index 000000000000..36ecbf6116db
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ImageRetrieval_VectorizeText.json
@@ -0,0 +1,23 @@
+{
+ "title": "Return vector from a text.",
+ "operationId": "ImageRetrieval_VectorizeText",
+ "parameters": {
+ "model-version": "2023-04-01-preview",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "text": "my text"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "vector": [
+ 0.0,
+ 1.1,
+ 2.2
+ ],
+ "modelVersion": "2023-04-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Create.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Create.json
new file mode 100644
index 000000000000..b0114229dd6e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Create.json
@@ -0,0 +1,28 @@
+{
+ "title": "Evaluate an existing model.\r\n \r\nStatus codes returned:\r\n- 201: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 409: An evaluation with the specified name already exists.",
+ "operationId": "ModelEvaluations_Create",
+ "parameters": {
+ "name": "my_model_name",
+ "evaluationName": "my_evaluation_name",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "evaluationParameters": {
+ "testDatasetName": "my_test_dataset_name"
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "my_evaluation_name",
+ "modelName": "my_model_name",
+ "createdDateTime": "2023-01-13T20:46:22.127Z",
+ "updatedDateTime": "2023-01-13T20:46:22.127Z",
+ "status": "notStarted",
+ "evaluationParameters": {
+ "testDatasetName": "my_test_dataset_name"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Delete.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Delete.json
new file mode 100644
index 000000000000..736fb652a4d2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Delete.json
@@ -0,0 +1,12 @@
+{
+ "title": "Delete a model evaluation. A model evaluation can be deleted if it is in the 'Succeeded' or 'Failed' states.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model evaluation with the specified name was not found.",
+ "operationId": "ModelEvaluations_Delete",
+ "parameters": {
+ "name": "my_model_name",
+ "evaluationName": "my_evaluation_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Get.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Get.json
new file mode 100644
index 000000000000..c745c0c83879
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_Get.json
@@ -0,0 +1,23 @@
+{
+ "title": "Get information about a specific model evaluation.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model evaluation with the specified name was not found.",
+ "operationId": "ModelEvaluations_Get",
+ "parameters": {
+ "name": "my_model_name",
+ "evaluationName": "my_evaluation_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "my_evaluation_name",
+ "modelName": "my_model_name",
+ "createdDateTime": "2023-01-13T20:46:22.127Z",
+ "updatedDateTime": "2023-01-13T20:46:22.127Z",
+ "status": "notStarted",
+ "evaluationParameters": {
+ "testDatasetName": "my_test_dataset_name"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_List.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_List.json
new file mode 100644
index 000000000000..62a96bf981e4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ModelEvaluations_List.json
@@ -0,0 +1,26 @@
+{
+ "title": "Get a list of the available evaluations for a model.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.",
+ "operationId": "ModelEvaluations_List",
+ "parameters": {
+ "name": "my_model_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "my_evaluation_name",
+ "modelName": "my_model_name",
+ "createdDateTime": "2023-01-13T20:46:22.127Z",
+ "updatedDateTime": "2023-01-13T20:46:22.127Z",
+ "status": "notStarted",
+ "evaluationParameters": {
+ "testDatasetName": "my_test_dataset_name"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_CancelTraining.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_CancelTraining.json
new file mode 100644
index 000000000000..6e0807983a45
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_CancelTraining.json
@@ -0,0 +1,11 @@
+{
+ "title": "Cancel model training.\r\n \r\nStatus codes returned:\r\n- 202: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model with the specified name was not found.",
+ "operationId": "Models_CancelTraining",
+ "parameters": {
+ "name": "my_dataset_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "202": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Create.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Create.json
new file mode 100644
index 000000000000..5bb9d7f09e35
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Create.json
@@ -0,0 +1,28 @@
+{
+ "title": "Start training a custom model.\r\n \r\nStatus codes returned:\r\n- 201: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 409: A model with the specified name already exists.",
+ "operationId": "Models_Create",
+ "parameters": {
+ "name": "model_name",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "trainingParameters": {
+ "timeBudgetInHours": 100,
+ "trainingDatasetName": "my_dataset_name"
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "model_name",
+ "createdDateTime": "2023-01-13T20:46:21.210Z",
+ "updatedDateTime": "2023-01-13T20:46:21.210Z",
+ "status": "notStarted",
+ "trainingParameters": {
+ "timeBudgetInHours": 100,
+ "trainingDatasetName": "my_dataset_name"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Delete.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Delete.json
new file mode 100644
index 000000000000..201c96ae9448
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Delete.json
@@ -0,0 +1,11 @@
+{
+ "title": "Delete a custom model. A model can be deleted if it is in one of the 'Succeeded', 'Failed', or 'Canceled' states.\r\nIf a model is in the 'NotStarted' or 'Training' state, cancel training and wait for cancellation to finish before deleting the model.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model with the specified name was not found.",
+ "operationId": "Models_Delete",
+ "parameters": {
+ "name": "my_model_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Get.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Get.json
new file mode 100644
index 000000000000..bdbe7bf54bf1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_Get.json
@@ -0,0 +1,22 @@
+{
+ "title": "Get information about a specific model.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A model with the specified name was not found.",
+ "operationId": "Models_Get",
+ "parameters": {
+ "name": "my_model_name",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "my_model_name",
+ "createdDateTime": "2023-01-13T20:46:21.210Z",
+ "updatedDateTime": "2023-01-13T20:46:21.210Z",
+ "status": "notStarted",
+ "trainingParameters": {
+ "timeBudgetInHours": 1,
+ "trainingDatasetName": "my_dataset_name"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_List.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_List.json
new file mode 100644
index 000000000000..33ea20d409be
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Models_List.json
@@ -0,0 +1,25 @@
+{
+ "title": "Get a list of the available models.\r\n \r\nStatus codes returned:\r\n- 200: Operation completed successfully.\r\n- 400: The request was malformed.",
+ "operationId": "Models_List",
+ "parameters": {
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "my_model_name",
+ "createdDateTime": "2023-01-13T20:46:21.210Z",
+ "updatedDateTime": "2023-01-13T20:46:21.210Z",
+ "status": "notStarted",
+ "trainingParameters": {
+ "timeBudgetInHours": 1,
+ "trainingDatasetName": "my_dataset_name"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/PlanogramCompliance_Match.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/PlanogramCompliance_Match.json
new file mode 100644
index 000000000000..ea291bd4726c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/PlanogramCompliance_Match.json
@@ -0,0 +1,105 @@
+{
+ "title": "Run the planogram matching operation against a planogram and a product understanding result.",
+ "operationId": "PlanogramCompliance_Match",
+ "parameters": {
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "detectedProducts": {
+ "imageMetadata": {
+ "width": 660,
+ "height": 495
+ },
+ "products": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ],
+ "gaps": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "gap",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ]
+ },
+ "planogram": {
+ "width": 10,
+ "height": 16,
+ "products": [
+ {
+ "id": "1",
+ "name": "product-1",
+ "w": 8,
+ "h": 25
+ }
+ ],
+ "fixtures": [
+ {
+ "id": "1",
+ "w": 20,
+ "h": 4,
+ "x": 0,
+ "y": 0
+ }
+ ],
+ "positions": [
+ {
+ "id": "1",
+ "productId": "1",
+ "fixtureId": "1",
+ "x": 0,
+ "y": 0
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "matchingResultPerPosition": [
+ {
+ "positionId": "0",
+ "detectedObject": {
+ "id": "0",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Create.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Create.json
new file mode 100644
index 000000000000..4e7e5d93eb61
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Create.json
@@ -0,0 +1,60 @@
+{
+ "title": "Run the product recognition against a model with an image.",
+ "operationId": "ProductRecognition_Create",
+ "parameters": {
+ "modelName": "model-1",
+ "runName": "run-1",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "runName": "run-1",
+ "modelName": "model-1",
+ "createdDateTime": "2023-04-12T21:56:42.827Z",
+ "updatedDateTime": "2023-04-12T21:56:42.827Z",
+ "status": "completed",
+ "result": {
+ "imageMetadata": {
+ "width": 660,
+ "height": 495
+ },
+ "products": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ],
+ "gaps": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "gap",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Delete.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Delete.json
new file mode 100644
index 000000000000..c0a3ed18c760
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Delete.json
@@ -0,0 +1,12 @@
+{
+ "title": "Delete a product recognition run. A product recognition run can be deleted if it is in the 'Succeeded' or 'Failed' states.\r\n \r\nStatus codes returned:\r\n- 204: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 404: A product recognition run with the specified name was not found.",
+ "operationId": "ProductRecognition_Delete",
+ "parameters": {
+ "modelName": "model-1",
+ "runName": "run-1",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Get.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Get.json
new file mode 100644
index 000000000000..46c3e6197263
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_Get.json
@@ -0,0 +1,60 @@
+{
+ "title": "Get information about a specific product recognition run.",
+ "operationId": "ProductRecognition_Get",
+ "parameters": {
+ "modelName": "model-1",
+ "runName": "run-1",
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "runName": "run-1",
+ "modelName": "model-1",
+ "createdDateTime": "2023-04-12T21:56:42.827Z",
+ "updatedDateTime": "2023-04-12T21:56:42.827Z",
+ "status": "completed",
+ "result": {
+ "imageMetadata": {
+ "width": 660,
+ "height": 495
+ },
+ "products": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ],
+ "gaps": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "gap",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_List.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_List.json
new file mode 100644
index 000000000000..0e827da78c04
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/ProductRecognition_List.json
@@ -0,0 +1,65 @@
+{
+ "title": "List all product recognition run of a model.",
+ "operationId": "ProductRecognition_List",
+ "parameters": {
+ "modelName": "model-1",
+ "skip": 0,
+ "top": 10,
+ "api-version": "2023-04-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "runName": "run-1",
+ "modelName": "model-1",
+ "createdDateTime": "2023-04-12T21:56:42.827Z",
+ "updatedDateTime": "2023-04-12T21:56:42.827Z",
+ "status": "completed",
+ "result": {
+ "imageMetadata": {
+ "width": 660,
+ "height": 495
+ },
+ "products": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "class1",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ],
+ "gaps": [
+ {
+ "id": "1",
+ "boundingBox": {
+ "x": 197,
+ "y": 68,
+ "w": 356,
+ "h": 394
+ },
+ "tags": [
+ {
+ "name": "gap",
+ "confidence": 0.92431640625
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/RegisterDataset_ImageClassification.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/RegisterDataset_ImageClassification.json
new file mode 100644
index 000000000000..f0abe423b1a1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/RegisterDataset_ImageClassification.json
@@ -0,0 +1,28 @@
+{
+ "title": "Register a new dataset.\r\n \r\nStatus codes returned:\r\n- 201: Operation completed successfully.\r\n- 400: The request was malformed.\r\n- 409: A dataset with the specified name already exists.",
+ "operationId": "Datasets_Register",
+ "parameters": {
+ "name": "my_dataset_name",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "annotationKind": "imageClassification",
+ "annotationFileUris": [
+ "https://example.com/dataset.json"
+ ]
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "annotationKind": "imageClassification",
+ "annotationFileUris": [
+ "https://example.com/dataset.json"
+ ],
+ "name": "my_dataset_name",
+ "createdDateTime": "2023-01-13T20:46:20.189Z",
+ "updatedDateTime": "2023-01-13T20:46:20.189Z",
+ "eTag": "kzktjgnqkjagdlkualdzikaseg"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_BackgroundRemoval_FromImageStream.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_BackgroundRemoval_FromImageStream.json
new file mode 100644
index 000000000000..62163fe21557
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_BackgroundRemoval_FromImageStream.json
@@ -0,0 +1,14 @@
+{
+ "title": "Analyze the input image of incoming request without deployment. The request either contains an image stream\r\nwith any content type ['image/*', '\"application/octet-stream'], or a JSON payload which includes a url\r\nproperty to be used to retrieve the image stream. An image stream of content type 'image/png' is returned,\r\nwhere the pixel values depend on the analysis mode. The returned image has the same dimensions as the input image\r\nfor modes: foregroundMatting. The returned image has the same aspect ratio and same dimensions as the input image\r\nup to a limit of 16 megapixels for modes: backgroundRemoval.",
+ "operationId": "Segment",
+ "parameters": {
+ "mode": "foregroundMatting",
+ "api-version": "2023-04-01-preview",
+ "body": "Ynl0ZXM="
+ },
+ "responses": {
+ "200": {
+ "body": "Ynl0ZXM="
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_BackgroundRemoval_FromImageUrl.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_BackgroundRemoval_FromImageUrl.json
new file mode 100644
index 000000000000..a0ef644a841b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_BackgroundRemoval_FromImageUrl.json
@@ -0,0 +1,16 @@
+{
+ "title": "Analyze the input image of incoming request without deployment. The request either contains an image stream\r\nwith any content type ['image/*', '\"application/octet-stream'], or a JSON payload which includes a url\r\nproperty to be used to retrieve the image stream. An image stream of content type 'image/png' is returned,\r\nwhere the pixel values depend on the analysis mode. The returned image has the same dimensions as the input image\r\nfor modes: foregroundMatting. The returned image has the same aspect ratio and same dimensions as the input image\r\nup to a limit of 16 megapixels for modes: backgroundRemoval.",
+ "operationId": "Segment",
+ "parameters": {
+ "mode": "backgroundRemoval",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "url": "{image url}"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": "Ynl0ZXM="
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_ForegroundMatting_FromImageStream.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_ForegroundMatting_FromImageStream.json
new file mode 100644
index 000000000000..62163fe21557
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_ForegroundMatting_FromImageStream.json
@@ -0,0 +1,14 @@
+{
+ "title": "Analyze the input image of incoming request without deployment. The request either contains an image stream\r\nwith any content type ['image/*', '\"application/octet-stream'], or a JSON payload which includes a url\r\nproperty to be used to retrieve the image stream. An image stream of content type 'image/png' is returned,\r\nwhere the pixel values depend on the analysis mode. The returned image has the same dimensions as the input image\r\nfor modes: foregroundMatting. The returned image has the same aspect ratio and same dimensions as the input image\r\nup to a limit of 16 megapixels for modes: backgroundRemoval.",
+ "operationId": "Segment",
+ "parameters": {
+ "mode": "foregroundMatting",
+ "api-version": "2023-04-01-preview",
+ "body": "Ynl0ZXM="
+ },
+ "responses": {
+ "200": {
+ "body": "Ynl0ZXM="
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_ForegroundMatting_FromImageUrl.json b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_ForegroundMatting_FromImageUrl.json
new file mode 100644
index 000000000000..8e8bae1966d9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/preview/2023-04-01-preview/examples/Segment_ForegroundMatting_FromImageUrl.json
@@ -0,0 +1,16 @@
+{
+ "title": "Analyze the input image of incoming request without deployment. The request either contains an image stream\r\nwith any content type ['image/*', '\"application/octet-stream'], or a JSON payload which includes a url\r\nproperty to be used to retrieve the image stream. An image stream of content type 'image/png' is returned,\r\nwhere the pixel values depend on the analysis mode. The returned image has the same dimensions as the input image\r\nfor modes: foregroundMatting. The returned image has the same aspect ratio and same dimensions as the input image\r\nup to a limit of 16 megapixels for modes: backgroundRemoval.",
+ "operationId": "Segment",
+ "parameters": {
+ "mode": "foregroundMatting",
+ "api-version": "2023-04-01-preview",
+ "body": {
+ "url": "{image url}"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": "Ynl0ZXM="
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/UnifiedVision/readme.md b/specification/cognitiveservices/data-plane/UnifiedVision/readme.md
index 67fce92e5623..816b4c389528 100644
--- a/specification/cognitiveservices/data-plane/UnifiedVision/readme.md
+++ b/specification/cognitiveservices/data-plane/UnifiedVision/readme.md
@@ -2,11 +2,11 @@
> see https://aka.ms/autorest
-The current release is `2023-02-01-preview`
+The current release is `2023-04-01-preview`
``` yaml
-tag: 2023-02-01-preview
+tag: 2023-04-01-preview
openapi-type: data-plane
add-credentials: true
```
@@ -18,3 +18,10 @@ These settings apply only when `--tag=2023-02-01-preview` is specified on the co
``` yaml $(tag) == '2023-02-01-preview'
input-file: preview/2023-02-01-preview/UnifiedVision.json
```
+
+### 2023-04-01-preview
+These settings apply only when `--tag=2023-04-01-preview` is specified on the command line.
+
+``` yaml $(tag) == '2023-04-01-preview'
+input-file: preview/2023-04-01-preview/UnifiedVision.json
+```
\ No newline at end of file
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/communicationservicescallautomation.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/communicationservicescallautomation.json
new file mode 100644
index 000000000000..8d6e5b0ad3be
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/communicationservicescallautomation.json
@@ -0,0 +1,2780 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-06-15-preview",
+ "title": "Azure Communication Service Call Automation APIs",
+ "description": "Azure Communication Service Call Automation APIs"
+ },
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/calling/callConnections": {
+ "post": {
+ "tags": [
+ "PreConnections"
+ ],
+ "summary": "Create an outbound call.",
+ "description": "Create an outbound call.",
+ "operationId": "CreateCall",
+ "parameters": [
+ {
+ "name": "createCallRequest",
+ "in": "body",
+ "description": "The create call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CreateCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "201": {
+ "description": "Returns details of the call properties once the CreateCall request is received by service. You will receive CallConnected event at your specified callback URI, once the call is connected.",
+ "schema": {
+ "$ref": "#/definitions/CallConnectionProperties"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CreateCall": {
+ "$ref": "./examples/CreateCall.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections:answer": {
+ "post": {
+ "tags": [
+ "PreConnections"
+ ],
+ "summary": "Answer a Call.",
+ "description": "Answer a call using the IncomingCallContext from Event Grid.",
+ "operationId": "AnswerCall",
+ "parameters": [
+ {
+ "name": "answerCallRequest",
+ "in": "body",
+ "description": "The answer call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AnswerCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns details of the call properties once the AnswerCall request is received by service. You will receive CallConnected event at your specified callback URI, once the call is connected.",
+ "schema": {
+ "$ref": "#/definitions/CallConnectionProperties"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AnswerCall": {
+ "$ref": "./examples/AnswerCall.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections:redirect": {
+ "post": {
+ "tags": [
+ "PreConnections"
+ ],
+ "summary": "Redirect a call.",
+ "description": "Redirect a call.",
+ "operationId": "RedirectCall",
+ "parameters": [
+ {
+ "name": "redirectCallRequest",
+ "in": "body",
+ "description": "The redirect call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RedirectCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "204": {
+ "description": "The service has redirected the call to specified endpoint."
+ }
+ },
+ "x-ms-examples": {
+ "RedirectCall": {
+ "$ref": "./examples/RedirectCall.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections:reject": {
+ "post": {
+ "tags": [
+ "PreConnections"
+ ],
+ "summary": "Reject the call.",
+ "description": "Reject the call.",
+ "operationId": "RejectCall",
+ "parameters": [
+ {
+ "name": "rejectCallRequest",
+ "in": "body",
+ "description": "The reject call request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RejectCallRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "204": {
+ "description": "The service has rejected the call."
+ }
+ },
+ "x-ms-examples": {
+ "RejectCall": {
+ "$ref": "./examples/RejectCall.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}": {
+ "get": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Get the detail properties of an ongoing call.",
+ "operationId": "CallConnection_GetCall",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns details of the call properties.",
+ "schema": {
+ "$ref": "#/definitions/CallConnectionProperties"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_GetCall": {
+ "$ref": "./examples/CallConnection_GetCall.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Hang up call automation service from the call. This will make call automation service leave the call, but does not terminate if there are more than 1 caller in the call.",
+ "description": "Hang up call automation service from the call. This will make call automation service leave the call, but does not terminate if there are more than 1 caller in the call.",
+ "operationId": "CallConnection_HangupCall",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "204": {
+ "description": "Call automation service has left the call."
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_HangupCall": {
+ "$ref": "./examples/CallConnection_HangupCall.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:terminate": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Terminate a call using CallConnectionId.",
+ "description": "Terminate a call using CallConnectionId.",
+ "operationId": "CallConnection_TerminateCall",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The terminate call request.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "204": {
+ "description": "The call is terminated."
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_TerminateCall": {
+ "$ref": "./examples/CallConnection_TerminateCall.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:transferToParticipant": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Transfer the call to a participant.",
+ "description": "Transfer the call to a participant.",
+ "operationId": "CallConnection_TransferToParticipant",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "transferToParticipantRequest",
+ "in": "body",
+ "description": "The transfer to participant request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TransferToParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the transfer request and will begin processing it. You will receive either CallTransferAccepted or CallTransferFailed event at your specified callback URI to update you on the status of the request.",
+ "schema": {
+ "$ref": "#/definitions/TransferCallResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_TransferToParticipant": {
+ "$ref": "./examples/CallConnection_TransferToParticipant.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:play": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Plays audio to participants in the call.",
+ "description": "Plays audio to participants in the call.",
+ "operationId": "CallMedia_Play",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "playRequest",
+ "in": "body",
+ "description": "play request payload.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PlayRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the play request and will begin processing it. You will receive either PlayCompleted or PlayFailed event at your specified callback URI to update you on the status of the request."
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_Play": {
+ "$ref": "./examples/CallMedia_Play.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:cancelAllMediaOperations": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Cancel all media operations in a call.",
+ "description": "Cancel all media operations in a call.",
+ "operationId": "CallMedia_CancelAllMediaOperations",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the cancel request and will begin processing it. RecognizeCanceled and/or PlayCanceled at your specified callback URI to update you on the status of the request, based on which media operation has been canceled by it."
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_CancelAllMediaOperations": {
+ "$ref": "./examples/CallMedia_CancelAllMediaOperations.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:recognize": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Recognize media from call.",
+ "description": "Recognize media from call.",
+ "operationId": "CallMedia_Recognize",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "recognizeRequest",
+ "in": "body",
+ "description": "The media recognize request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RecognizeRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the recognize request and will begin processing it. You will receive either RecognizeCompleted or RecognizeFailed event at your specified callback URI to update you on the status of the request."
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_Recognize": {
+ "$ref": "./examples/CallMedia_Recognize.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:startContinuousDtmfRecognition": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Start continuous Dtmf recognition by subscribing to tones.",
+ "operationId": "CallMedia_StartContinuousDtmfRecognition",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "continuousDtmfRecognitionRequest",
+ "in": "body",
+ "description": "The continuous recognize request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ContinuousDtmfRecognitionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "The service has accepted the start continuous recognize request and will begin processing it. You will receive events at your specified callback URI to update you on the status of the request."
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_StartContinuousDtmfRecognition": {
+ "$ref": "./examples/CallMedia_StartContinuousDtmfRecognition.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:stopContinuousDtmfRecognition": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Stop continuous Dtmf recognition by unsubscribing to tones.",
+ "operationId": "CallMedia_StopContinuousDtmfRecognition",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "continuousDtmfRecognitionRequest",
+ "in": "body",
+ "description": "The continuous recognize request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ContinuousDtmfRecognitionRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "The service has accepted the stop continuous recognize request and will begin processing it. You will receive events at your specified callback URI to update you on the status of the request."
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_StopContinuousDtmfRecognition": {
+ "$ref": "./examples/CallMedia_StopContinuousDtmfRecognition.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}:sendDtmfTones": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Send dtmf tones.",
+ "description": "Send dtmf tones.",
+ "operationId": "CallMedia_SendDtmfTones",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "sendDtmfTonesRequest",
+ "in": "body",
+ "description": "The send dtmf tones request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SendDtmfTonesRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "Returns the send dtmf tones response",
+ "schema": {
+ "$ref": "#/definitions/SendDtmfTonesResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallMedia_SendDtmfTones": {
+ "$ref": "./examples/CallMedia_SendDtmfTones.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants": {
+ "get": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Get participants from a call.",
+ "description": "Get participants from a call.",
+ "operationId": "CallConnection_GetParticipants",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the get participants response.",
+ "schema": {
+ "$ref": "#/definitions/GetParticipantsResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_GetParticipants": {
+ "$ref": "./examples/CallConnection_GetParticipants.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants:add": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Add a participant to the call.",
+ "description": "Add a participant to the call.",
+ "operationId": "CallConnection_AddParticipant",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "addParticipantRequest",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AddParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the add participant request and will begin processing it. You will receive either AddParticipantSucceeded or AddParticipantFailed event at your specified callback URI to update you on the status of the request.",
+ "schema": {
+ "$ref": "#/definitions/AddParticipantResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_AddParticipant": {
+ "$ref": "./examples/CallConnection_AddParticipant.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants:remove": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Remove a participant from the call using identifier.",
+ "description": "Remove a participant from the call using identifier.",
+ "operationId": "CallConnection_RemoveParticipant",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "removeParticipantRequest",
+ "in": "body",
+ "description": "The participant to be removed from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RemoveParticipantRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the remove participant request and will begin processing it. You will receive either RemoveParticipantSucceeded or RemoveParticipantFailed event at your specified callback URI to update you on the status of the request.",
+ "schema": {
+ "$ref": "#/definitions/RemoveParticipantResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_RemoveParticipant": {
+ "$ref": "./examples/CallConnection_RemoveParticipant.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants:mute": {
+ "post": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Mute participants from the call using identifier.",
+ "description": "Mute participants from the call using identifier.",
+ "operationId": "CallConnection_Mute",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "muteParticipantsRequest",
+ "in": "body",
+ "description": "The participants to be muted from the call.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MuteParticipantsRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "Returns the mute participants response",
+ "schema": {
+ "$ref": "#/definitions/MuteParticipantsResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_Mute": {
+ "$ref": "./examples/CallConnection_Mute.json"
+ }
+ }
+ }
+ },
+ "/calling/callConnections/{callConnectionId}/participants/{participantRawId}": {
+ "get": {
+ "tags": [
+ "MidConnections"
+ ],
+ "summary": "Get participant from a call.",
+ "description": "Get participant from a call.",
+ "operationId": "CallConnection_GetParticipant",
+ "parameters": [
+ {
+ "name": "callConnectionId",
+ "in": "path",
+ "description": "The call connection Id",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "participantRawId",
+ "in": "path",
+ "description": "Raw id of the participant to retrieve.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the detail of the requested participant.",
+ "schema": {
+ "$ref": "#/definitions/CallParticipant"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallConnection_GetParticipant": {
+ "$ref": "./examples/CallConnection_GetParticipant.json"
+ }
+ }
+ }
+ },
+ "/calling/recordings": {
+ "post": {
+ "tags": [
+ "Recording"
+ ],
+ "summary": "Start recording the call.",
+ "operationId": "CallRecording_StartRecording",
+ "parameters": [
+ {
+ "name": "startCallRecording",
+ "in": "body",
+ "description": "The request body of start call recording request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StartCallRecordingRequest"
+ }
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "Repeatability-Request-ID",
+ "in": "header",
+ "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID.",
+ "type": "string",
+ "format": "uuid"
+ },
+ {
+ "name": "Repeatability-First-Sent",
+ "in": "header",
+ "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT.",
+ "type": "string",
+ "format": "date-time-rfc1123"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the start call recording response.",
+ "schema": {
+ "$ref": "#/definitions/RecordingStateResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallRecording_StartRecording": {
+ "$ref": "./examples/CallRecording_StartRecording.json"
+ }
+ }
+ }
+ },
+ "/calling/recordings/{recordingId}": {
+ "get": {
+ "tags": [
+ "Recording"
+ ],
+ "summary": "Get call recording properties.",
+ "operationId": "CallRecording_GetRecordingProperties",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Returns the recording properties.",
+ "schema": {
+ "$ref": "#/definitions/RecordingStateResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CallRecording_GetRecordingProperties": {
+ "$ref": "./examples/CallRecording_GetRecordingProperties.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Recording"
+ ],
+ "summary": "Stop recording the call.",
+ "operationId": "CallRecording_StopRecording",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "204": {
+ "description": "Returns the stop call recording response."
+ }
+ },
+ "x-ms-examples": {
+ "CallRecording_StopRecording": {
+ "$ref": "./examples/CallRecording_StopRecording.json"
+ }
+ }
+ }
+ },
+ "/calling/recordings/{recordingId}:pause": {
+ "post": {
+ "tags": [
+ "Recording"
+ ],
+ "summary": "Pause recording the call.",
+ "operationId": "CallRecording_PauseRecording",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the pause request and will begin processing it."
+ }
+ },
+ "x-ms-examples": {
+ "CallRecording_PauseRecording": {
+ "$ref": "./examples/CallRecording_PauseRecording.json"
+ }
+ }
+ }
+ },
+ "/calling/recordings/{recordingId}:resume": {
+ "post": {
+ "tags": [
+ "Recording"
+ ],
+ "summary": "Resume recording the call.",
+ "operationId": "CallRecording_ResumeRecording",
+ "parameters": [
+ {
+ "name": "recordingId",
+ "in": "path",
+ "description": "The recording id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
+ },
+ "202": {
+ "description": "The service has accepted the resume request and will begin processing it."
+ }
+ },
+ "x-ms-examples": {
+ "CallRecording_ResumeRecording": {
+ "$ref": "./examples/CallRecording_ResumeRecording.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CreateCallRequest": {
+ "description": "The request payload for creating the call.",
+ "required": [
+ "targets",
+ "callbackUri"
+ ],
+ "type": "object",
+ "properties": {
+ "targets": {
+ "description": "The targets of the call.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CommunicationIdentifierModel"
+ }
+ },
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that's shown to the PSTN participant being invited.\r\nRequired only when calling a PSTN callee."
+ },
+ "sourceDisplayName": {
+ "description": "Display name of the call if dialing out to a pstn number",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "#/definitions/CommunicationUserIdentifierModel",
+ "description": "The identifier of the source of the call"
+ },
+ "operationContext": {
+ "description": "A customer set value used to track the answering of a call.",
+ "type": "string"
+ },
+ "callbackUri": {
+ "description": "The callback URI.",
+ "type": "string"
+ },
+ "cognitiveServicesEndpoint": {
+ "description": "The identifier of the Cognitive Service resource assigned to this call.",
+ "type": "string"
+ }
+ }
+ },
+ "CommunicationIdentifierModel": {
+ "$ref": "../../../Common/stable/2022-07-13/common.json#/definitions/CommunicationIdentifierModel"
+ },
+ "PhoneNumberIdentifierModel": {
+ "$ref": "../../../Common/stable/2022-07-13/common.json#/definitions/PhoneNumberIdentifierModel"
+ },
+ "CommunicationUserIdentifierModel": {
+ "$ref": "../../../Common/stable/2022-07-13/common.json#/definitions/CommunicationUserIdentifierModel"
+ },
+ "CommunicationErrorResponse": {
+ "$ref": "../../../Common/stable/2022-07-13/common.json#/definitions/CommunicationErrorResponse"
+ },
+ "CallConnectionStateModel": {
+ "description": "The state of the call connection.",
+ "enum": [
+ "unknown",
+ "connecting",
+ "connected",
+ "transferring",
+ "transferAccepted",
+ "disconnecting",
+ "disconnected"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CallConnectionStateModel",
+ "modelAsString": true
+ }
+ },
+ "CallConnectionProperties": {
+ "description": "Properties of a call connection",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "The call connection id.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "The server call id.",
+ "type": "string"
+ },
+ "targets": {
+ "description": "The targets of the call.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CommunicationIdentifierModel"
+ }
+ },
+ "callConnectionState": {
+ "$ref": "#/definitions/CallConnectionStateModel"
+ },
+ "callbackUri": {
+ "description": "The callback URI.",
+ "type": "string"
+ },
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that's shown to the PSTN participant being invited.\r\nRequired only when calling a PSTN callee."
+ },
+ "sourceDisplayName": {
+ "description": "Display name of the call if dialing out to a pstn number.",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Source identity."
+ },
+ "correlationId": {
+ "description": "The correlation ID.",
+ "type": "string"
+ },
+ "answeredBy": {
+ "$ref": "#/definitions/CommunicationUserIdentifierModel",
+ "description": "Identity of the answering entity. Only populated when identity is provided in the request."
+ }
+ }
+ },
+ "AnswerCallRequest": {
+ "description": "The request payload for answering the call.",
+ "required": [
+ "incomingCallContext",
+ "callbackUri"
+ ],
+ "type": "object",
+ "properties": {
+ "incomingCallContext": {
+ "description": "The context associated with the call.",
+ "type": "string"
+ },
+ "callbackUri": {
+ "description": "The callback uri.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "A customer set value used to track the answering of a call.",
+ "type": "string"
+ },
+ "cognitiveServicesEndpoint": {
+ "description": "The endpoint URL of the Azure Cognitive Services resource attached",
+ "type": "string"
+ },
+ "answeredBy": {
+ "$ref": "#/definitions/CommunicationUserIdentifierModel",
+ "description": "The identifier of the call automation entity which answers the call"
+ }
+ }
+ },
+ "RedirectCallRequest": {
+ "description": "The request payload for redirecting the call.",
+ "required": [
+ "incomingCallContext",
+ "target"
+ ],
+ "type": "object",
+ "properties": {
+ "incomingCallContext": {
+ "description": "The context associated with the call.",
+ "type": "string"
+ },
+ "target": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The target identity to redirect the call to."
+ }
+ }
+ },
+ "CallRejectReason": {
+ "description": "The rejection reason.",
+ "enum": [
+ "none",
+ "busy",
+ "forbidden"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CallRejectReason",
+ "modelAsString": true
+ }
+ },
+ "RejectCallRequest": {
+ "description": "The request payload for rejecting the call.",
+ "required": [
+ "incomingCallContext"
+ ],
+ "type": "object",
+ "properties": {
+ "incomingCallContext": {
+ "description": "The context associated with the call.",
+ "type": "string"
+ },
+ "callRejectReason": {
+ "$ref": "#/definitions/CallRejectReason"
+ }
+ }
+ },
+ "TransferToParticipantRequest": {
+ "description": "The request payload for transferring call to a participant.",
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The identity of the target where call should be transferred to."
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "TransferCallResponse": {
+ "description": "The response payload for transferring the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "PlayRequest": {
+ "required": [
+ "playSources"
+ ],
+ "type": "object",
+ "properties": {
+ "playSources": {
+ "description": "The source of the audio to be played.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PlaySource"
+ }
+ },
+ "playTo": {
+ "description": "The list of call participants play provided audio to.\r\nPlays to everyone in the call when not provided.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CommunicationIdentifierModel"
+ }
+ },
+ "playOptions": {
+ "$ref": "#/definitions/PlayOptions",
+ "description": "Defines options for playing the audio."
+ },
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "PlaySourceType": {
+ "description": "Defines the type of the play source",
+ "enum": [
+ "file",
+ "text",
+ "ssml"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PlaySourceType",
+ "modelAsString": true
+ }
+ },
+ "PlaySource": {
+ "required": [
+ "kind"
+ ],
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/PlaySourceType"
+ },
+ "playSourceCacheId": {
+ "description": "Defines the identifier to be used for caching related media",
+ "type": "string"
+ },
+ "file": {
+ "$ref": "#/definitions/FileSource",
+ "description": "Defines the file source info to be used for play"
+ },
+ "text": {
+ "$ref": "#/definitions/TextSource",
+ "description": "Defines the text source info to be used for play"
+ },
+ "ssml": {
+ "$ref": "#/definitions/SsmlSource",
+ "description": "Defines the ssml(Speech Synthesis Markup Language) source info to be used for play"
+ }
+ }
+ },
+ "PlayOptions": {
+ "required": [
+ "loop"
+ ],
+ "type": "object",
+ "properties": {
+ "loop": {
+ "description": "The option to play the provided audio source in loop when set to true",
+ "type": "boolean"
+ }
+ }
+ },
+ "FileSource": {
+ "required": [
+ "uri"
+ ],
+ "type": "object",
+ "properties": {
+ "uri": {
+ "description": "Uri for the audio file to be played",
+ "type": "string"
+ }
+ }
+ },
+ "VoiceKind": {
+ "description": "Voice kind type",
+ "enum": [
+ "male",
+ "female"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "VoiceKind",
+ "modelAsString": true
+ }
+ },
+ "TextSource": {
+ "required": [
+ "text"
+ ],
+ "type": "object",
+ "properties": {
+ "text": {
+ "description": "Text for the cognitive service to be played",
+ "type": "string"
+ },
+ "sourceLocale": {
+ "description": "Source language locale to be played\r\nRefer to available locales here: ",
+ "type": "string"
+ },
+ "voiceKind": {
+ "$ref": "#/definitions/VoiceKind"
+ },
+ "voiceName": {
+ "description": "Voice name to be played\r\nRefer to available Text-to-speech voices here: ",
+ "type": "string"
+ },
+ "customVoiceEndpointId": {
+ "description": "Endpoint where the custom voice was deployed.",
+ "type": "string"
+ }
+ }
+ },
+ "SsmlSource": {
+ "required": [
+ "ssmlText"
+ ],
+ "type": "object",
+ "properties": {
+ "ssmlText": {
+ "description": "Ssml string for the cognitive service to be played",
+ "type": "string"
+ },
+ "customVoiceEndpointId": {
+ "description": "Endpoint where the custom voice was deployed.",
+ "type": "string"
+ }
+ }
+ },
+ "RecognizeInputType": {
+ "description": "Determines the type of the recognition.",
+ "enum": [
+ "dtmf",
+ "speech",
+ "speechOrDtmf",
+ "choices"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecognizeInputType",
+ "modelAsString": true
+ }
+ },
+ "RecognizeRequest": {
+ "required": [
+ "recognizeInputType",
+ "recognizeOptions"
+ ],
+ "type": "object",
+ "properties": {
+ "recognizeInputType": {
+ "$ref": "#/definitions/RecognizeInputType"
+ },
+ "playPrompt": {
+ "$ref": "#/definitions/PlaySource",
+ "description": "The source of the audio to be played for recognition."
+ },
+ "interruptCallMediaOperation": {
+ "description": "If set recognize can barge into other existing queued-up/currently-processing requests.",
+ "type": "boolean"
+ },
+ "recognizeOptions": {
+ "$ref": "#/definitions/RecognizeOptions",
+ "description": "Defines options for recognition."
+ },
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "RecognizeOptions": {
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "interruptPrompt": {
+ "description": "Determines if we interrupt the prompt and start recognizing.",
+ "type": "boolean"
+ },
+ "initialSilenceTimeoutInSeconds": {
+ "format": "int32",
+ "description": "Time to wait for first input after prompt (if any).",
+ "maximum": 300,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Target participant of DTMF tone recognition."
+ },
+ "speechLanguage": {
+ "description": "Speech language to be recognized, If not set default is en-US",
+ "type": "string"
+ },
+ "speechRecognitionModelEndpointId": {
+ "description": "Endpoint where the custom model was deployed.",
+ "type": "string"
+ },
+ "dtmfOptions": {
+ "$ref": "#/definitions/DtmfOptions",
+ "description": "Defines configurations for DTMF."
+ },
+ "choices": {
+ "description": "Defines Ivr choices for recognize.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Choice"
+ }
+ },
+ "speechOptions": {
+ "$ref": "#/definitions/SpeechOptions",
+ "description": "Defines continuous speech recognition option."
+ }
+ }
+ },
+ "Tone": {
+ "enum": [
+ "zero",
+ "one",
+ "two",
+ "three",
+ "four",
+ "five",
+ "six",
+ "seven",
+ "eight",
+ "nine",
+ "a",
+ "b",
+ "c",
+ "d",
+ "pound",
+ "asterisk"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Tone",
+ "modelAsString": true
+ }
+ },
+ "DtmfOptions": {
+ "description": "Options for DTMF recognition",
+ "type": "object",
+ "properties": {
+ "interToneTimeoutInSeconds": {
+ "format": "int32",
+ "description": "Time to wait between DTMF inputs to stop recognizing.",
+ "maximum": 60,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "maxTonesToCollect": {
+ "format": "int32",
+ "description": "Maximum number of DTMF tones to be collected.",
+ "type": "integer"
+ },
+ "stopTones": {
+ "description": "List of tones that will stop recognizing.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tone"
+ }
+ }
+ }
+ },
+ "Choice": {
+ "required": [
+ "label",
+ "phrases"
+ ],
+ "type": "object",
+ "properties": {
+ "label": {
+ "description": "Identifier for a given choice",
+ "type": "string"
+ },
+ "phrases": {
+ "description": "List of phrases to recognize",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tone": {
+ "$ref": "#/definitions/Tone"
+ }
+ }
+ },
+ "SpeechOptions": {
+ "description": "Options for continuous speech recognition",
+ "type": "object",
+ "properties": {
+ "endSilenceTimeoutInMs": {
+ "format": "int64",
+ "description": "The length of end silence when user stops speaking and cogservice send response.",
+ "type": "integer"
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionRequest": {
+ "required": [
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Defines options for recognition."
+ },
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "SendDtmfTonesRequest": {
+ "required": [
+ "tones",
+ "targetParticipant"
+ ],
+ "type": "object",
+ "properties": {
+ "tones": {
+ "description": "List of tones to be sent to target participant.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tone"
+ }
+ },
+ "targetParticipant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Target participant of send Dtmf tones."
+ },
+ "operationContext": {
+ "description": "The value to identify context of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "SendDtmfTonesResult": {
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "GetParticipantsResponse": {
+ "description": "The response payload for getting participants of the call.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of the current participants in the call.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CallParticipant"
+ }
+ },
+ "nextLink": {
+ "description": "Continue of the list of participants",
+ "type": "string"
+ }
+ }
+ },
+ "CallParticipant": {
+ "description": "A call participant.",
+ "type": "object",
+ "properties": {
+ "identifier": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Communication identifier of the participant"
+ },
+ "isMuted": {
+ "description": "Is participant muted",
+ "type": "boolean"
+ }
+ }
+ },
+ "AddParticipantRequest": {
+ "description": "The request payload for adding participant to the call.",
+ "required": [
+ "participantToAdd"
+ ],
+ "type": "object",
+ "properties": {
+ "sourceCallerIdNumber": {
+ "$ref": "#/definitions/PhoneNumberIdentifierModel",
+ "description": "The source caller Id, a phone number, that's shown to the PSTN participant being invited.\r\nRequired only when inviting a PSTN participant."
+ },
+ "sourceDisplayName": {
+ "description": "(Optional) The display name of the source that is associated with this invite operation when\r\nadding a PSTN participant or teams user. Note: Will not update the display name in the roster.",
+ "type": "string"
+ },
+ "participantToAdd": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The participant to invite."
+ },
+ "invitationTimeoutInSeconds": {
+ "format": "int32",
+ "description": "Gets or sets the timeout to wait for the invited participant to pickup.\r\nThe maximum value of this is 180 seconds",
+ "maximum": 180,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "AddParticipantResponse": {
+ "description": "The response payload for adding participants to the call.",
+ "type": "object",
+ "properties": {
+ "participant": {
+ "$ref": "#/definitions/CallParticipant",
+ "description": "List of current participants in the call."
+ },
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "RemoveParticipantRequest": {
+ "description": "The remove participant by identifier request.",
+ "required": [
+ "participantToRemove"
+ ],
+ "type": "object",
+ "properties": {
+ "participantToRemove": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The participants to be removed from the call."
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "RemoveParticipantResponse": {
+ "description": "The response payload for removing participants of the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "MuteParticipantsRequest": {
+ "description": "The request payload for muting participants from the call.",
+ "required": [
+ "targetParticipants"
+ ],
+ "type": "object",
+ "properties": {
+ "targetParticipants": {
+ "description": "Participants to be muted from the call.\r\nOnly ACS Users are supported.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CommunicationIdentifierModel"
+ }
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "MuteParticipantsResult": {
+ "description": "The result payload for muting participants from the call.",
+ "type": "object",
+ "properties": {
+ "operationContext": {
+ "description": "The operation context provided by client.",
+ "type": "string"
+ }
+ }
+ },
+ "RecordingContentType": {
+ "description": "The content type of call recording.",
+ "enum": [
+ "audio",
+ "audioVideo"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingContentType",
+ "modelAsString": true
+ }
+ },
+ "RecordingChannelType": {
+ "description": "The channel type of call recording.",
+ "enum": [
+ "mixed",
+ "unmixed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingChannelType",
+ "modelAsString": true
+ }
+ },
+ "RecordingFormatType": {
+ "description": "The format type of call recording.",
+ "enum": [
+ "wav",
+ "mp3",
+ "mp4"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingFormatType",
+ "modelAsString": true
+ }
+ },
+ "StartCallRecordingRequest": {
+ "description": "The request payload start for call recording operation with call locator.",
+ "required": [
+ "callLocator"
+ ],
+ "type": "object",
+ "properties": {
+ "callLocator": {
+ "$ref": "#/definitions/CallLocator",
+ "description": "The call locator."
+ },
+ "recordingStateCallbackUri": {
+ "description": "The uri to send notifications to.",
+ "type": "string"
+ },
+ "recordingContentType": {
+ "$ref": "#/definitions/RecordingContentType"
+ },
+ "recordingChannelType": {
+ "$ref": "#/definitions/RecordingChannelType"
+ },
+ "recordingFormatType": {
+ "$ref": "#/definitions/RecordingFormatType"
+ },
+ "audioChannelParticipantOrdering": {
+ "description": "The sequential order in which audio channels are assigned to participants in the unmixed recording.\r\nWhen 'recordingChannelType' is set to 'unmixed' and `audioChannelParticipantOrdering is not specified,\r\nthe audio channel to participant mapping will be automatically assigned based on the order in which participant\r\nfirst audio was detected. Channel to participant mapping details can be found in the metadata of the recording.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CommunicationIdentifierModel"
+ }
+ },
+ "channelAffinity": {
+ "description": "The channel affinity of call recording\r\nWhen 'recordingChannelType' is set to 'unmixed', if channelAffinity is not specified, 'channel' will be automatically assigned.\r\nChannel-Participant mapping details can be found in the metadata of the recording.\r\n///",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ChannelAffinity"
+ }
+ }
+ }
+ },
+ "CallLocatorKind": {
+ "description": "The call locator kind.",
+ "enum": [
+ "groupCallLocator",
+ "serverCallLocator"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CallLocatorKind",
+ "modelAsString": true
+ }
+ },
+ "CallLocator": {
+ "description": "The locator used for joining or taking action on a call.",
+ "type": "object",
+ "properties": {
+ "groupCallId": {
+ "description": "The group call id",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "The server call id.",
+ "type": "string"
+ },
+ "kind": {
+ "$ref": "#/definitions/CallLocatorKind"
+ }
+ }
+ },
+ "ChannelAffinity": {
+ "description": "Channel affinity for a participant",
+ "required": [
+ "participant"
+ ],
+ "type": "object",
+ "properties": {
+ "channel": {
+ "format": "int32",
+ "description": "Channel number to which bitstream from a particular participant will be written.",
+ "maximum": 4,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "The identifier for the participant whose bitstream will be written to the channel \r\nrepresented by the channel number."
+ }
+ }
+ },
+ "RecordingState": {
+ "enum": [
+ "active",
+ "inactive"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecordingState",
+ "modelAsString": true
+ }
+ },
+ "RecordingStateResponse": {
+ "type": "object",
+ "properties": {
+ "recordingId": {
+ "type": "string"
+ },
+ "recordingState": {
+ "$ref": "#/definitions/RecordingState"
+ }
+ }
+ },
+ "AddParticipantFailed": {
+ "description": "The failed to add participants event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participant"
+ }
+ }
+ },
+ "ResultInformation": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "format": "int32",
+ "description": "Code of the current result. This can be helpful to Call Automation team to troubleshoot the issue if this result was unexpected.",
+ "type": "integer"
+ },
+ "subCode": {
+ "format": "int32",
+ "description": "Subcode of the current result. This can be helpful to Call Automation team to troubleshoot the issue if this result was unexpected.",
+ "type": "integer"
+ },
+ "message": {
+ "description": "Detail message that describes the current result.",
+ "type": "string"
+ }
+ }
+ },
+ "AddParticipantSucceeded": {
+ "description": "The participants successfully added event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participant"
+ }
+ }
+ },
+ "CallConnected": {
+ "description": "The call connected event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers to set the context for creating a new call. This property will be null for answering a call.",
+ "type": "string"
+ }
+ }
+ },
+ "CallDisconnected": {
+ "description": "The call disconnected event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers to set the context for creating a new call. This property will be null for answering a call.",
+ "type": "string"
+ }
+ }
+ },
+ "CallTransferAccepted": {
+ "description": "The call transfer accepted event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "CallTransferFailed": {
+ "description": "The call transfer failed event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "ParticipantsUpdated": {
+ "description": "The participants updated in a call event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "sequenceNumber": {
+ "format": "int32",
+ "description": "The Sequence Number of the event",
+ "type": "integer"
+ },
+ "participants": {
+ "description": "The list of participants in the call.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CallParticipant"
+ }
+ }
+ }
+ },
+ "RemoveParticipantSucceeded": {
+ "description": "The participant removed event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participant"
+ }
+ }
+ },
+ "RemoveParticipantFailed": {
+ "description": "The failed to remove participant event.",
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId for skype chain ID.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "participant": {
+ "$ref": "#/definitions/CommunicationIdentifierModel",
+ "description": "Participant"
+ }
+ }
+ },
+ "RecordingStateChanged": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "recordingId": {
+ "description": "The call recording id",
+ "type": "string",
+ "readOnly": true
+ },
+ "state": {
+ "$ref": "#/definitions/RecordingState"
+ },
+ "startDateTime": {
+ "format": "date-time",
+ "description": "The time of the recording started",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PlayCompleted": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "PlayFailed": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "PlayCanceled": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "RecognitionType": {
+ "description": "Determines the sub-type of the recognize operation.\r\nIn case of cancel operation the this field is not set and is returned empty",
+ "enum": [
+ "dtmf",
+ "speech",
+ "choices"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RecognitionType",
+ "modelAsString": true
+ }
+ },
+ "RecognizeCompleted": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "recognitionType": {
+ "$ref": "#/definitions/RecognitionType"
+ },
+ "dtmfResult": {
+ "$ref": "#/definitions/DtmfResult",
+ "description": "Defines the result for RecognitionType = Dtmf"
+ },
+ "choiceResult": {
+ "$ref": "#/definitions/ChoiceResult",
+ "description": "Defines the result for RecognitionType = Choices"
+ },
+ "speechResult": {
+ "$ref": "#/definitions/SpeechResult",
+ "description": "Defines the result for RecognitionType = Speech and SpeechOrDtmf",
+ "readOnly": true
+ }
+ }
+ },
+ "DtmfResult": {
+ "type": "object",
+ "properties": {
+ "tones": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tone"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ChoiceResult": {
+ "type": "object",
+ "properties": {
+ "label": {
+ "description": "Label is the primary identifier for the choice detected",
+ "type": "string"
+ },
+ "recognizedPhrase": {
+ "description": "Phrases are set to the value if choice is selected via phrase detection.\r\nIf Dtmf input is recognized, then Label will be the identifier for the choice detected and phrases will be set to null",
+ "type": "string"
+ }
+ }
+ },
+ "SpeechResult": {
+ "description": "The speech status as a result.",
+ "type": "object",
+ "properties": {
+ "speech": {
+ "description": "The recognized speech in string.",
+ "type": "string"
+ }
+ }
+ },
+ "RecognizeFailed": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "RecognizeCanceled": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionToneFailed": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionToneReceived": {
+ "type": "object",
+ "properties": {
+ "toneInfo": {
+ "$ref": "#/definitions/ToneInfo",
+ "description": "Information about Tone."
+ },
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation. Also called ChainId or skype chain ID.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ }
+ }
+ },
+ "ToneInfo": {
+ "description": "The information about the tone.",
+ "required": [
+ "sequenceId",
+ "tone"
+ ],
+ "type": "object",
+ "properties": {
+ "sequenceId": {
+ "format": "int32",
+ "description": "The sequence id which can be used to determine if the same tone was played multiple times or if any tones were missed.",
+ "type": "integer"
+ },
+ "tone": {
+ "$ref": "#/definitions/Tone"
+ }
+ }
+ },
+ "ContinuousDtmfRecognitionStopped": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "SendDtmfTonesCompleted": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ },
+ "SendDtmfTonesFailed": {
+ "type": "object",
+ "properties": {
+ "callConnectionId": {
+ "description": "Call connection ID.",
+ "type": "string"
+ },
+ "serverCallId": {
+ "description": "Server call ID.",
+ "type": "string"
+ },
+ "correlationId": {
+ "description": "Correlation ID for event to call correlation.",
+ "type": "string"
+ },
+ "operationContext": {
+ "description": "Used by customers when calling mid-call actions to correlate the request to the response event.",
+ "type": "string"
+ },
+ "resultInformation": {
+ "$ref": "#/definitions/ResultInformation",
+ "description": "Contains the resulting SIP code, sub-code and message."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Version of API to invoke.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "Endpoint": {
+ "name": "endpoint",
+ "in": "path",
+ "description": "The endpoint of the Azure Communication resource.",
+ "required": true,
+ "type": "string",
+ "format": "url",
+ "x-ms-skip-url-encoding": true,
+ "x-ms-parameter-location": "client"
+ }
+ },
+ "securityDefinitions": {
+ "Authorization": {
+ "type": "apiKey",
+ "description": "An Azure Communication Services user access token.",
+ "name": "Authorization",
+ "in": "header"
+ }
+ },
+ "security": [
+ {
+ "Authorization": []
+ }
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "{endpoint}",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "$ref": "#/parameters/Endpoint"
+ }
+ ]
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/AnswerCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/AnswerCall.json
new file mode 100644
index 000000000000..2a50b4a4f879
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/AnswerCall.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "answerCallRequest": {
+ "incomingCallContext": "H4sIAAAAAAAEAMVVS2/bOBD+LzrspaElPiSSBoJFNnvYoNi0aHaBtpcFRQ5t1rIokLRTJ8h/X1J2soHRQ4A9lAdZ4ry+mflm/FhpNQy3PjnrtErOj9XysbLBb8uvM9WyEkul49J2ioEiGhlKADHVKiR7oVDXUGo5tkpa8k8zH9yglhuKuLQNkqLpEMZUNSZLNFfVRWVcnAZ1uFVbyP53EQLOtzCaybsx3ZSgnZFKKk4QgLGIybZFfU8oolIZzFrWGk6yzaDG1U6tYLaBMd9MKiSn3aROjjSRoAUHhG1PEDMdIGFlg4yRUmhChWQsm62dMdl+adUQ4aIKEP0u6KPft6RePV1Uyf/PmmmT5VijnlmMpD7VDLg4r9m4G4azgjWng37weD5nBTt6OS8YlcRyBhpJwD1iggFSbccQJVRJANW1gp4XLCc/uHETS/4qJaXX2dE6pSku61pNbgETMrBfxM1hgsUIqVzWe1Lrqda6iBBpmsXx9ZWW1vUe19aHDZja9pqBMRyBpQyxriVIgNBIGa11D9wy2tWE1Q7np6iPOH51lyXtLRinrsZ4D6FwQmdY28LEKfhV7nX8+XCfkZwAB/gGOv18WEccJ1A7M/0V1BgnHwq0/JmBYSoWEi84XTC+pIyLuszCXPBrPyYY0zPTsv57OBSOxJxoXjXzV3WzJs1D/+X22gy/36m762/vhk8PV5eXOWAm5gZKqDZ5/PCdc2L/vvmjbynGh3fhPus8lVIZFzLI7PBj8BNkOsPMRBc/nURXw+DvIbM7hR3MJnmWdNE6Itt7p2Gr3HAHKblxVcyfsp724x5CnPfizbh36WVDvpaUNIMfhplbb+1Xtp87hhfPr687lq/qB4HD9ec1vN98+OzhQ9Rfp26zKq34BS47ygVtBZdNS3AjMCnb0MU/d0NyH/NEH15WmYu/BZ+7q2L6b1oN9LvVS3se5z+B4w6lWIOSHOl5+rmiSJoOI9b0jZZATMPUD7bsm5ZGjrsKfjfNcb+faPH0LyoNW7KCBgAA",
+ "callbackUri": "https://app.contoso.com/callback"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "serverCallId": "aHR0cHM6Ly9jb252ZXJzYXRpb251cmwvdGVzdA",
+ "sourceCallerIdNumber": {
+ "value": "+18440123456"
+ },
+ "source": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "targets": [
+ {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_0f50d091-5bd3-448b-884d-44be7037d9b9"
+ }
+ }
+ ],
+ "callConnectionState": "connected",
+ "callbackUri": "https://app.contoso.com/callback"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_AddParticipant.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_AddParticipant.json
new file mode 100644
index 000000000000..73ef38e51844
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_AddParticipant.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "addParticipantRequest": {
+ "participantToAdd": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_ae9e3307-f56e-44be-8934-80a63f080538"
+ }
+ },
+ "operationContext": "adding participant",
+ "sourceCallerIdNumber": {
+ "value": "+18440123456"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "operationContext": "adding participant",
+ "participant": {
+ "identifier": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_ae9e3307-f56e-44be-8934-80a63f080538"
+ }
+ },
+ "isMuted": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetCall.json
new file mode 100644
index 000000000000..03d61bde9a14
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetCall.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "serverCallId": "aHR0cHM6Ly9jb252ZXJzYXRpb251cmwvdGVzdA",
+ "sourceCallerIdNumber": {
+ "value": "+18440123456"
+ },
+ "source": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "targets": [
+ {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_0f50d091-5bd3-448b-884d-44be7037d9b9"
+ }
+ },
+ {
+ "kind": "phoneNumber",
+ "phoneNumber": {
+ "value": "+14250123456"
+ }
+ }
+ ],
+ "callConnectionState": "connected",
+ "callbackUri": "https://app.contoso.com/callback"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetParticipant.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetParticipant.json
new file mode 100644
index 000000000000..7288c942f0fd
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetParticipant.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "participantRawId": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "identifier": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "isMuted": false
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetParticipants.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetParticipants.json
new file mode 100644
index 000000000000..4858deaa60a2
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_GetParticipants.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "identifier": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "isMuted": true
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_HangupCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_HangupCall.json
new file mode 100644
index 000000000000..14f71d597c26
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_HangupCall.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_Mute.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_Mute.json
new file mode 100644
index 000000000000..f0a73a74b77d
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_Mute.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "muteParticipantsRequest": {
+ "targetParticipants": [
+ {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ }
+ ],
+ "operationContext": "mute participant"
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "operationContext": "mute participant"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_RemoveParticipant.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_RemoveParticipant.json
new file mode 100644
index 000000000000..8b907886c37d
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_RemoveParticipant.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "removeParticipantRequest": {
+ "participantToRemove": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_ae9e3307-f56e-44be-8934-80a63f080538"
+ }
+ },
+ "operationContext": "removing participant"
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "operationContext": "removing participant"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_TerminateCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_TerminateCall.json
new file mode 100644
index 000000000000..14f71d597c26
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_TerminateCall.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_TransferToParticipant.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_TransferToParticipant.json
new file mode 100644
index 000000000000..56035c424ec4
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallConnection_TransferToParticipant.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "transferToParticipantRequest": {
+ "targetParticipant": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "operationContext": "trasferring call"
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "operationContext": "trasferring call"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_CancelAllMediaOperations.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_CancelAllMediaOperations.json
new file mode 100644
index 000000000000..136e22d8c756
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_CancelAllMediaOperations.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c"
+ },
+ "responses": {
+ "202": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_Play.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_Play.json
new file mode 100644
index 000000000000..64e8fa0ea558
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_Play.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "playRequest": {
+ "playSources": [
+ {
+ "kind": "file",
+ "playSourceCacheId": "string",
+ "file": {
+ "uri": "https://some.file.azure.com/sample.wav"
+ }
+ }
+ ],
+ "playTo": [
+ {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_ae9e3307-f56e-44be-8934-80a63f080538"
+ }
+ }
+ ],
+ "playOptions": {
+ "loop": true
+ }
+ }
+ },
+ "responses": {
+ "202": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_Recognize.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_Recognize.json
new file mode 100644
index 000000000000..e4dd4c568538
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_Recognize.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "recognizeRequest": {
+ "recognizeInputType": "dtmf",
+ "playPrompt": {
+ "kind": "file",
+ "file": {
+ "uri": "https://some.file.azure.com/sample.wav"
+ }
+ },
+ "recognizeOptions": {
+ "interruptPrompt": true,
+ "initialSilenceTimeoutInSeconds": 5,
+ "targetParticipant": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "dtmfOptions": {
+ "interToneTimeoutInSeconds": 3,
+ "maxTonesToCollect": 5,
+ "stopTones": [
+ "pound"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_SendDtmfTones.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_SendDtmfTones.json
new file mode 100644
index 000000000000..20b1bf6550fb
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_SendDtmfTones.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "sendDtmfTonesRequest": {
+ "tones": [
+ "zero"
+ ],
+ "targetParticipant": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "operationContext": "sendDtmf operation context"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_StartContinuousDtmfRecognition.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_StartContinuousDtmfRecognition.json
new file mode 100644
index 000000000000..d4dde94c0c3d
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_StartContinuousDtmfRecognition.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "continuousDtmfRecognitionRequest": {
+ "targetParticipant": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_StopContinuousDtmfRecognition.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_StopContinuousDtmfRecognition.json
new file mode 100644
index 000000000000..d4dde94c0c3d
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallMedia_StopContinuousDtmfRecognition.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "continuousDtmfRecognitionRequest": {
+ "targetParticipant": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_GetRecordingProperties.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_GetRecordingProperties.json
new file mode 100644
index 000000000000..0dad336f8f66
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_GetRecordingProperties.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUifQ=="
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUifQ==",
+ "recordingState": "inactive"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_PauseRecording.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_PauseRecording.json
new file mode 100644
index 000000000000..946b6148fabb
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_PauseRecording.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUifQ=="
+ },
+ "responses": {
+ "202": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_ResumeRecording.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_ResumeRecording.json
new file mode 100644
index 000000000000..946b6148fabb
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_ResumeRecording.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUifQ=="
+ },
+ "responses": {
+ "202": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_StartRecording.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_StartRecording.json
new file mode 100644
index 000000000000..6fd441660ea7
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_StartRecording.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "startCallRecording": {
+ "recordingStateCallbackUri": "https://contoso.communications.azure.com/callback",
+ "recordingContentType": null,
+ "recordingChannelType": null,
+ "recordingFormatType": null,
+ "callLocator": {
+ "serverCallId": "aHR0cHM6Ly9za3lwZS5uZXQvYXBpL3YyL2NwL3NreXBlLm5ldC9jb252LzFQd3ZKMTcxZFI/aT0wJmU9NzU3NzA4NzU3OQ==",
+ "kind": "serverCallLocator"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUifQ==",
+ "recordingState": "inactive"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_StopRecording.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_StopRecording.json
new file mode 100644
index 000000000000..f73add098b7f
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CallRecording_StopRecording.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI4YjlkYmFkMS0xOGFiLTRmODYtYWQ0Yy1jNzVmODA5ODA3NmUifQ=="
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CreateCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CreateCall.json
new file mode 100644
index 000000000000..8fdc572165b2
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/CreateCall.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "createCallRequest": {
+ "targets": [
+ {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_0f50d091-5bd3-448b-884d-44be7037d9b9"
+ }
+ }
+ ],
+ "callbackUri": "https://app.contoso.com/callback"
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "callConnectionId": "18dea47f-b081-4107-9a5c-4300819d2c6c",
+ "serverCallId": "aHR0cHM6Ly9jb252ZXJzYXRpb251cmwvdGVzdA",
+ "source": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_da7be3a9-8788-42a6-85c6-56b2cf784fce"
+ }
+ },
+ "targets": [
+ {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_0f50d091-5bd3-448b-884d-44be7037d9b9"
+ }
+ }
+ ],
+ "callConnectionState": "connected",
+ "callbackUri": "https://app.contoso.com/callback"
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/RedirectCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/RedirectCall.json
new file mode 100644
index 000000000000..d728cb71b97d
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/RedirectCall.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "redirectCallRequest": {
+ "target": {
+ "kind": "communicationUser",
+ "communicationUser": {
+ "id": "8:acs:b9614373-fd0b-480c-8fd2-cb58b70eab9f_0f50d091-5bd3-448b-884d-44be7037d9b9"
+ }
+ },
+ "incomingCallContext": "H4sIAAAAAAAEAMVVS2/bOBD+LzrspaElPiSSBoJFNnvYoNi0aHaBtpcFRQ5t1rIokLRTJ8h/X1J2soHRQ4A9lAdZ4ry+mflm/FhpNQy3PjnrtErOj9XysbLBb8uvM9WyEkul49J2ioEiGhlKADHVKiR7oVDXUGo5tkpa8k8zH9yglhuKuLQNkqLpEMZUNSZLNFfVRWVcnAZ1uFVbyP53EQLOtzCaybsx3ZSgnZFKKk4QgLGIybZFfU8oolIZzFrWGk6yzaDG1U6tYLaBMd9MKiSn3aROjjSRoAUHhG1PEDMdIGFlg4yRUmhChWQsm62dMdl+adUQ4aIKEP0u6KPft6RePV1Uyf/PmmmT5VijnlmMpD7VDLg4r9m4G4azgjWng37weD5nBTt6OS8YlcRyBhpJwD1iggFSbccQJVRJANW1gp4XLCc/uHETS/4qJaXX2dE6pSku61pNbgETMrBfxM1hgsUIqVzWe1Lrqda6iBBpmsXx9ZWW1vUe19aHDZja9pqBMRyBpQyxriVIgNBIGa11D9wy2tWE1Q7np6iPOH51lyXtLRinrsZ4D6FwQmdY28LEKfhV7nX8+XCfkZwAB/gGOv18WEccJ1A7M/0V1BgnHwq0/JmBYSoWEi84XTC+pIyLuszCXPBrPyYY0zPTsv57OBSOxJxoXjXzV3WzJs1D/+X22gy/36m762/vhk8PV5eXOWAm5gZKqDZ5/PCdc2L/vvmjbynGh3fhPus8lVIZFzLI7PBj8BNkOsPMRBc/nURXw+DvIbM7hR3MJnmWdNE6Itt7p2Gr3HAHKblxVcyfsp724x5CnPfizbh36WVDvpaUNIMfhplbb+1Xtp87hhfPr687lq/qB4HD9ec1vN98+OzhQ9Rfp26zKq34BS47ygVtBZdNS3AjMCnb0MU/d0NyH/NEH15WmYu/BZ+7q2L6b1oN9LvVS3se5z+B4w6lWIOSHOl5+rmiSJoOI9b0jZZATMPUD7bsm5ZGjrsKfjfNcb+faPH0LyoNW7KCBgAA"
+ }
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/RejectCall.json b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/RejectCall.json
new file mode 100644
index 000000000000..7d52423e6068
--- /dev/null
+++ b/specification/communication/data-plane/CallAutomation/preview/2023-06-15-preview/examples/RejectCall.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.communications.azure.com",
+ "api-version": "2023-06-15-preview",
+ "rejectCallRequest": {
+ "incomingCallContext": "H4sIAAAAAAAEAMVVS2/bOBD+LzrspaElPiSSBoJFNnvYoNi0aHaBtpcFRQ5t1rIokLRTJ8h/X1J2soHRQ4A9lAdZ4ry+mflm/FhpNQy3PjnrtErOj9XysbLBb8uvM9WyEkul49J2ioEiGhlKADHVKiR7oVDXUGo5tkpa8k8zH9yglhuKuLQNkqLpEMZUNSZLNFfVRWVcnAZ1uFVbyP53EQLOtzCaybsx3ZSgnZFKKk4QgLGIybZFfU8oolIZzFrWGk6yzaDG1U6tYLaBMd9MKiSn3aROjjSRoAUHhG1PEDMdIGFlg4yRUmhChWQsm62dMdl+adUQ4aIKEP0u6KPft6RePV1Uyf/PmmmT5VijnlmMpD7VDLg4r9m4G4azgjWng37weD5nBTt6OS8YlcRyBhpJwD1iggFSbccQJVRJANW1gp4XLCc/uHETS/4qJaXX2dE6pSku61pNbgETMrBfxM1hgsUIqVzWe1Lrqda6iBBpmsXx9ZWW1vUe19aHDZja9pqBMRyBpQyxriVIgNBIGa11D9wy2tWE1Q7np6iPOH51lyXtLRinrsZ4D6FwQmdY28LEKfhV7nX8+XCfkZwAB/gGOv18WEccJ1A7M/0V1BgnHwq0/JmBYSoWEi84XTC+pIyLuszCXPBrPyYY0zPTsv57OBSOxJxoXjXzV3WzJs1D/+X22gy/36m762/vhk8PV5eXOWAm5gZKqDZ5/PCdc2L/vvmjbynGh3fhPus8lVIZFzLI7PBj8BNkOsPMRBc/nURXw+DvIbM7hR3MJnmWdNE6Itt7p2Gr3HAHKblxVcyfsp724x5CnPfizbh36WVDvpaUNIMfhplbb+1Xtp87hhfPr687lq/qB4HD9ec1vN98+OzhQ9Rfp26zKq34BS47ygVtBZdNS3AjMCnb0MU/d0NyH/NEH15WmYu/BZ+7q2L6b1oN9LvVS3se5z+B4w6lWIOSHOl5+rmiSJoOI9b0jZZATMPUD7bsm5ZGjrsKfjfNcb+faPH0LyoNW7KCBgAA"
+ }
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/communication/data-plane/CallAutomation/readme.md b/specification/communication/data-plane/CallAutomation/readme.md
index 5667c6841691..b8b9d759db6b 100644
--- a/specification/communication/data-plane/CallAutomation/readme.md
+++ b/specification/communication/data-plane/CallAutomation/readme.md
@@ -50,6 +50,17 @@ title:
Azure Communication Services
```
+### Tag: package-2023-06-15-preview
+
+These settings apply only when `--tag=package-2023-06-15-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-06-15-preview'
+input-file:
+ - preview/2023-06-15-preview/communicationservicescallautomation.json
+title:
+ Azure Communication Services
+```
+
---
# Code Generation
diff --git a/specification/communication/data-plane/Chat/preview/2023-07-01-preview/communicationserviceschat.json b/specification/communication/data-plane/Chat/preview/2023-07-01-preview/communicationserviceschat.json
index d4b627822d50..f8c4fd275c2c 100644
--- a/specification/communication/data-plane/Chat/preview/2023-07-01-preview/communicationserviceschat.json
+++ b/specification/communication/data-plane/Chat/preview/2023-07-01-preview/communicationserviceschat.json
@@ -1355,6 +1355,13 @@
"description": "Time from which the chat history is shared with the participant. The timestamp is in RFC3339 format: `yyyy-MM-ddTHH:mm:ssZ`.",
"type": "string",
"example": "2020-10-30T10:50:50Z"
+ },
+ "metadata": {
+ "description": "Contextual metadata for the chat participant. The metadata consists of name/value pairs. The total size of all metadata pairs can be up to 1KB in size.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
}
}
},
@@ -1619,8 +1626,12 @@
"$ref": "#/definitions/ChatParticipant"
}
},
- "retentionPolicy": {
- "$ref": "#/definitions/ChatRetentionPolicy"
+ "metadata": {
+ "description": "Contextual metadata for the thread. The metadata consists of name/value pairs. The total size of all metadata pairs can be up to 1KB in size.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
}
}
},
@@ -1659,8 +1670,12 @@
"type": "string",
"example": "2020-10-30T10:50:50Z"
},
- "retentionPolicy": {
- "$ref": "#/definitions/ChatRetentionPolicy"
+ "metadata": {
+ "description": "Contextual metadata for the thread. The metadata consists of name/value pairs. The total size of all metadata pairs can be up to 1KB in size.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
}
}
},
@@ -1711,9 +1726,6 @@
"type": "string",
"readOnly": true,
"example": "2020-10-30T10:50:50Z"
- },
- "retentionPolicy": {
- "$ref": "#/definitions/ChatRetentionPolicy"
}
}
},
@@ -1746,6 +1758,13 @@
"description": "Chat thread topic.",
"type": "string",
"example": "Lunch Thread"
+ },
+ "metadata": {
+ "description": "Contextual metadata for the thread. The metadata consists of name/value pairs. The total size of all metadata pairs can be up to 1KB in size.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
}
}
},
@@ -1759,53 +1778,6 @@
"example": "Bob Admin"
}
}
- },
- "ChatRetentionPolicy": {
- "description": "Data retention policy for auto deletion. It's not updatable after creation.",
- "type": "object",
- "discriminator": "kind",
- "properties": {
- "kind": {
- "description": "Retention Policy Type",
- "enum": [
- "threadCreationDate"
- ],
- "type": "string",
- "x-ms-enum": {
- "name": "RetentionPolicyKind",
- "modelAsString": true,
- "values": [
- {
- "value": "threadCreationDate",
- "description": "Thread retention policy based on thread creation date."
- }
- ]
- }
- }
- },
- "required": [
- "kind"
- ]
- },
- "ThreadCreationDateRetentionPolicy": {
- "description": "Thread retention policy based on thread creation date.",
- "type": "object",
- "x-ms-discriminator-value": "threadCreationDate",
- "allOf": [
- {
- "$ref": "#/definitions/ChatRetentionPolicy"
- }
- ],
- "properties": {
- "deleteThreadAfterDays": {
- "type": "integer",
- "format": "int32",
- "description": "Indicates how many days after the thread creation the thread will be deleted. Only 90 is accepted for now."
- }
- },
- "required": [
- "deleteThreadAfterDays"
- ]
}
},
"parameters": {
diff --git a/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_CreateChatThread.json
index fcb2c48ecdf5..03098d631638 100644
--- a/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_CreateChatThread.json
+++ b/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_CreateChatThread.json
@@ -41,11 +41,7 @@
},
"displayName": "Peter"
}
- ],
- "retentionPolicy": {
- "kind": "threadCreationDate",
- "deleteThreadAfterDays": 90
- }
+ ]
}
},
"responses": {
@@ -63,10 +59,6 @@
"communicationUser": {
"id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_c94ff260-162d-46d6-94fd-e79f4d213715"
}
- },
- "retentionPolicy": {
- "kind": "threadCreationDate",
- "deleteThreadAfterDays": 90
}
},
"invalidParticipants": [
diff --git a/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_GetChatThread.json
index f05a95473143..c8e186c0f68c 100644
--- a/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_GetChatThread.json
+++ b/specification/communication/data-plane/Chat/preview/2023-07-01-preview/examples/Threads_GetChatThread.json
@@ -10,10 +10,6 @@
"id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2",
"topic": "Lunch",
"createdOn": "2020-06-06T05:55:41.6460000Z",
- "retentionPolicy": {
- "kind": "threadCreationDate",
- "deleteThreadAfterDays": 90
- },
"createdByCommunicationIdentifier": {
"rawId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b",
"communicationUser": {
diff --git a/specification/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json b/specification/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json
index c68af040e699..8fc589b192cb 100644
--- a/specification/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json
+++ b/specification/communication/data-plane/Email/stable/2023-03-31/CommunicationServicesEmail.json
@@ -305,7 +305,8 @@
"contentInBase64": {
"description": "Base64 encoded contents of the attachment",
"type": "string",
- "example": "TWFueSBoYW5kcyBtYWtlIGxpZ2h0I"
+ "format": "byte",
+ "example": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ="
}
}
},
diff --git a/specification/communication/data-plane/Email/stable/2023-03-31/examples/SendEmail.json b/specification/communication/data-plane/Email/stable/2023-03-31/examples/SendEmail.json
index dbd279376213..4698fe5905f9 100644
--- a/specification/communication/data-plane/Email/stable/2023-03-31/examples/SendEmail.json
+++ b/specification/communication/data-plane/Email/stable/2023-03-31/examples/SendEmail.json
@@ -52,12 +52,12 @@
{
"name": "MyAttachment.pdf",
"contentType": "application/pdf",
- "contentInBase64": "TWFueSBoYW5kcyBtYWtlIGxpZ2h0IHdvcmsu"
+ "contentInBase64": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ="
},
{
"name": "MyAttachment2.docx",
"contentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
- "contentInBase64": "pZ2h0IHdvcmsu5kcyBtYWtlIGxpZ2h0IHdvcmsu"
+ "contentInBase64": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ="
}
],
"replyTo": [
diff --git a/specification/communication/data-plane/Identity/stable/2023-08-01/CommunicationIdentity.json b/specification/communication/data-plane/Identity/stable/2023-08-01/CommunicationIdentity.json
index c8d73b0dac41..03b0aa1c017d 100644
--- a/specification/communication/data-plane/Identity/stable/2023-08-01/CommunicationIdentity.json
+++ b/specification/communication/data-plane/Identity/stable/2023-08-01/CommunicationIdentity.json
@@ -133,20 +133,6 @@
},
{
"$ref": "#/parameters/ApiVersionParameter"
- },
- {
- "in": "header",
- "name": "Repeatability-Request-ID",
- "description": "If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated, globally unique for all time, identifier for the request. It is recommended to use version 4 (random) UUIDs. Internal identifiers shouldn't be used. The value should be an opaque meaningless string in UUID format.",
- "type": "string",
- "format": "uuid"
- },
- {
- "in": "header",
- "name": "Repeatability-First-Sent",
- "description": "If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date",
- "type": "string",
- "format": "date-time-rfc1123"
}
],
"responses": {
@@ -157,17 +143,11 @@
}
},
"204": {
- "description": "No Content",
- "headers": {
- "Repeatability-Result": {
- "description": "Result of idempotent request. Present only in case of idempotent processing.",
- "type": "string"
- }
- }
+ "description": "No Content"
}
},
"x-ms-examples": {
- "Revoke access tokens with optional idempotent processing using Repeatability-Request-ID and Repeatability-First-Sent headers. If the headers are not provided, the request will be processed in a non-idempotent way which can lead to more tokens being revoked than intended on a retry.": {
+ "Revoke access tokens": {
"$ref": "./examples/RevokeAccessTokens.json"
}
}
diff --git a/specification/communication/data-plane/Identity/stable/2023-08-01/examples/RevokeAccessTokens.json b/specification/communication/data-plane/Identity/stable/2023-08-01/examples/RevokeAccessTokens.json
index 1a6910eb229f..8f005c3926a1 100644
--- a/specification/communication/data-plane/Identity/stable/2023-08-01/examples/RevokeAccessTokens.json
+++ b/specification/communication/data-plane/Identity/stable/2023-08-01/examples/RevokeAccessTokens.json
@@ -3,17 +3,9 @@
"api-version": "2023-08-01",
"content-type": "application/json",
"id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081",
- "endpoint": "https://my-resource.communication.azure.com",
- "headers": {
- "Repeatability-Request-ID": "4e7d453c-ae97-4778-ad51-cb3b4a701100",
- "Repeatability-First-Sent": "Sun, 10 Sep 2023 20:39:30 GMT"
- }
+ "endpoint": "https://my-resource.communication.azure.com"
},
"responses": {
- "204": {
- "headers": {
- "Repeatability-Result": "accepted"
- }
- }
+ "204": {}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/communicationservicejobrouter.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/communicationservicejobrouter.json
index 52dc6d82e376..2be2857afdbf 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/communicationservicejobrouter.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/communicationservicejobrouter.json
@@ -23,7 +23,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the classification policy",
+ "description": "Id of the classification policy.",
"required": true,
"type": "string"
},
@@ -33,7 +33,7 @@
{
"in": "body",
"name": "patch",
- "description": "Model of classification policy properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386",
+ "description": "Model of classification policy properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386.",
"required": true,
"schema": {
"$ref": "#/definitions/ClassificationPolicy"
@@ -41,17 +41,23 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/ClassificationPolicy"
}
},
- "200": {
- "description": "Success",
+ "201": {
+ "description": "Created",
"schema": {
"$ref": "#/definitions/ClassificationPolicy"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -67,7 +73,7 @@
"tags": [
"ClassificationPolicies"
],
- "summary": "Retrieves an existing classification policy by Id",
+ "summary": "Retrieves an existing classification policy by Id.",
"operationId": "JobRouterAdministration_GetClassificationPolicy",
"produces": [
"application/json"
@@ -76,7 +82,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the classification policy",
+ "description": "Id of the classification policy.",
"required": true,
"type": "string"
},
@@ -85,17 +91,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ClassificationPolicy"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -108,7 +114,7 @@
"tags": [
"ClassificationPolicies"
],
- "summary": "Delete a classification policy by Id",
+ "summary": "Delete a classification policy by Id.",
"operationId": "JobRouterAdministration_DeleteClassificationPolicy",
"produces": [
"application/json"
@@ -117,7 +123,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the classification policy",
+ "description": "Id of the classification policy.",
"required": true,
"type": "string"
},
@@ -126,14 +132,14 @@
}
],
"responses": {
+ "204": {
+ "description": "Success"
+ },
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
- },
- "204": {
- "description": "Success"
}
},
"x-ms-examples": {
@@ -148,7 +154,7 @@
"tags": [
"ClassificationPolicies"
],
- "summary": "Retrieves existing classification policies",
+ "summary": "Retrieves existing classification policies.",
"operationId": "JobRouterAdministration_ListClassificationPolicies",
"produces": [
"application/json"
@@ -157,27 +163,26 @@
{
"in": "query",
"name": "maxpagesize",
- "description": "Maximum page size",
+ "description": "Maximum page size.",
"type": "integer",
- "format": "int32",
- "default": 20
+ "format": "int32"
},
{
"$ref": "#/parameters/ApiVersionParameter"
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ClassificationPolicyCollection"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -208,7 +213,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the distribution policy",
+ "description": "Id of the distribution policy.",
"required": true,
"type": "string"
},
@@ -218,7 +223,7 @@
{
"in": "body",
"name": "patch",
- "description": "Model of distribution policy properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386",
+ "description": "Model of distribution policy properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386.",
"required": true,
"schema": {
"$ref": "#/definitions/DistributionPolicy"
@@ -226,17 +231,23 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/DistributionPolicy"
}
},
- "200": {
- "description": "Success",
+ "201": {
+ "description": "Created",
"schema": {
"$ref": "#/definitions/DistributionPolicy"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -252,7 +263,7 @@
"tags": [
"DistributionPolicies"
],
- "summary": "Retrieves an existing distribution policy by Id",
+ "summary": "Retrieves an existing distribution policy by Id.",
"operationId": "JobRouterAdministration_GetDistributionPolicy",
"produces": [
"application/json"
@@ -261,7 +272,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the distribution policy",
+ "description": "Id of the distribution policy.",
"required": true,
"type": "string"
},
@@ -270,17 +281,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/DistributionPolicy"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -293,7 +304,7 @@
"tags": [
"DistributionPolicies"
],
- "summary": "Delete a distribution policy by Id",
+ "summary": "Delete a distribution policy by Id.",
"operationId": "JobRouterAdministration_DeleteDistributionPolicy",
"produces": [
"application/json"
@@ -302,7 +313,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the distribution policy",
+ "description": "Id of the distribution policy.",
"required": true,
"type": "string"
},
@@ -311,14 +322,14 @@
}
],
"responses": {
+ "204": {
+ "description": "Success"
+ },
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
- },
- "204": {
- "description": "Success"
}
},
"x-ms-examples": {
@@ -333,7 +344,7 @@
"tags": [
"DistributionPolicies"
],
- "summary": "Retrieves existing distribution policies",
+ "summary": "Retrieves existing distribution policies.",
"operationId": "JobRouterAdministration_ListDistributionPolicies",
"produces": [
"application/json"
@@ -342,27 +353,26 @@
{
"in": "query",
"name": "maxpagesize",
- "description": "Maximum page size",
+ "description": "Maximum page size.",
"type": "integer",
- "format": "int32",
- "default": 20
+ "format": "int32"
},
{
"$ref": "#/parameters/ApiVersionParameter"
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/DistributionPolicyCollection"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -393,7 +403,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the exception policy",
+ "description": "Id of the exception policy.",
"required": true,
"type": "string"
},
@@ -411,17 +421,23 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/ExceptionPolicy"
}
},
- "200": {
- "description": "Success",
+ "201": {
+ "description": "Created",
"schema": {
"$ref": "#/definitions/ExceptionPolicy"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -437,7 +453,7 @@
"tags": [
"ExceptionPolicies"
],
- "summary": "Retrieves an existing exception policy by Id",
+ "summary": "Retrieves an existing exception policy by Id.",
"operationId": "JobRouterAdministration_GetExceptionPolicy",
"produces": [
"application/json"
@@ -446,7 +462,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the exception policy to retrieve",
+ "description": "Id of the exception policy to retrieve.",
"required": true,
"type": "string"
},
@@ -455,17 +471,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ExceptionPolicy"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -478,7 +494,7 @@
"tags": [
"ExceptionPolicies"
],
- "summary": "Deletes a exception policy by Id",
+ "summary": "Deletes a exception policy by Id.",
"operationId": "JobRouterAdministration_DeleteExceptionPolicy",
"produces": [
"application/json"
@@ -487,7 +503,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the exception policy to delete",
+ "description": "Id of the exception policy to delete.",
"required": true,
"type": "string"
},
@@ -496,14 +512,14 @@
}
],
"responses": {
+ "204": {
+ "description": "Success"
+ },
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
- },
- "204": {
- "description": "Success"
}
},
"x-ms-examples": {
@@ -518,7 +534,7 @@
"tags": [
"ExceptionPolicies"
],
- "summary": "Retrieves existing exception policies",
+ "summary": "Retrieves existing exception policies.",
"operationId": "JobRouterAdministration_ListExceptionPolicies",
"produces": [
"application/json"
@@ -527,27 +543,26 @@
{
"in": "query",
"name": "maxpagesize",
- "description": "Number of objects to return per page",
+ "description": "Number of objects to return per page.",
"type": "integer",
- "format": "int32",
- "default": 20
+ "format": "int32"
},
{
"$ref": "#/parameters/ApiVersionParameter"
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ExceptionPolicyCollection"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -596,17 +611,23 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterJob"
}
},
- "200": {
- "description": "Success",
+ "201": {
+ "description": "Created",
"schema": {
"$ref": "#/definitions/RouterJob"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -615,6 +636,9 @@
},
"Update a job": {
"$ref": "./examples/Jobs_UpdateJob.json"
+ },
+ "Creates a scheduled job": {
+ "$ref": "./examples/Jobs_CreateScheduledJob.json"
}
}
},
@@ -622,7 +646,7 @@
"tags": [
"Jobs"
],
- "summary": "Retrieves an existing job by Id",
+ "summary": "Retrieves an existing job by Id.",
"operationId": "JobRouter_GetJob",
"produces": [
"application/json"
@@ -631,7 +655,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job to retrieve",
+ "description": "Id of the job to retrieve.",
"required": true,
"type": "string"
},
@@ -640,17 +664,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/RouterJob"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -681,14 +705,14 @@
}
],
"responses": {
+ "204": {
+ "description": "Success"
+ },
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
- },
- "204": {
- "description": "Success"
}
},
"x-ms-examples": {
@@ -706,9 +730,7 @@
"summary": "Reclassify a job.",
"operationId": "JobRouter_ReclassifyJobAction",
"consumes": [
- "application/json",
- "text/json",
- "application/*+json"
+ "application/json"
],
"produces": [
"application/json"
@@ -717,7 +739,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job",
+ "description": "Id of the job.",
"required": true,
"type": "string"
},
@@ -734,17 +756,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ReclassifyJobResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -771,7 +793,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job",
+ "description": "Id of the job.",
"required": true,
"type": "string"
},
@@ -781,7 +803,7 @@
{
"in": "body",
"name": "cancelJobRequest",
- "description": "Request model for cancelling job",
+ "description": "Request model for cancelling job.",
"schema": {
"$ref": "#/definitions/CancelJobRequest"
},
@@ -789,17 +811,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/CancelJobResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -826,7 +848,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job",
+ "description": "Id of the job.",
"required": true,
"type": "string"
},
@@ -836,7 +858,7 @@
{
"in": "body",
"name": "completeJobRequest",
- "description": "Request model for completing job",
+ "description": "Request model for completing job.",
"required": true,
"schema": {
"$ref": "#/definitions/CompleteJobRequest"
@@ -845,17 +867,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/CompleteJobResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -882,7 +904,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job",
+ "description": "Id of the job.",
"required": true,
"type": "string"
},
@@ -892,7 +914,7 @@
{
"in": "body",
"name": "closeJobRequest",
- "description": "Request model for closing job",
+ "description": "Request model for closing job.",
"required": true,
"schema": {
"$ref": "#/definitions/CloseJobRequest"
@@ -901,12 +923,6 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
@@ -918,6 +934,12 @@
"schema": {
"$ref": "#/definitions/CloseJobResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -932,7 +954,7 @@
"tags": [
"Jobs"
],
- "summary": "Retrieves list of jobs based on filter parameters",
+ "summary": "Retrieves list of jobs based on filter parameters.",
"operationId": "JobRouter_ListJobs",
"produces": [
"application/json"
@@ -941,7 +963,7 @@
{
"in": "query",
"name": "status",
- "description": "(Optional) If specified, filter jobs by status.",
+ "description": "If specified, filter jobs by status.",
"type": "string",
"default": "all",
"enum": [
@@ -953,54 +975,72 @@
"closed",
"cancelled",
"classificationFailed",
+ "created",
+ "pendingSchedule",
+ "scheduled",
+ "scheduleFailed",
+ "waitingForActivation",
"active"
],
"x-ms-enum": {
- "name": "JobStateSelector",
- "modelAsString": false
+ "name": "RouterJobStatusSelector",
+ "modelAsString": true
}
},
{
"in": "query",
"name": "queueId",
- "description": "(Optional) If specified, filter jobs by queue.",
+ "description": "If specified, filter jobs by queue.",
"type": "string"
},
{
"in": "query",
"name": "channelId",
- "description": "(Optional) If specified, filter jobs by channel.",
+ "description": "If specified, filter jobs by channel.",
"type": "string"
},
{
"in": "query",
"name": "classificationPolicyId",
- "description": "(Optional) If specified, filter jobs by classificationPolicy.",
+ "description": "If specified, filter jobs by classificationPolicy.",
"type": "string"
},
+ {
+ "in": "query",
+ "name": "scheduledBefore",
+ "description": "If specified, filter on jobs that was scheduled before or at given timestamp. Range: (-Inf, scheduledBefore].",
+ "type": "string",
+ "format": "date-time"
+ },
+ {
+ "in": "query",
+ "name": "scheduledAfter",
+ "description": "If specified, filter on jobs that was scheduled at or after given value. Range: [scheduledAfter, +Inf).",
+ "type": "string",
+ "format": "date-time"
+ },
{
"in": "query",
"name": "maxpagesize",
- "description": "Number of objects to return per page",
+ "description": "Number of objects to return per page.",
"type": "integer",
- "format": "int32",
- "default": 20
+ "format": "int32"
},
{
"$ref": "#/parameters/ApiVersionParameter"
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterJobCollection"
}
},
- "200": {
- "description": "Success",
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/JobCollection"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1029,7 +1069,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job",
+ "description": "Id of the job.",
"required": true,
"type": "string"
},
@@ -1038,16 +1078,16 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterJobPositionDetails"
}
},
- "200": {
- "description": "Success",
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/JobPositionDetails"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1065,6 +1105,9 @@
],
"summary": "Un-assign a job.",
"operationId": "JobRouter_UnassignJobAction",
+ "consumes": [
+ "application/json"
+ ],
"produces": [
"application/json"
],
@@ -1072,33 +1115,41 @@
{
"in": "path",
"name": "id",
- "description": "Id of the job to un-assign",
+ "description": "Id of the job to un-assign.",
"required": true,
"type": "string"
},
{
"in": "path",
"name": "assignmentId",
- "description": "Id of the assignment to un-assign",
+ "description": "Id of the assignment to un-assign.",
"required": true,
"type": "string"
},
{
"$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "unassignJobRequest",
+ "description": "Request body for unassign route.",
+ "schema": {
+ "$ref": "#/definitions/UnassignJobRequest"
+ }
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/UnassignJobResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -1122,14 +1173,14 @@
{
"in": "path",
"name": "workerId",
- "description": "Id of the worker",
+ "description": "Id of the worker.",
"required": true,
"type": "string"
},
{
"in": "path",
"name": "offerId",
- "description": "Id of the offer",
+ "description": "Id of the offer.",
"required": true,
"type": "string"
},
@@ -1138,17 +1189,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/AcceptJobOfferResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -1165,6 +1216,9 @@
],
"summary": "Declines an offer to work on a job.",
"operationId": "JobRouter_DeclineJobAction",
+ "consumes": [
+ "application/json"
+ ],
"produces": [
"application/json"
],
@@ -1172,33 +1226,41 @@
{
"in": "path",
"name": "workerId",
- "description": "Id of the worker",
+ "description": "Id of the worker.",
"required": true,
"type": "string"
},
{
"in": "path",
"name": "offerId",
- "description": "Id of the offer",
+ "description": "Id of the offer.",
"required": true,
"type": "string"
},
{
"$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "declineJobOfferRequest",
+ "description": "Request model for declining offer.",
+ "schema": {
+ "$ref": "#/definitions/DeclineJobOfferRequest"
+ }
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/DeclineJobOfferResult"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -1225,7 +1287,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the queue",
+ "description": "Id of the queue.",
"required": true,
"type": "string"
},
@@ -1235,24 +1297,30 @@
{
"in": "body",
"name": "patch",
- "description": "Model of queue properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386",
+ "description": "Model of queue properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386.",
"required": true,
"schema": {
- "$ref": "#/definitions/JobQueue"
+ "$ref": "#/definitions/RouterQueue"
}
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterQueue"
}
},
- "200": {
- "description": "Success",
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/RouterQueue"
+ }
+ },
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/JobQueue"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1269,7 +1337,7 @@
"tags": [
"Queues"
],
- "summary": "Retrieves an existing queue by Id",
+ "summary": "Retrieves an existing queue by Id.",
"operationId": "JobRouterAdministration_GetQueue",
"produces": [
"application/json"
@@ -1278,7 +1346,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the queue to retrieve",
+ "description": "Id of the queue to retrieve.",
"required": true,
"type": "string"
},
@@ -1287,16 +1355,16 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterQueue"
}
},
- "200": {
- "description": "Success",
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/JobQueue"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1310,7 +1378,7 @@
"tags": [
"Queues"
],
- "summary": "Deletes a queue by Id",
+ "summary": "Deletes a queue by Id.",
"operationId": "JobRouterAdministration_DeleteQueue",
"produces": [
"application/json"
@@ -1319,7 +1387,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the queue to delete",
+ "description": "Id of the queue to delete.",
"required": true,
"type": "string"
},
@@ -1328,14 +1396,14 @@
}
],
"responses": {
+ "204": {
+ "description": "Success"
+ },
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
- },
- "204": {
- "description": "Success"
}
},
"x-ms-examples": {
@@ -1350,7 +1418,7 @@
"tags": [
"Queues"
],
- "summary": "Retrieves existing queues",
+ "summary": "Retrieves existing queues.",
"operationId": "JobRouterAdministration_ListQueues",
"produces": [
"application/json"
@@ -1359,26 +1427,25 @@
{
"in": "query",
"name": "maxpagesize",
- "description": "Number of objects to return per page",
+ "description": "Number of objects to return per page.",
"type": "integer",
- "format": "int32",
- "default": 20
+ "format": "int32"
},
{
"$ref": "#/parameters/ApiVersionParameter"
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterQueueCollection"
}
},
- "200": {
- "description": "Success",
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/QueueCollection"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1398,7 +1465,7 @@
"tags": [
"Queues"
],
- "summary": "Retrieves a queue's statistics",
+ "summary": "Retrieves a queue's statistics.",
"operationId": "JobRouter_GetQueueStatistics",
"produces": [
"application/json"
@@ -1407,7 +1474,7 @@
{
"in": "path",
"name": "id",
- "description": "Id of the queue to retrieve statistics",
+ "description": "Id of the queue to retrieve statistics.",
"required": true,
"type": "string"
},
@@ -1416,16 +1483,16 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterQueueStatistics"
}
},
- "200": {
- "description": "Success",
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/QueueStatistics"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1453,7 +1520,7 @@
{
"in": "path",
"name": "workerId",
- "description": "Id of the worker",
+ "description": "Id of the worker.",
"required": true,
"type": "string"
},
@@ -1463,7 +1530,7 @@
{
"in": "body",
"name": "patch",
- "description": "Model of worker properties to be patched. See also: https://datatracker.ietf.org/doc/html/rfc7386",
+ "description": "Model of worker properties to be created or patched. See also: https://datatracker.ietf.org/doc/html/rfc7386.",
"required": true,
"schema": {
"$ref": "#/definitions/RouterWorker"
@@ -1471,17 +1538,23 @@
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterWorker"
}
},
- "200": {
- "description": "Success",
+ "201": {
+ "description": "Created",
"schema": {
"$ref": "#/definitions/RouterWorker"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -1506,7 +1579,7 @@
"tags": [
"Workers"
],
- "summary": "Retrieves an existing worker by Id",
+ "summary": "Retrieves an existing worker by Id.",
"operationId": "JobRouter_GetWorker",
"produces": [
"application/json"
@@ -1515,7 +1588,7 @@
{
"in": "path",
"name": "workerId",
- "description": "Id of the worker to retrieve",
+ "description": "Id of the worker to retrieve.",
"required": true,
"type": "string"
},
@@ -1524,17 +1597,17 @@
}
],
"responses": {
- "default": {
- "description": "Error",
- "schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
- }
- },
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/RouterWorker"
}
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CommunicationErrorResponse"
+ }
}
},
"x-ms-examples": {
@@ -1556,7 +1629,7 @@
{
"in": "path",
"name": "workerId",
- "description": "Id of the worker to delete",
+ "description": "Id of the worker to delete.",
"required": true,
"type": "string"
},
@@ -1565,14 +1638,14 @@
}
],
"responses": {
+ "204": {
+ "description": "Success"
+ },
"default": {
"description": "Error",
"schema": {
"$ref": "#/definitions/CommunicationErrorResponse"
}
- },
- "204": {
- "description": "Success"
}
},
"x-ms-examples": {
@@ -1595,8 +1668,8 @@
"parameters": [
{
"in": "query",
- "name": "status",
- "description": "(Optional) If specified, select workers by worker status.",
+ "name": "state",
+ "description": "If specified, select workers by worker state.",
"type": "string",
"default": "all",
"enum": [
@@ -1606,51 +1679,50 @@
"all"
],
"x-ms-enum": {
- "name": "WorkerStateSelector",
- "modelAsString": false
+ "name": "RouterWorkerStateSelector",
+ "modelAsString": true
}
},
{
"in": "query",
"name": "channelId",
- "description": "(Optional) If specified, select workers who have a channel configuration with this channel",
+ "description": "If specified, select workers who have a channel configuration with this channel.",
"type": "string"
},
{
"in": "query",
"name": "queueId",
- "description": "(Optional) If specified, select workers who are assigned to this queue",
+ "description": "If specified, select workers who are assigned to this queue.",
"type": "string"
},
{
"in": "query",
"name": "hasCapacity",
- "description": "(Optional) If set to true, select only workers who have capacity for the channel specified by `channelId` or for any channel\r\n if `channelId` not specified. If set to false, then will return all workers including workers without any capacity for jobs. Defaults to false.",
+ "description": "If set to true, select only workers who have capacity for the channel specified by `channelId` or for any channel if `channelId` not specified. If set to false, then will return all workers including workers without any capacity for jobs. Defaults to false.",
"type": "boolean"
},
{
"in": "query",
"name": "maxpagesize",
- "description": "Number of objects to return per page",
+ "description": "Number of objects to return per page.",
"type": "integer",
- "format": "int32",
- "default": 20
+ "format": "int32"
},
{
"$ref": "#/parameters/ApiVersionParameter"
}
],
"responses": {
- "default": {
- "description": "Error",
+ "200": {
+ "description": "Success",
"schema": {
- "$ref": "#/definitions/CommunicationErrorResponse"
+ "$ref": "#/definitions/RouterWorkerCollection"
}
},
- "200": {
- "description": "Success",
+ "default": {
+ "description": "Error",
"schema": {
- "$ref": "#/definitions/WorkerCollection"
+ "$ref": "#/definitions/CommunicationErrorResponse"
}
}
},
@@ -1681,14 +1753,17 @@
"properties": {
"assignmentId": {
"description": "The assignment Id that assigns a worker that has accepted an offer to a job.",
+ "minLength": 1,
"type": "string"
},
"jobId": {
"description": "The Id of the job assigned.",
+ "minLength": 1,
"type": "string"
},
"workerId": {
"description": "The Id of the worker that has been assigned this job.",
+ "minLength": 1,
"type": "string"
}
}
@@ -1703,6 +1778,7 @@
],
"properties": {
"kind": {
+ "description": "The type discriminator describing BestWorkerMode",
"type": "string"
},
"scoringRule": {
@@ -1724,11 +1800,11 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing CancelExceptionAction",
+ "type": "string"
},
"note": {
- "description": "(Optional) A note that will be appended to the jobs' Notes collection with th current timestamp.",
+ "description": "(Optional) A note that will be appended to the jobs' Notes collection with the current timestamp.",
"maxLength": 2000,
"minLength": 0,
"type": "string"
@@ -1747,7 +1823,7 @@
"type": "object",
"properties": {
"note": {
- "description": "(Optional) A note that will be appended to the jobs' Notes collection with th current timestamp.",
+ "description": "(Optional) A note that will be appended to the jobs' Notes collection with the current timestamp.",
"maxLength": 2000,
"minLength": 0,
"type": "string"
@@ -1776,6 +1852,11 @@
"format": "int32",
"description": "The amount of capacity that an instance of a job of this channel will consume of the total worker capacity.",
"type": "integer"
+ },
+ "maxNumberOfJobs": {
+ "format": "int32",
+ "description": "The maximum number of jobs that can be supported concurrently for this channel.",
+ "type": "integer"
}
}
},
@@ -1800,7 +1881,7 @@
"description": "The queue selectors to resolve a queue for a given job.",
"type": "array",
"items": {
- "description": "An attachment of label selectors to resolve a queue to a job from a classification policy"
+ "description": "An attachment of queue selectors to resolve a queue to a job from a classification policy"
}
},
"prioritizationRule": {
@@ -1810,7 +1891,7 @@
"description": "The worker label selectors to attach to a given job.",
"type": "array",
"items": {
- "description": "An attachment which attaches WorkerSelectors to workers"
+ "description": "An attachment which attaches worker selectors to a job"
}
}
}
@@ -1866,13 +1947,13 @@
"minLength": 0,
"type": "string"
},
- "closeTime": {
+ "closeAt": {
"format": "date-time",
- "description": "If not provided, worker capacity is released immediately along with a JobClosedEvent notification.\r\nIf provided, worker capacity is released along with a JobClosedEvent notification at a future time.",
+ "description": "If not provided, worker capacity is released immediately along with a JobClosedEvent notification.\r\nIf provided, worker capacity is released along with a JobClosedEvent notification at a future time in UTC.",
"type": "string"
},
"note": {
- "description": "(Optional) A note that will be appended to the jobs' Notes collection with th current timestamp.",
+ "description": "(Optional) A note that will be appended to the jobs' Notes collection with the current timestamp.",
"maxLength": 2000,
"minLength": 0,
"type": "string"
@@ -1885,54 +1966,10 @@
"properties": {}
},
"CommunicationError": {
- "description": "The Communication Services error.",
- "type": "object",
- "required": [
- "code",
- "message"
- ],
- "properties": {
- "code": {
- "type": "string",
- "description": "The error code."
- },
- "message": {
- "type": "string",
- "description": "The error message."
- },
- "target": {
- "type": "string",
- "readOnly": true,
- "description": "The error target."
- },
- "details": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/CommunicationError"
- },
- "readOnly": true,
- "description": "Further details about specific errors that led to this error."
- },
- "innererror": {
- "x-ms-client-name": "innerError",
- "readOnly": true,
- "$ref": "#/definitions/CommunicationError",
- "description": "The inner error if any."
- }
- }
+ "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationError"
},
"CommunicationErrorResponse": {
- "description": "The Communication Services error.",
- "type": "object",
- "required": [
- "error"
- ],
- "properties": {
- "error": {
- "description": "The Communication Services error.",
- "$ref": "#/definitions/CommunicationError"
- }
- }
+ "$ref": "../../../Common/stable/2021-03-07/common.json#/definitions/CommunicationErrorResponse"
},
"CompleteJobRequest": {
"description": "Request payload for completing jobs",
@@ -1948,7 +1985,7 @@
"type": "string"
},
"note": {
- "description": "(Optional) A note that will be appended to the jobs' Notes collection with th current timestamp.",
+ "description": "(Optional) A note that will be appended to the jobs' Notes collection with the current timestamp.",
"maxLength": 2000,
"minLength": 0,
"type": "string"
@@ -1961,10 +1998,10 @@
"properties": {}
},
"ConditionalQueueSelectorAttachment": {
- "description": "Describes a set of label selectors that will be attached if the given condition resolves to true",
+ "description": "Describes a set of queue selectors that will be attached if the given condition resolves to true",
"required": [
"condition",
- "labelSelectors"
+ "queueSelectors"
],
"type": "object",
"allOf": [
@@ -1974,27 +2011,27 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing ConditionalQueueSelectorAttachment",
+ "type": "string"
},
"condition": {
"$ref": "#/definitions/RouterRule"
},
- "labelSelectors": {
- "description": "The label selectors to attach",
+ "queueSelectors": {
+ "description": "The queue selectors to attach",
"type": "array",
"items": {
- "$ref": "#/definitions/QueueSelector"
+ "$ref": "#/definitions/RouterQueueSelector"
}
}
},
"x-ms-discriminator-value": "conditional"
},
"ConditionalWorkerSelectorAttachment": {
- "description": "Describes a set of label selectors that will be attached if the given condition resolves to true",
+ "description": "Describes a set of worker selectors that will be attached if the given condition resolves to true",
"required": [
"condition",
- "labelSelectors"
+ "workerSelectors"
],
"type": "object",
"allOf": [
@@ -2004,28 +2041,39 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing ConditionalWorkerSelectorAttachment",
+ "type": "string"
},
"condition": {
"$ref": "#/definitions/RouterRule"
},
- "labelSelectors": {
- "description": "The label selectors to attach",
+ "workerSelectors": {
+ "description": "The worker selectors to attach",
"type": "array",
"items": {
- "$ref": "#/definitions/WorkerSelector"
+ "$ref": "#/definitions/RouterWorkerSelector"
}
}
},
"x-ms-discriminator-value": "conditional"
},
+ "DeclineJobOfferRequest": {
+ "description": "Request payload for declining offers",
+ "type": "object",
+ "properties": {
+ "retryOfferAt": {
+ "format": "date-time",
+ "description": "If the RetryOfferAt is not provided, then this job will not be offered again to the worker who declined this job unless\r\nthe worker is de-registered and re-registered. If a RetryOfferAt time is provided, then the job will be re-matched to\r\neligible workers at the retry time in UTC. The worker that declined the job will also be eligible for the job at that time.",
+ "type": "string"
+ }
+ }
+ },
"DeclineJobOfferResult": {
"description": "Response payload from declining a job",
"type": "object",
"properties": {}
},
- "DirectMapRule": {
+ "DirectMapRouterRule": {
"description": "A rule that return the same labels as the input labels.",
"type": "object",
"allOf": [
@@ -2035,6 +2083,7 @@
],
"properties": {
"kind": {
+ "description": "The type discriminator describing DirectMapRouterRule",
"type": "string"
}
},
@@ -2043,9 +2092,7 @@
"DistributionMode": {
"description": "Abstract base class for defining a distribution mode",
"required": [
- "kind",
- "maxConcurrentOffers",
- "minConcurrentOffers"
+ "kind"
],
"type": "object",
"properties": {
@@ -2083,9 +2130,9 @@
"description": "The human readable name of the policy.",
"type": "string"
},
- "offerTtlSeconds": {
+ "offerExpiresAfterSeconds": {
"format": "double",
- "description": "The expiry time of any offers created under this policy will be governed by the offer time to live.",
+ "description": "The number of seconds after which any offers created under this policy will be expired.",
"type": "number"
},
"mode": {
@@ -2202,7 +2249,7 @@
"type": "object",
"properties": {
"trigger": {
- "$ref": "#/definitions/JobExceptionTrigger"
+ "$ref": "#/definitions/ExceptionTrigger"
},
"actions": {
"description": "A dictionary collection of actions to perform once the exception is triggered. Key is the Id of each exception action.",
@@ -2213,11 +2260,24 @@
}
}
},
- "ExpressionRule": {
+ "ExceptionTrigger": {
+ "description": "The trigger for this exception rule",
+ "required": [
+ "kind"
+ ],
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "The type discriminator describing a sub-type of ExceptionTrigger",
+ "type": "string"
+ }
+ },
+ "discriminator": "kind"
+ },
+ "ExpressionRouterRule": {
"description": "A rule providing inline expression rules.",
"required": [
- "expression",
- "language"
+ "expression"
],
"type": "object",
"allOf": [
@@ -2227,6 +2287,7 @@
],
"properties": {
"kind": {
+ "description": "The type discriminator describing ExpressionRouterRule",
"type": "string"
},
"language": {
@@ -2236,8 +2297,8 @@
],
"type": "string",
"x-ms-enum": {
- "name": "ExpressionLanguage",
- "modelAsString": false
+ "name": "ExpressionRouterRuleLanguage",
+ "modelAsString": true
}
},
"expression": {
@@ -2249,7 +2310,7 @@
},
"x-ms-discriminator-value": "expression-rule"
},
- "FunctionRule": {
+ "FunctionRouterRule": {
"description": "A rule providing a binding to an HTTP Triggered Azure Function.",
"required": [
"functionUri"
@@ -2262,6 +2323,7 @@
],
"properties": {
"kind": {
+ "description": "The type discriminator describing FunctionRouterRule",
"type": "string"
},
"functionUri": {
@@ -2270,12 +2332,12 @@
"type": "string"
},
"credential": {
- "$ref": "#/definitions/FunctionRuleCredential"
+ "$ref": "#/definitions/FunctionRouterRuleCredential"
}
},
"x-ms-discriminator-value": "azure-function-rule"
},
- "FunctionRuleCredential": {
+ "FunctionRouterRuleCredential": {
"description": "Credentials used to access Azure function rule",
"type": "object",
"properties": {
@@ -2299,210 +2361,62 @@
}
}
},
- "JobAssignment": {
- "description": "Assignment details of a job to a worker",
- "required": [
- "assignTime",
- "id"
- ],
+ "JobMatchingMode": {
+ "description": "The matching mode to be applied to this job.\r\n \r\nSupported types:\r\n \r\nQueueAndMatchMode: Used when matching worker to a job is required to be done right after job is queued.\r\nScheduleAndSuspendMode: Used for scheduling jobs to be queued at a future time. At specified time, matching of a worker to the job will not start automatically.\r\nSuspendMode: Used when matching workers to a job needs to be suspended.",
"type": "object",
"properties": {
- "id": {
- "description": "The Id of the job assignment.",
- "type": "string"
- },
- "workerId": {
- "description": "The Id of the Worker assigned to the job.",
- "type": "string"
+ "modeType": {
+ "description": "Discriminator value used to differentiate between supported matching mode types.",
+ "enum": [
+ "queueAndMatchMode",
+ "scheduleAndSuspendMode",
+ "suspendMode"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "JobMatchModeType",
+ "modelAsString": true
+ }
},
- "assignTime": {
- "format": "date-time",
- "description": "The assignment time of the job.",
- "type": "string"
+ "queueAndMatchMode": {
+ "$ref": "#/definitions/QueueAndMatchMode"
},
- "completeTime": {
- "format": "date-time",
- "description": "The time the job was marked as completed after being assigned.",
- "type": "string"
+ "scheduleAndSuspendMode": {
+ "$ref": "#/definitions/ScheduleAndSuspendMode"
},
- "closeTime": {
- "format": "date-time",
- "description": "The time the job was marked as closed after being completed.",
- "type": "string"
+ "suspendMode": {
+ "$ref": "#/definitions/SuspendMode"
}
}
},
- "JobCollection": {
- "description": "A paged collection of jobs.",
- "required": [
- "value"
- ],
+ "LongestIdleMode": {
+ "description": "Jobs are directed to the worker who has been idle longest.",
"type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/RouterJobItem"
- }
- },
- "nextLink": {
- "type": "string",
- "readOnly": true
+ "allOf": [
+ {
+ "$ref": "#/definitions/DistributionMode"
}
- }
- },
- "JobExceptionTrigger": {
- "description": "The trigger for this exception rule",
- "required": [
- "kind"
],
- "type": "object",
"properties": {
"kind": {
- "description": "The type discriminator describing a sub-type of ExceptionTrigger",
+ "description": "The type discriminator describing LongestIdleMode",
"type": "string"
}
},
- "discriminator": "kind"
+ "x-ms-discriminator-value": "longest-idle"
},
- "JobOffer": {
- "description": "An offer of a job to a worker",
- "required": [
- "capacityCost",
- "id",
- "jobId"
- ],
+ "ManualReclassifyExceptionAction": {
+ "description": "An action that manually reclassifies a job by providing the queue, priority and worker selectors.",
"type": "object",
- "properties": {
- "id": {
- "description": "The Id of the offer.",
- "type": "string"
- },
- "jobId": {
- "description": "The Id of the job.",
- "type": "string"
- },
- "capacityCost": {
- "format": "int32",
- "description": "The capacity cost consumed by the job offer.",
- "type": "integer"
- },
- "offerTimeUtc": {
- "format": "date-time",
- "description": "The time the offer was created.",
- "type": "string"
- },
- "expiryTimeUtc": {
- "format": "date-time",
- "description": "The time that the offer will expire.",
- "type": "string"
- }
- }
- },
- "JobPositionDetails": {
- "description": "Dto for JobPositionDetails.",
- "required": [
- "estimatedWaitTimeMinutes",
- "jobId",
- "position",
- "queueId",
- "queueLength"
- ],
- "type": "object",
- "properties": {
- "jobId": {
- "description": "Id of the job these details are about.",
- "type": "string"
- },
- "position": {
- "format": "int32",
- "description": "Position of the job in question within that queue.",
- "type": "integer"
- },
- "queueId": {
- "description": "Id of the queue this job is enqueued in.",
- "type": "string"
- },
- "queueLength": {
- "format": "int32",
- "description": "Length of the queue: total number of enqueued jobs.",
- "type": "integer"
- },
- "estimatedWaitTimeMinutes": {
- "format": "double",
- "description": "Estimated wait time of the job rounded up to the nearest minute",
- "type": "number"
- }
- }
- },
- "JobQueue": {
- "description": "A queue that can contain jobs to be routed.",
- "type": "object",
- "properties": {
- "id": {
- "description": "The Id of this queue",
- "type": "string",
- "readOnly": true
- },
- "name": {
- "description": "The name of this queue.",
- "type": "string"
- },
- "distributionPolicyId": {
- "description": "The ID of the distribution policy that will determine how a job is distributed to workers.",
- "type": "string"
- },
- "labels": {
- "description": "A set of key/value pairs that are identifying attributes used by the rules engines to make decisions.",
- "type": "object",
- "additionalProperties": {}
- },
- "exceptionPolicyId": {
- "description": "(Optional) The ID of the exception policy that determines various job escalation rules.",
- "type": "string"
- }
- }
- },
- "JobQueueItem": {
- "description": "Paged instance of JobQueue",
- "type": "object",
- "properties": {
- "jobQueue": {
- "$ref": "#/definitions/JobQueue"
- },
- "etag": {
- "description": "(Optional) The Concurrency Token.",
- "type": "string"
- }
- }
- },
- "LongestIdleMode": {
- "description": "Jobs are directed to the worker who has been idle longest.",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/DistributionMode"
- }
- ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ExceptionAction"
+ }
+ ],
"properties": {
"kind": {
+ "description": "The type discriminator describing ManualReclassifyExceptionAction",
"type": "string"
- }
- },
- "x-ms-discriminator-value": "longest-idle"
- },
- "ManualReclassifyExceptionAction": {
- "description": "An action that manually reclassifies a job by providing the queue, priority and worker selectors.",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/ExceptionAction"
- }
- ],
- "properties": {
- "kind": {
- "type": "string",
- "readOnly": true
},
"queueId": {
"description": "Updated QueueId.",
@@ -2519,14 +2433,32 @@
"description": "Updated WorkerSelectors.",
"type": "array",
"items": {
- "$ref": "#/definitions/WorkerSelector"
+ "$ref": "#/definitions/RouterWorkerSelector"
}
}
},
"x-ms-discriminator-value": "manual-reclassify"
},
+ "Oauth2ClientCredential": {
+ "description": "OAuth2.0 Credentials used to Contoso's Authorization server.\r\nReference: https://www.oauth.com/oauth2-servers/access-tokens/client-credentials/",
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "description": "ClientId for Contoso Authorization server.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "clientSecret": {
+ "description": "Client secret for Contoso Authorization server.",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ }
+ }
+ },
"PassThroughQueueSelectorAttachment": {
- "description": "Attaches a label selector where the value is pass through from the job label with the same key",
+ "description": "Attaches a queue selector where the value is passed through from the job label with the same key",
"required": [
"key",
"labelOperator"
@@ -2539,8 +2471,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing PassThroughQueueSelectorAttachment",
+ "type": "string"
},
"key": {
"description": "The label key to query against",
@@ -2561,14 +2493,14 @@
"type": "string",
"x-ms-enum": {
"name": "LabelOperator",
- "modelAsString": false
+ "modelAsString": true
}
}
},
"x-ms-discriminator-value": "pass-through"
},
"PassThroughWorkerSelectorAttachment": {
- "description": "Attaches a label selector where the value is pass through from the job label with the same key",
+ "description": "Attaches a worker selector where the value is passed through from the job label with the same key",
"required": [
"key",
"labelOperator"
@@ -2581,8 +2513,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing PassThroughWorkerSelectorAttachment",
+ "type": "string"
},
"key": {
"description": "The label key to query against",
@@ -2603,10 +2535,10 @@
"type": "string",
"x-ms-enum": {
"name": "LabelOperator",
- "modelAsString": false
+ "modelAsString": true
}
},
- "ttlSeconds": {
+ "expiresAfterSeconds": {
"format": "double",
"description": "Describes how long the attached label selector is valid in seconds.",
"type": "number"
@@ -2614,29 +2546,9 @@
},
"x-ms-discriminator-value": "pass-through"
},
- "QueueAssignment": {
- "description": "An assignment of a worker to a queue",
- "type": "object",
- "properties": {}
- },
- "QueueCollection": {
- "description": "A paged collection of queues.",
- "required": [
- "value"
- ],
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/JobQueueItem"
- }
- },
- "nextLink": {
- "type": "string",
- "readOnly": true
- }
- }
+ "QueueAndMatchMode": {
+ "description": "Describes a matching mode where matching worker to a job is automatically started after job is queued successfully.",
+ "type": "object"
},
"QueueLengthExceptionTrigger": {
"description": "Trigger for an exception action on exceeding queue length",
@@ -2646,11 +2558,12 @@
"type": "object",
"allOf": [
{
- "$ref": "#/definitions/JobExceptionTrigger"
+ "$ref": "#/definitions/ExceptionTrigger"
}
],
"properties": {
"kind": {
+ "description": "The type discriminator describing a sub-type of QueueLengthExceptionTrigger",
"type": "string"
},
"threshold": {
@@ -2661,92 +2574,24 @@
},
"x-ms-discriminator-value": "queue-length"
},
- "QueueSelector": {
- "description": "Describes a condition that must be met against a set of labels for queue selection",
- "required": [
- "key",
- "labelOperator"
- ],
- "type": "object",
- "properties": {
- "key": {
- "description": "The label key to query against",
- "maxLength": 500,
- "minLength": 0,
- "type": "string"
- },
- "labelOperator": {
- "description": "Describes how the value of the label is compared to the value defined on the label selector",
- "enum": [
- "equal",
- "notEqual",
- "lessThan",
- "lessThanEqual",
- "greaterThan",
- "greaterThanEqual"
- ],
- "type": "string",
- "x-ms-enum": {
- "name": "LabelOperator",
- "modelAsString": false
- }
- },
- "value": {
- "description": "The value to compare against the actual label value with the given operator",
- "type": "object"
- }
- }
- },
"QueueSelectorAttachment": {
- "description": "An attachment of label selectors to resolve a queue to a job from a classification policy",
+ "description": "An attachment of queue selectors to resolve a queue to a job from a classification policy",
"required": [
"kind"
],
"type": "object",
"properties": {
"kind": {
- "description": "The type discriminator describing the type of label selector attachment",
+ "description": "The type discriminator describing the type of queue selector attachment",
"type": "string"
}
},
"discriminator": "kind"
},
- "QueueStatistics": {
- "description": "Statistics for the queue",
- "required": [
- "length",
- "queueId"
- ],
- "type": "object",
- "properties": {
- "queueId": {
- "description": "Id of the queue these details are about.",
- "type": "string"
- },
- "length": {
- "format": "int32",
- "description": "Length of the queue: total number of enqueued jobs.",
- "type": "integer"
- },
- "estimatedWaitTimeMinutes": {
- "description": "The estimated wait time of this queue rounded up to the nearest minute, grouped by job priority",
- "type": "object",
- "additionalProperties": {
- "format": "double",
- "type": "number"
- }
- },
- "longestJobWaitTimeMinutes": {
- "format": "double",
- "description": "The wait time of the job that has been enqueued in this queue for the longest.",
- "type": "number"
- }
- }
- },
"QueueWeightedAllocation": {
- "description": "Contains the weight percentage and label selectors to be applied if selected for weighted distributions.",
+ "description": "Contains the weight percentage and queue selectors to be applied if selected for weighted distributions.",
"required": [
- "labelSelectors",
+ "queueSelectors",
"weight"
],
"type": "object",
@@ -2756,11 +2601,11 @@
"description": "The percentage of this weight, expressed as a fraction of 1.",
"type": "number"
},
- "labelSelectors": {
- "description": "A collection of label selectors that will be applied if this allocation is selected.",
+ "queueSelectors": {
+ "description": "A collection of queue selectors that will be applied if this allocation is selected.",
"type": "array",
"items": {
- "$ref": "#/definitions/QueueSelector"
+ "$ref": "#/definitions/RouterQueueSelector"
}
}
}
@@ -2775,8 +2620,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing ReclassifyExceptionAction.",
+ "type": "string"
},
"classificationPolicyId": {
"description": "(optional) The new classification policy that will determine queue, priority and worker selectors.",
@@ -2794,8 +2639,7 @@
},
"ReclassifyJobRequest": {
"description": "Request payload for reclassifying jobs",
- "type": "object",
- "properties": {}
+ "type": "object"
},
"ReclassifyJobResult": {
"description": "Response payload from reclassifying a job",
@@ -2812,6 +2656,7 @@
],
"properties": {
"kind": {
+ "description": "The type discriminator describing RoundRobinMode",
"type": "string"
}
},
@@ -2830,8 +2675,8 @@
"description": "Reference to an external parent context, eg. call ID.",
"type": "string"
},
- "jobStatus": {
- "description": "The state of the Job.",
+ "status": {
+ "description": "The status of the Job.",
"enum": [
"pendingClassification",
"queued",
@@ -2840,18 +2685,22 @@
"closed",
"cancelled",
"classificationFailed",
- "created"
+ "created",
+ "pendingSchedule",
+ "scheduled",
+ "scheduleFailed",
+ "waitingForActivation"
],
"type": "string",
"readOnly": true,
"x-ms-enum": {
"name": "RouterJobStatus",
- "modelAsString": false
+ "modelAsString": true
}
},
- "enqueueTimeUtc": {
+ "enqueuedAt": {
"format": "date-time",
- "description": "The time a job was queued.",
+ "description": "The time a job was queued in UTC.",
"type": "string",
"readOnly": true
},
@@ -2880,14 +2729,14 @@
"description": "A collection of manually specified label selectors, which a worker must satisfy in order to process this job.",
"type": "array",
"items": {
- "$ref": "#/definitions/WorkerSelector"
+ "$ref": "#/definitions/RouterWorkerSelector"
}
},
"attachedWorkerSelectors": {
"description": "A collection of label selectors attached by a classification policy, which a worker must satisfy in order to process this job.",
"type": "array",
"items": {
- "$ref": "#/definitions/WorkerSelector"
+ "$ref": "#/definitions/RouterWorkerSelector"
},
"readOnly": true
},
@@ -2900,7 +2749,7 @@
"description": "A collection of the assignments of the job.\r\nKey is AssignmentId.",
"type": "object",
"additionalProperties": {
- "$ref": "#/definitions/JobAssignment"
+ "$ref": "#/definitions/RouterJobAssignment"
},
"readOnly": true
},
@@ -2915,24 +2764,293 @@
"additionalProperties": {
"type": "string"
}
+ },
+ "scheduledAt": {
+ "format": "date-time",
+ "description": "If set, job will be scheduled to be enqueued at a given time",
+ "type": "string",
+ "readOnly": true
+ },
+ "matchingMode": {
+ "$ref": "#/definitions/JobMatchingMode"
}
}
},
- "RouterJobItem": {
- "description": "Paged instance of RouterJob",
+ "RouterJobAssignment": {
+ "description": "Assignment details of a job to a worker",
+ "required": [
+ "assignedAt",
+ "assignmentId"
+ ],
"type": "object",
"properties": {
- "routerJob": {
- "$ref": "#/definitions/RouterJob"
+ "assignmentId": {
+ "description": "The Id of the job assignment.",
+ "minLength": 1,
+ "type": "string"
},
- "etag": {
- "description": "(Optional) The Concurrency Token.",
+ "workerId": {
+ "description": "The Id of the Worker assigned to the job.",
+ "type": "string"
+ },
+ "assignedAt": {
+ "format": "date-time",
+ "description": "The assignment time of the job in UTC.",
+ "type": "string"
+ },
+ "completedAt": {
+ "format": "date-time",
+ "description": "The time the job was marked as completed after being assigned in UTC.",
+ "type": "string"
+ },
+ "closedAt": {
+ "format": "date-time",
+ "description": "The time the job was marked as closed after being completed in UTC.",
"type": "string"
}
}
},
- "RouterRule": {
- "description": "A rule of one of the following types:\r\n \r\nStaticRule: A rule providing static rules that always return the same result, regardless of input.\r\nDirectMapRule: A rule that return the same labels as the input labels.\r\nExpressionRule: A rule providing inline expression rules.\r\nAzureFunctionRule: A rule providing a binding to an HTTP Triggered Azure Function.",
+ "RouterJobCollection": {
+ "description": "A paged collection of jobs.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RouterJobItem"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RouterJobItem": {
+ "description": "Paged instance of RouterJob",
+ "type": "object",
+ "properties": {
+ "job": {
+ "$ref": "#/definitions/RouterJob"
+ },
+ "etag": {
+ "description": "(Optional) The Concurrency Token.",
+ "type": "string"
+ }
+ }
+ },
+ "RouterJobOffer": {
+ "description": "An offer of a job to a worker",
+ "required": [
+ "capacityCost",
+ "jobId",
+ "offerId"
+ ],
+ "type": "object",
+ "properties": {
+ "offerId": {
+ "description": "The Id of the offer.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "jobId": {
+ "description": "The Id of the job.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "capacityCost": {
+ "format": "int32",
+ "description": "The capacity cost consumed by the job offer.",
+ "type": "integer"
+ },
+ "offeredAt": {
+ "format": "date-time",
+ "description": "The time the offer was created in UTC.",
+ "type": "string"
+ },
+ "expiresAt": {
+ "format": "date-time",
+ "description": "The time that the offer will expire in UTC.",
+ "type": "string"
+ }
+ }
+ },
+ "RouterJobPositionDetails": {
+ "description": "Position and estimated wait time for a job.",
+ "required": [
+ "estimatedWaitTimeMinutes",
+ "jobId",
+ "position",
+ "queueId",
+ "queueLength"
+ ],
+ "type": "object",
+ "properties": {
+ "jobId": {
+ "description": "Id of the job these details are about.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "position": {
+ "format": "int32",
+ "description": "Position of the job in question within that queue.",
+ "type": "integer"
+ },
+ "queueId": {
+ "description": "Id of the queue this job is enqueued in.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "queueLength": {
+ "format": "int32",
+ "description": "Length of the queue: total number of enqueued jobs.",
+ "type": "integer"
+ },
+ "estimatedWaitTimeMinutes": {
+ "format": "double",
+ "description": "Estimated wait time of the job rounded up to the nearest minute",
+ "type": "number"
+ }
+ }
+ },
+ "RouterQueue": {
+ "description": "A queue that can contain jobs to be routed.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The Id of this queue",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of this queue.",
+ "type": "string"
+ },
+ "distributionPolicyId": {
+ "description": "The ID of the distribution policy that will determine how a job is distributed to workers.",
+ "type": "string"
+ },
+ "labels": {
+ "description": "A set of key/value pairs that are identifying attributes used by the rules engines to make decisions.",
+ "type": "object",
+ "additionalProperties": {}
+ },
+ "exceptionPolicyId": {
+ "description": "(Optional) The ID of the exception policy that determines various job escalation rules.",
+ "type": "string"
+ }
+ }
+ },
+ "RouterQueueAssignment": {
+ "description": "An assignment of a worker to a queue",
+ "type": "object"
+ },
+ "RouterQueueCollection": {
+ "description": "A paged collection of queues.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RouterQueueItem"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RouterQueueItem": {
+ "description": "Paged instance of RouterQueue",
+ "type": "object",
+ "properties": {
+ "queue": {
+ "$ref": "#/definitions/RouterQueue"
+ },
+ "etag": {
+ "description": "(Optional) The Concurrency Token.",
+ "type": "string"
+ }
+ }
+ },
+ "RouterQueueSelector": {
+ "description": "Describes a condition that must be met against a set of labels for queue selection",
+ "required": [
+ "key",
+ "labelOperator"
+ ],
+ "type": "object",
+ "properties": {
+ "key": {
+ "description": "The label key to query against",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "labelOperator": {
+ "description": "Describes how the value of the label is compared to the value defined on the label selector",
+ "enum": [
+ "equal",
+ "notEqual",
+ "lessThan",
+ "lessThanEqual",
+ "greaterThan",
+ "greaterThanEqual"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "LabelOperator",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "The value to compare against the actual label value with the given operator",
+ "type": "object"
+ }
+ }
+ },
+ "RouterQueueStatistics": {
+ "description": "Statistics for the queue",
+ "required": [
+ "length",
+ "queueId"
+ ],
+ "type": "object",
+ "properties": {
+ "queueId": {
+ "description": "Id of the queue these details are about.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "length": {
+ "format": "int32",
+ "description": "Length of the queue: total number of enqueued jobs.",
+ "type": "integer"
+ },
+ "estimatedWaitTimeMinutes": {
+ "description": "The estimated wait time of this queue rounded up to the nearest minute, grouped by job priority",
+ "type": "object",
+ "additionalProperties": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "longestJobWaitTimeMinutes": {
+ "format": "double",
+ "description": "The wait time of the job that has been enqueued in this queue for the longest.",
+ "type": "number"
+ }
+ }
+ },
+ "RouterRule": {
+ "description": "A rule of one of the following types:\r\n \r\nStaticRule: A rule providing static rules that always return the same result, regardless of input.\r\nDirectMapRule: A rule that return the same labels as the input labels.\r\nExpressionRule: A rule providing inline expression rules.\r\nAzureFunctionRule: A rule providing a binding to an HTTP Triggered Azure Function.\r\nWebhookRule: A rule providing a binding to a webserver following OAuth2.0 authentication protocol.",
"required": [
"kind"
],
@@ -2950,6 +3068,7 @@
"type": "object",
"properties": {
"id": {
+ "description": "Id of the worker.",
"type": "string",
"readOnly": true
},
@@ -2961,13 +3080,17 @@
"inactive"
],
"type": "string",
- "readOnly": true
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RouterWorkerState",
+ "modelAsString": true
+ }
},
"queueAssignments": {
"description": "The queue(s) that this worker can receive work from.",
"type": "object",
"additionalProperties": {
- "$ref": "#/definitions/QueueAssignment"
+ "$ref": "#/definitions/RouterQueueAssignment"
}
},
"totalCapacity": {
@@ -2996,7 +3119,7 @@
"description": "A list of active offers issued to this worker.",
"type": "array",
"items": {
- "$ref": "#/definitions/JobOffer"
+ "$ref": "#/definitions/RouterJobOffer"
},
"readOnly": true
},
@@ -3004,7 +3127,7 @@
"description": "A list of assigned jobs attached to this worker.",
"type": "array",
"items": {
- "$ref": "#/definitions/WorkerAssignment"
+ "$ref": "#/definitions/RouterWorkerAssignment"
},
"readOnly": true
},
@@ -3020,11 +3143,62 @@
}
}
},
+ "RouterWorkerAssignment": {
+ "description": "The assignment for a worker to a job",
+ "required": [
+ "assignedAt",
+ "assignmentId",
+ "capacityCost",
+ "jobId"
+ ],
+ "type": "object",
+ "properties": {
+ "assignmentId": {
+ "description": "The Id of the assignment.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "jobId": {
+ "description": "The Id of the Job assigned.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "capacityCost": {
+ "format": "int32",
+ "description": "The amount of capacity this assignment has consumed on the worker.",
+ "type": "integer"
+ },
+ "assignedAt": {
+ "format": "date-time",
+ "description": "The assignment time of the job in UTC.",
+ "type": "string"
+ }
+ }
+ },
+ "RouterWorkerCollection": {
+ "description": "A paged collection of workers.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RouterWorkerItem"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
"RouterWorkerItem": {
"description": "Paged instance of RouterWorker",
"type": "object",
"properties": {
- "routerWorker": {
+ "worker": {
"$ref": "#/definitions/RouterWorker"
},
"etag": {
@@ -3033,8 +3207,72 @@
}
}
},
+ "RouterWorkerSelector": {
+ "description": "Describes a condition that must be met against a set of labels for worker selection",
+ "required": [
+ "key",
+ "labelOperator"
+ ],
+ "type": "object",
+ "properties": {
+ "key": {
+ "description": "The label key to query against",
+ "maxLength": 500,
+ "minLength": 0,
+ "type": "string"
+ },
+ "labelOperator": {
+ "description": "Describes how the value of the label is compared to the value defined on the label selector",
+ "enum": [
+ "equal",
+ "notEqual",
+ "lessThan",
+ "lessThanEqual",
+ "greaterThan",
+ "greaterThanEqual"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "LabelOperator",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "The value to compare against the actual label value with the given operator",
+ "type": "object"
+ },
+ "expiresAfterSeconds": {
+ "format": "double",
+ "description": "Describes how long this label selector is valid in seconds.",
+ "type": "number"
+ },
+ "expedite": {
+ "description": "Pushes the job to the front of the queue as long as this selector is active.",
+ "type": "boolean"
+ },
+ "status": {
+ "description": "The status of the worker selector.",
+ "enum": [
+ "active",
+ "expired"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "RouterWorkerSelectorStatus",
+ "modelAsString": true
+ }
+ },
+ "expiresAt": {
+ "format": "date-time",
+ "description": "The time at which this worker selector expires in UTC",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
"RuleEngineQueueSelectorAttachment": {
- "description": "Attaches labels to a worker when a RouterRule is resolved",
+ "description": "Attaches queue selectors to a job when the RouterRule is resolved",
"required": [
"rule"
],
@@ -3046,8 +3284,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing RuleEngineQueueSelectorAttachment",
+ "type": "string"
},
"rule": {
"$ref": "#/definitions/RouterRule"
@@ -3056,7 +3294,7 @@
"x-ms-discriminator-value": "rule-engine"
},
"RuleEngineWorkerSelectorAttachment": {
- "description": "Attaches labels to a worker when a RouterRule is resolved",
+ "description": "Attaches worker selectors to a job when a RouterRule is resolved",
"required": [
"rule"
],
@@ -3068,8 +3306,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing RuleEngineWorkerSelectorAttachment",
+ "type": "string"
},
"rule": {
"$ref": "#/definitions/RouterRule"
@@ -3077,13 +3315,24 @@
},
"x-ms-discriminator-value": "rule-engine"
},
+ "ScheduleAndSuspendMode": {
+ "description": "Describes a matching mode used for scheduling jobs to be queued at a future time.\r\nAt the specified time, matching worker to a job will not start automatically.",
+ "type": "object",
+ "properties": {
+ "scheduleAt": {
+ "format": "date-time",
+ "description": "Scheduled time.",
+ "type": "string"
+ }
+ }
+ },
"ScoringRuleOptions": {
"description": "Encapsulates all options that can be passed as parameters for scoring rule with BestWorkerMode",
"type": "object",
"properties": {
"batchSize": {
"format": "int32",
- "description": "(Optional) Set batch size when AllowScoringBatchOfWorkers is set to true",
+ "description": "(Optional) Set batch size when AllowScoringBatchOfWorkers is set to true. Defaults to 20 if not configured.",
"type": "integer"
},
"scoringParameters": {
@@ -3098,7 +3347,7 @@
"type": "string",
"x-ms-enum": {
"name": "ScoringRuleParameterSelector",
- "modelAsString": false
+ "modelAsString": true
}
}
},
@@ -3113,9 +3362,9 @@
}
},
"StaticQueueSelectorAttachment": {
- "description": "Describes a label selector that will always be attached",
+ "description": "Describes a queue selector that will be attached to the job",
"required": [
- "labelSelector"
+ "queueSelector"
],
"type": "object",
"allOf": [
@@ -3125,16 +3374,16 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing StaticQueueSelectorAttachment",
+ "type": "string"
},
- "labelSelector": {
- "$ref": "#/definitions/QueueSelector"
+ "queueSelector": {
+ "$ref": "#/definitions/RouterQueueSelector"
}
},
"x-ms-discriminator-value": "static"
},
- "StaticRule": {
+ "StaticRouterRule": {
"description": "A rule providing static rules that always return the same result, regardless of input.",
"type": "object",
"allOf": [
@@ -3144,6 +3393,7 @@
],
"properties": {
"kind": {
+ "description": "The type discriminator describing StaticRouterRule",
"type": "string"
},
"value": {
@@ -3156,9 +3406,9 @@
"x-ms-discriminator-value": "static-rule"
},
"StaticWorkerSelectorAttachment": {
- "description": "Describes a label selector that will always be attached",
+ "description": "Describes a worker selector that will be attached to the job",
"required": [
- "labelSelector"
+ "workerSelector"
],
"type": "object",
"allOf": [
@@ -3168,15 +3418,29 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing StaticWorkerSelectorAttachment",
+ "type": "string"
},
- "labelSelector": {
- "$ref": "#/definitions/WorkerSelector"
+ "workerSelector": {
+ "$ref": "#/definitions/RouterWorkerSelector"
}
},
"x-ms-discriminator-value": "static"
},
+ "SuspendMode": {
+ "description": "Describes a matching mode where matching worker to a job is suspended.",
+ "type": "object"
+ },
+ "UnassignJobRequest": {
+ "description": "Request payload for unassigning a job.",
+ "type": "object",
+ "properties": {
+ "suspendMatching": {
+ "description": "If SuspendMatching is true, then the job is not queued for re-matching with a worker.",
+ "type": "boolean"
+ }
+ }
+ },
"UnassignJobResult": {
"description": "Response payload after a job has been successfully unassigned.",
"required": [
@@ -3187,6 +3451,7 @@
"properties": {
"jobId": {
"description": "The Id of the job unassigned.",
+ "minLength": 1,
"type": "string"
},
"unassignmentCount": {
@@ -3204,11 +3469,12 @@
"type": "object",
"allOf": [
{
- "$ref": "#/definitions/JobExceptionTrigger"
+ "$ref": "#/definitions/ExceptionTrigger"
}
],
"properties": {
"kind": {
+ "description": "The type discriminator describing a sub-type of WaitTimeExceptionTrigger",
"type": "string"
},
"thresholdSeconds": {
@@ -3219,8 +3485,37 @@
},
"x-ms-discriminator-value": "wait-time"
},
+ "WebhookRouterRule": {
+ "description": "A rule providing a binding to an external web server.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/RouterRule"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "description": "The type discriminator describing WebhookRouterRule",
+ "type": "string"
+ },
+ "authorizationServerUri": {
+ "format": "uri",
+ "description": "Uri for Authorization Server.",
+ "type": "string"
+ },
+ "clientCredential": {
+ "$ref": "#/definitions/Oauth2ClientCredential"
+ },
+ "webhookUri": {
+ "format": "uri",
+ "description": "Uri for Contoso's Web Server.",
+ "type": "string"
+ }
+ },
+ "x-ms-discriminator-value": "webhook-rule"
+ },
"WeightedAllocationQueueSelectorAttachment": {
- "description": "Describes multiple sets of label selectors, of which one will be selected and attached according to a weighting",
+ "description": "Describes multiple sets of queue selectors, of which one will be selected and attached according to a weighting",
"required": [
"allocations"
],
@@ -3232,8 +3527,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing WeightedAllocationQueueSelectorAttachment",
+ "type": "string"
},
"allocations": {
"description": "A collection of percentage based weighted allocations.",
@@ -3246,7 +3541,7 @@
"x-ms-discriminator-value": "weighted-allocation-queue-selector"
},
"WeightedAllocationWorkerSelectorAttachment": {
- "description": "Describes multiple sets of label selectors, of which one will be selected and attached according to a weighting",
+ "description": "Describes multiple sets of worker selectors, of which one will be selected and attached according to a weighting",
"required": [
"allocations"
],
@@ -3258,8 +3553,8 @@
],
"properties": {
"kind": {
- "type": "string",
- "readOnly": true
+ "description": "The type discriminator describing WeightedAllocationWorkerSelectorAttachment",
+ "type": "string"
},
"allocations": {
"description": "A collection of percentage based weighted allocations.",
@@ -3271,138 +3566,25 @@
},
"x-ms-discriminator-value": "weighted-allocation-worker-selector"
},
- "WorkerAssignment": {
- "description": "The assignment for a worker to a job",
- "required": [
- "assignTime",
- "capacityCost",
- "id",
- "jobId"
- ],
- "type": "object",
- "properties": {
- "id": {
- "description": "The Id of the assignment.",
- "type": "string"
- },
- "jobId": {
- "description": "The Id of the Job assigned.",
- "type": "string"
- },
- "capacityCost": {
- "format": "int32",
- "description": "The amount of capacity this assignment has consumed on the worker.",
- "type": "integer"
- },
- "assignTime": {
- "format": "date-time",
- "description": "The assignment time of the job.",
- "type": "string"
- }
- }
- },
- "WorkerCollection": {
- "description": "A paged collection of workers.",
- "required": [
- "value"
- ],
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/RouterWorkerItem"
- }
- },
- "nextLink": {
- "type": "string",
- "readOnly": true
- }
- }
- },
- "WorkerSelector": {
- "description": "Describes a condition that must be met against a set of labels for worker selection",
- "required": [
- "key",
- "labelOperator"
- ],
- "type": "object",
- "properties": {
- "key": {
- "description": "The label key to query against",
- "maxLength": 500,
- "minLength": 0,
- "type": "string"
- },
- "labelOperator": {
- "description": "Describes how the value of the label is compared to the value defined on the label selector",
- "enum": [
- "equal",
- "notEqual",
- "lessThan",
- "lessThanEqual",
- "greaterThan",
- "greaterThanEqual"
- ],
- "type": "string",
- "x-ms-enum": {
- "name": "LabelOperator",
- "modelAsString": false
- }
- },
- "value": {
- "description": "The value to compare against the actual label value with the given operator",
- "type": "object"
- },
- "ttlSeconds": {
- "format": "double",
- "description": "Describes how long this label selector is valid in seconds.",
- "type": "number"
- },
- "expedite": {
- "description": "Pushes the job to the front of the queue as long as this selector is active.",
- "type": "boolean"
- },
- "state": {
- "description": "The state of the worker selector.",
- "enum": [
- "active",
- "expired"
- ],
- "type": "string",
- "readOnly": true,
- "x-ms-enum": {
- "name": "WorkerSelectorState",
- "modelAsString": false
- }
- },
- "expireTime": {
- "format": "date-time",
- "description": "The time at which this worker selector expires in UTC",
- "type": "string",
- "readOnly": true
- }
- }
- },
"WorkerSelectorAttachment": {
- "description": "An attachment which attaches WorkerSelectors to workers",
+ "description": "An attachment which attaches worker selectors to a job",
"required": [
"kind"
],
"type": "object",
"properties": {
"kind": {
- "description": "The type discriminator describing the type of label selector attachment",
+ "description": "The type discriminator describing the type of worker selector attachment",
"type": "string"
}
},
"discriminator": "kind"
},
"WorkerWeightedAllocation": {
- "description": "Contains the weight percentage and label selectors to be applied if selected for weighted distributions.",
+ "description": "Contains the weight percentage and worker selectors to be applied if selected for weighted distributions.",
"required": [
- "labelSelectors",
- "weight"
+ "weight",
+ "workerSelectors"
],
"type": "object",
"properties": {
@@ -3411,11 +3593,11 @@
"description": "The percentage of this weight, expressed as a fraction of 1.",
"type": "number"
},
- "labelSelectors": {
- "description": "A collection of label selectors that will be applied if this allocation is selected.",
+ "workerSelectors": {
+ "description": "A collection of worker selectors that will be applied if this allocation is selected.",
"type": "array",
"items": {
- "$ref": "#/definitions/WorkerSelector"
+ "$ref": "#/definitions/RouterWorkerSelector"
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_CreateClassificationPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_CreateClassificationPolicy.json
index 8ff5b248bcac..43c4382c23d6 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_CreateClassificationPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_CreateClassificationPolicy.json
@@ -14,7 +14,7 @@
"language": "PowerFx",
"expression": "1 = 1"
},
- "labelSelectors": [
+ "queueSelectors": [
{
"key": "foo",
"labelOperator": "equal",
@@ -43,7 +43,36 @@
"language": "PowerFx",
"expression": "1 = 1"
},
- "labelSelectors": [
+ "queueSelectors": [
+ {
+ "key": "foo",
+ "labelOperator": "equal",
+ "value": "bar"
+ }
+ ]
+ }
+ ],
+ "prioritizationRule": {
+ "kind": "static-rule",
+ "value": "2"
+ },
+ "workerSelectors": []
+ }
+ },
+ "201": {
+ "body": {
+ "id": "90eb00c4-234e-4df7-a231-ef7895518384",
+ "name": "Main",
+ "fallbackQueueId": "MainQueue",
+ "queueSelectors": [
+ {
+ "kind": "conditional",
+ "condition": {
+ "kind": "expression-rule",
+ "language": "PowerFx",
+ "expression": "1 = 1"
+ },
+ "queueSelectors": [
{
"key": "foo",
"labelOperator": "equal",
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_GetClassificationPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_GetClassificationPolicy.json
index 856b2693e158..0129b480c958 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_GetClassificationPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_GetClassificationPolicy.json
@@ -18,7 +18,7 @@
"language": "PowerFx",
"expression": "1 = 1"
},
- "labelSelectors": [
+ "queueSelectors": [
{
"key": "foo",
"labelOperator": "equal",
@@ -35,7 +35,7 @@
{
"kind": "pass-through",
"key": "language",
- "operator": "equal"
+ "labelOperator": "equal"
}
]
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_UpdateClassificationPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_UpdateClassificationPolicy.json
index 11248d69cb78..db256e6c1a95 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_UpdateClassificationPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ClassificationPolicies_UpdateClassificationPolicy.json
@@ -21,10 +21,39 @@
"language": "PowerFx",
"expression": "1 = 1"
},
- "labelSelectors": [
+ "queueSelectors": [
{
"key": "foo",
- "operator": "equal",
+ "labelOperator": "equal",
+ "value": "bar"
+ }
+ ]
+ }
+ ],
+ "prioritizationRule": {
+ "kind": "static-rule",
+ "value": "2"
+ },
+ "workerSelectors": []
+ }
+ },
+ "201": {
+ "body": {
+ "id": "90eb00c4-234e-4df7-a231-ef7895518384",
+ "name": "MainUpdate",
+ "fallbackQueueId": "MainQueue",
+ "queueSelectors": [
+ {
+ "kind": "conditional",
+ "condition": {
+ "kind": "expression-rule",
+ "language": "PowerFx",
+ "expression": "1 = 1"
+ },
+ "queueSelectors": [
+ {
+ "key": "foo",
+ "labelOperator": "equal",
"value": "bar"
}
]
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_CreateDistributionPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_CreateDistributionPolicy.json
index 423edaf76c58..e64543f59711 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_CreateDistributionPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_CreateDistributionPolicy.json
@@ -10,7 +10,7 @@
"maxConcurrentOffers": 5,
"bypassSelectors": false
},
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
"name": "Main"
}
},
@@ -19,7 +19,20 @@
"body": {
"id": "d9033d56-659c-437a-b5b7-4f3b14301dd4",
"name": "Main",
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
+ "mode": {
+ "kind": "longest-idle",
+ "minConcurrentOffers": 1,
+ "maxConcurrentOffers": 5,
+ "bypassSelectors": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "d9033d56-659c-437a-b5b7-4f3b14301dd4",
+ "name": "Main",
+ "offerExpiresAfterSeconds": 300,
"mode": {
"kind": "longest-idle",
"minConcurrentOffers": 1,
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_GetDistributionPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_GetDistributionPolicy.json
index a626db14e183..458ff4f53e99 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_GetDistributionPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_GetDistributionPolicy.json
@@ -9,7 +9,7 @@
"body": {
"id": "MainDistributionPolicy",
"name": "Main",
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
"mode": {
"kind": "longest-idle",
"minConcurrentOffers": 1,
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_ListDistributionPoliciesWithPageSize.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_ListDistributionPoliciesWithPageSize.json
index 92f63e7c748f..5cbbe1e72b9e 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_ListDistributionPoliciesWithPageSize.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_ListDistributionPoliciesWithPageSize.json
@@ -12,7 +12,7 @@
"distributionPolicy": {
"id": "SecondaryDistributionPolicy",
"name": "Secondary",
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
"mode": {
"kind": "round-robin",
"minConcurrentOffers": 1,
@@ -26,7 +26,7 @@
"distributionPolicy": {
"id": "MainDistributionPolicy",
"name": "Main",
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
"mode": {
"kind": "longest-idle",
"minConcurrentOffers": 1,
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_UpdateDistributionPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_UpdateDistributionPolicy.json
index 423edaf76c58..e64543f59711 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_UpdateDistributionPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/DistributionPolicies_UpdateDistributionPolicy.json
@@ -10,7 +10,7 @@
"maxConcurrentOffers": 5,
"bypassSelectors": false
},
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
"name": "Main"
}
},
@@ -19,7 +19,20 @@
"body": {
"id": "d9033d56-659c-437a-b5b7-4f3b14301dd4",
"name": "Main",
- "offerTtlSeconds": 300,
+ "offerExpiresAfterSeconds": 300,
+ "mode": {
+ "kind": "longest-idle",
+ "minConcurrentOffers": 1,
+ "maxConcurrentOffers": 5,
+ "bypassSelectors": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "d9033d56-659c-437a-b5b7-4f3b14301dd4",
+ "name": "Main",
+ "offerExpiresAfterSeconds": 300,
"mode": {
"kind": "longest-idle",
"minConcurrentOffers": 1,
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_CreateExceptionPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_CreateExceptionPolicy.json
index bd1324978c74..f932e59c4a6e 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_CreateExceptionPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_CreateExceptionPolicy.json
@@ -47,6 +47,29 @@
}
}
}
+ },
+ "201": {
+ "body": {
+ "id": "cf1cda69-6f41-45ac-b252-213293f1b1cb",
+ "name": "Main",
+ "exceptionRules": {
+ "MaxWaitTimeExceeded": {
+ "trigger": {
+ "kind": "wait-time",
+ "thresholdSeconds": 20
+ },
+ "actions": {
+ "MoveJobToEscalatedQueue": {
+ "kind": "reclassify",
+ "classificationPolicyId": "Main",
+ "labelsToUpsert": {
+ "escalated": true
+ }
+ }
+ }
+ }
+ }
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_UpdateExceptionPolicy.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_UpdateExceptionPolicy.json
index dd5e5f365943..860e98a4bd25 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_UpdateExceptionPolicy.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/ExceptionPolicies_UpdateExceptionPolicy.json
@@ -47,6 +47,29 @@
}
}
}
+ },
+ "201": {
+ "body": {
+ "id": "cf1cda69-6f41-45ac-b252-213293f1b1cb",
+ "name": "Main test",
+ "exceptionRules": {
+ "MaxWaitTimeExceeded": {
+ "trigger": {
+ "kind": "wait-time",
+ "thresholdSeconds": 20
+ },
+ "actions": {
+ "MoveJobToEscalatedQueue": {
+ "kind": "reclassify",
+ "classificationPolicyId": "Main",
+ "labelsToUpsert": {
+ "escalated": true
+ }
+ }
+ }
+ }
+ }
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CloseJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CloseJob.json
index 116e379e6d5a..3ef1667ada2a 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CloseJob.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CloseJob.json
@@ -5,7 +5,8 @@
"id": "8780b28c-7079-4de1-9143-4d369289e958",
"closeJobRequest": {
"assignmentId": "1d5896f3-8b54-40be-82d3-910323f5e2af",
- "dispositionCode": "JobCompleted."
+ "dispositionCode": "JobCompleted.",
+ "note": "Closing job"
}
},
"responses": {
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CompleteJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CompleteJob.json
index 2317cc2084e5..5e4cb3ce3c1b 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CompleteJob.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CompleteJob.json
@@ -4,7 +4,8 @@
"api-version": "2022-07-18-preview",
"id": "8780b28c-7079-4de1-9143-4d369289e958",
"completeJobRequest": {
- "assignmentId": "1d5896f3-8b54-40be-82d3-910323f5e2af"
+ "assignmentId": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "note": "Completing job"
}
},
"responses": {
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateJob.json
index c23e72f4faf8..ceab14d181b5 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateJob.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateJob.json
@@ -15,7 +15,13 @@
"value": true
}
],
- "labels": {}
+ "labels": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
}
},
"responses": {
@@ -23,8 +29,39 @@
"body": {
"id": "JobId",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
- "jobStatus": "queued",
- "enqueueTimeUtc": "2021-09-30T23:59:04.5311999+00:00",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
+ "channelId": "CustomChatChannel",
+ "classificationPolicyId": null,
+ "queueId": "MainQueue",
+ "priority": 5,
+ "dispositionCode": null,
+ "requestedWorkerSelectors": [
+ {
+ "key": "Sales",
+ "labelOperator": "equal",
+ "value": true,
+ "expiresAfterSeconds": null
+ }
+ ],
+ "attachedWorkerSelectors": [],
+ "labels": {},
+ "assignments": {},
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "JobId",
+ "channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomChatChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
@@ -35,13 +72,19 @@
"key": "Sales",
"labelOperator": "equal",
"value": true,
- "ttlSeconds": null
+ "expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
- "notes": {}
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateScheduledJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateScheduledJob.json
new file mode 100644
index 000000000000..f194ed2bf6b1
--- /dev/null
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_CreateScheduledJob.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "endpoint": "https://contoso.westus.communications.azure.com",
+ "api-version": "2022-07-18-preview",
+ "id": "JobId",
+ "patch": {
+ "channelId": "CustomChatChannel",
+ "channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "queueId": "MainQueue",
+ "priority": 5,
+ "requestedWorkerSelectors": [
+ {
+ "key": "Sales",
+ "labelOperator": "equal",
+ "value": true
+ }
+ ],
+ "labels": {},
+ "matchingMode": {
+ "modeType": "scheduleAndSuspendMode",
+ "queueAndMatchMode": null,
+ "scheduleAndSuspendMode": {
+ "scheduleAt": "2023-05-26T23:22:12.0774222+00:00"
+ },
+ "suspendMode": null
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JobId",
+ "channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
+ "channelId": "CustomChatChannel",
+ "classificationPolicyId": null,
+ "queueId": "MainQueue",
+ "priority": 5,
+ "dispositionCode": null,
+ "requestedWorkerSelectors": [
+ {
+ "key": "Sales",
+ "labelOperator": "equal",
+ "value": true,
+ "expiresAfterSeconds": null
+ }
+ ],
+ "attachedWorkerSelectors": [],
+ "labels": {},
+ "assignments": {},
+ "notes": {},
+ "matchingMode": {
+ "modeType": "scheduleAndSuspendMode",
+ "queueAndMatchMode": null,
+ "scheduleAndSuspendMode": {
+ "scheduleAt": "2023-05-26T23:22:12.0774222+00:00"
+ },
+ "suspendMode": null
+ },
+ "scheduledAt": null
+ }
+ },
+ "201": {
+ "body": {
+ "id": "JobId",
+ "channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
+ "channelId": "CustomChatChannel",
+ "classificationPolicyId": null,
+ "queueId": "MainQueue",
+ "priority": 5,
+ "dispositionCode": null,
+ "requestedWorkerSelectors": [
+ {
+ "key": "Sales",
+ "labelOperator": "equal",
+ "value": true,
+ "expiresAfterSeconds": null
+ }
+ ],
+ "attachedWorkerSelectors": [],
+ "labels": {},
+ "assignments": {},
+ "notes": {},
+ "matchingMode": {
+ "modeType": "scheduleAndSuspendMode",
+ "queueAndMatchMode": null,
+ "scheduleAndSuspendMode": {
+ "scheduleAt": "2023-05-26T23:22:12.0774222+00:00"
+ },
+ "suspendMode": null
+ },
+ "scheduledAt": null
+ }
+ }
+ }
+}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJob.json
index 59ea8f552e52..4281ace192f4 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJob.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJob.json
@@ -9,8 +9,8 @@
"body": {
"id": "8780b28c-7079-4de1-9143-4d369289e958",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
- "jobStatus": "queued",
- "enqueueTimeUtc": "2021-09-30T23:59:04.5311999+00:00",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomVoiceChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
@@ -21,13 +21,19 @@
"key": "Sales",
"labelOperator": "equal",
"value": true,
- "ttlSeconds": null
+ "expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
- "notes": {}
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJobsWithPageSize.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJobsWithPageSize.json
index c50b00b3580e..21603b03288e 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJobsWithPageSize.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_GetJobsWithPageSize.json
@@ -12,11 +12,11 @@
"body": {
"value": [
{
- "routerJob": {
+ "job": {
"id": "383541b3-5637-4af6-8aac-3391da8a578a",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
- "jobStatus": "queued",
- "enqueueTimeUtc": "2021-09-30T23:56:21.883322+00:00",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:56:21.883322+00:00",
"channelId": "CustomChatChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
@@ -24,16 +24,22 @@
"dispositionCode": null,
"labels": {},
"assignments": {},
- "notes": {}
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
},
"etag": "etag"
},
{
- "routerJob": {
+ "job": {
"id": "c571dd84-1ca7-4606-a77a-f38d9e4ae513",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
- "jobStatus": "queued",
- "enqueueTimeUtc": "2021-09-30T23:57:54.041179+00:00",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:57:54.041179+00:00",
"channelId": "CustomChatChannel2",
"classificationPolicyId": null,
"queueId": "MainQueue",
@@ -41,7 +47,13 @@
"dispositionCode": null,
"labels": {},
"assignments": {},
- "notes": {}
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
},
"etag": "etag"
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UnassignJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UnassignJob.json
index 4ea1116b082b..3c4f782d560b 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UnassignJob.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UnassignJob.json
@@ -3,7 +3,10 @@
"endpoint": "https://contoso.westus.communications.azure.com",
"api-version": "2022-07-18-preview",
"id": "8780b28c-7079-4de1-9143-4d369289e958",
- "assignmentId": "1d5896f3-8b54-40be-82d3-910323f5e2af"
+ "assignmentId": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "unassignJobRequest": {
+ "suspendMatching": false
+ }
},
"responses": {
"200": {
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UpdateJob.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UpdateJob.json
index d9acf28bab39..8190f25baaad 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UpdateJob.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Jobs_UpdateJob.json
@@ -12,8 +12,8 @@
"body": {
"id": "383541b3-5637-4af6-8aac-3391da8a578a",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
- "jobStatus": "queued",
- "enqueueTimeUtc": "2021-09-30T23:59:04.5311999+00:00",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomVoiceChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
@@ -24,13 +24,50 @@
"key": "Sales",
"labelOperator": "equal",
"value": true,
- "ttlSeconds": null
+ "expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
- "notes": {}
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "383541b3-5637-4af6-8aac-3391da8a578a",
+ "channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "status": "queued",
+ "enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
+ "channelId": "CustomVoiceChannel",
+ "classificationPolicyId": null,
+ "queueId": "MainQueue",
+ "priority": 5,
+ "dispositionCode": null,
+ "requestedWorkerSelectors": [
+ {
+ "key": "Sales",
+ "labelOperator": "equal",
+ "value": true,
+ "expiresAfterSeconds": null
+ }
+ ],
+ "attachedWorkerSelectors": [],
+ "labels": {},
+ "assignments": {},
+ "notes": {},
+ "matchingMode": {
+ "modeType": "queueAndMatchMode",
+ "queueAndMatchMode": {},
+ "scheduleAndSuspendMode": null,
+ "suspendMode": null
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Offers_DeclineJobOffer.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Offers_DeclineJobOffer.json
index b95b2306fdd3..a0fffb9fa735 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Offers_DeclineJobOffer.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Offers_DeclineJobOffer.json
@@ -3,7 +3,10 @@
"endpoint": "https://contoso.westus.communications.azure.com",
"api-version": "2022-07-18-preview",
"workerId": "DefaultWorker",
- "offerId": "1d5896f3-8b54-40be-82d3-910323f5e2af"
+ "offerId": "1d5896f3-8b54-40be-82d3-910323f5e2af",
+ "declineJobOfferRequest": {
+ "retryOfferAt": "2023-05-26T00:00:00.0000000Z"
+ }
},
"responses": {
"200": {
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_CreateQueue.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_CreateQueue.json
index 516ddc8ee317..9d62d76d3c22 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_CreateQueue.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_CreateQueue.json
@@ -8,9 +8,7 @@
"name": "Main",
"labels": {},
"exceptionPolicyId": "MainExceptionPolicy"
- },
- "repeatabilityRequestId": "5aac88f9-d24a-4c53-9d90-86a801667cbe",
- "repeatabilityFirstSent": "Tue, 23 Nov 2021 08:49:37 GMT"
+ }
},
"responses": {
"200": {
@@ -21,6 +19,15 @@
"labels": {},
"exceptionPolicyId": "MainExceptionPolicy"
}
+ },
+ "201": {
+ "body": {
+ "id": "246d5a06-c04a-4b6b-8a34-02bbd9fdad68",
+ "name": "Main",
+ "distributionPolicyId": "MainDistributionPolicy",
+ "labels": {},
+ "exceptionPolicyId": "MainExceptionPolicy"
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_ListQueuesWithPageSize.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_ListQueuesWithPageSize.json
index 83c42f9feac1..931f665e05d2 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_ListQueuesWithPageSize.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_ListQueuesWithPageSize.json
@@ -9,7 +9,7 @@
"body": {
"value": [
{
- "jobQueue": {
+ "queue": {
"id": "MainQueue",
"name": "Main",
"distributionPolicyId": "MainDistributionPolicy",
@@ -19,7 +19,7 @@
"etag": "etag"
},
{
- "jobQueue": {
+ "queue": {
"id": "SecondaryQueue",
"name": "Secondary",
"distributionPolicyId": "SecondaryDistributionPolicy",
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_UpdateQueue.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_UpdateQueue.json
index b2546df698d0..29f8024b1908 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_UpdateQueue.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Queues_UpdateQueue.json
@@ -17,6 +17,15 @@
"labels": {},
"exceptionPolicyId": "MainExceptionPolicy"
}
+ },
+ "201": {
+ "body": {
+ "id": "MainQueue",
+ "name": "Main",
+ "distributionPolicyId": "MainDistributionPolicy",
+ "labels": {},
+ "exceptionPolicyId": "MainExceptionPolicy"
+ }
}
}
}
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_CreateWorker.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_CreateWorker.json
index 6cee0f131a8d..214f7a895dd0 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_CreateWorker.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_CreateWorker.json
@@ -13,10 +13,12 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"availableForOffers": false
@@ -35,10 +37,38 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
+ }
+ },
+ "offers": [],
+ "assignedJobs": [],
+ "loadRatio": 0,
+ "availableForOffers": false
+ }
+ },
+ "201": {
+ "body": {
+ "id": "WorkerId",
+ "state": "inactive",
+ "queueAssignments": {
+ "MainQueue": {}
+ },
+ "totalCapacity": 10,
+ "labels": {},
+ "tags": {},
+ "channelConfigurations": {
+ "CustomChatChannel": {
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
+ },
+ "CustomVoiceChannel": {
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterActiveWorker.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterActiveWorker.json
index d4c7d38068f6..548b2074f72a 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterActiveWorker.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterActiveWorker.json
@@ -21,10 +21,38 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
+ }
+ },
+ "offers": [],
+ "assignedJobs": [],
+ "loadRatio": 0,
+ "availableForOffers": false
+ }
+ },
+ "201": {
+ "body": {
+ "id": "WorkerId",
+ "state": "draining",
+ "queueAssignments": {
+ "MainQueue": {}
+ },
+ "totalCapacity": 10,
+ "labels": {},
+ "tags": {},
+ "channelConfigurations": {
+ "CustomChatChannel": {
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
+ },
+ "CustomVoiceChannel": {
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterInactiveWorker.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterInactiveWorker.json
index 4dc70bac9356..08ae919f625a 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterInactiveWorker.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_DeregisterInactiveWorker.json
@@ -21,10 +21,38 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
+ }
+ },
+ "offers": [],
+ "assignedJobs": [],
+ "loadRatio": 0,
+ "availableForOffers": false
+ }
+ },
+ "201": {
+ "body": {
+ "id": "WorkerId",
+ "state": "inactive",
+ "queueAssignments": {
+ "MainQueue": {}
+ },
+ "totalCapacity": 10,
+ "labels": {},
+ "tags": {},
+ "channelConfigurations": {
+ "CustomChatChannel": {
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
+ },
+ "CustomVoiceChannel": {
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetAvailableWorkersByChannel.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetAvailableWorkersByChannel.json
index d3ae0d142b7c..49872a55c30d 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetAvailableWorkersByChannel.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetAvailableWorkersByChannel.json
@@ -2,7 +2,7 @@
"parameters": {
"endpoint": "https://contoso.westus.communications.azure.com",
"api-version": "2022-07-18-preview",
- "status": "active",
+ "state": "active",
"channelId": "CustomChatChannel",
"hasCapacity": true
},
@@ -11,7 +11,7 @@
"body": {
"value": [
{
- "routerWorker": {
+ "worker": {
"id": "DefaultWorker",
"state": "active",
"queueAssignments": {
@@ -23,10 +23,12 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 100
+ "capacityCostPerJob": 100,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
@@ -37,7 +39,7 @@
"etag": "etag"
},
{
- "routerWorker": {
+ "worker": {
"id": "SecondWorker",
"state": "active",
"queueAssignments": {
@@ -49,10 +51,12 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 100
+ "capacityCostPerJob": 100,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetWorkersWithPageSize.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetWorkersWithPageSize.json
index 3748c4bb48d9..fa43399597a4 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetWorkersWithPageSize.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_GetWorkersWithPageSize.json
@@ -9,7 +9,7 @@
"body": {
"value": [
{
- "routerWorker": {
+ "worker": {
"id": "DefaultWorker",
"state": "active",
"queueAssignments": {
@@ -21,10 +21,12 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 100
+ "capacityCostPerJob": 100,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
@@ -35,7 +37,7 @@
"etag": "etag"
},
{
- "routerWorker": {
+ "worker": {
"id": "SecondWorker",
"state": "active",
"queueAssignments": {
@@ -47,10 +49,12 @@
"tags": {},
"channelConfigurations": {
"CustomEmailChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 4
},
"CustomSMSChannel": {
- "capacityCostPerJob": 100
+ "capacityCostPerJob": 100,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_RegisterWorker.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_RegisterWorker.json
index bcd1f5a365b3..04040fd1df99 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_RegisterWorker.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_RegisterWorker.json
@@ -21,10 +21,38 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
+ }
+ },
+ "offers": [],
+ "assignedJobs": [],
+ "loadRatio": 0,
+ "availableForOffers": true
+ }
+ },
+ "201": {
+ "body": {
+ "id": "WorkerId",
+ "state": "active",
+ "queueAssignments": {
+ "MainQueue": {}
+ },
+ "totalCapacity": 10,
+ "labels": {},
+ "tags": {},
+ "channelConfigurations": {
+ "CustomChatChannel": {
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
+ },
+ "CustomVoiceChannel": {
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_UpdateWorker.json b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_UpdateWorker.json
index 6cee0f131a8d..214f7a895dd0 100644
--- a/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_UpdateWorker.json
+++ b/specification/communication/data-plane/JobRouter/preview/2022-07-18-preview/examples/Workers_UpdateWorker.json
@@ -13,10 +13,12 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"availableForOffers": false
@@ -35,10 +37,38 @@
"tags": {},
"channelConfigurations": {
"CustomChatChannel": {
- "capacityCostPerJob": 11
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
},
"CustomVoiceChannel": {
- "capacityCostPerJob": 10
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
+ }
+ },
+ "offers": [],
+ "assignedJobs": [],
+ "loadRatio": 0,
+ "availableForOffers": false
+ }
+ },
+ "201": {
+ "body": {
+ "id": "WorkerId",
+ "state": "inactive",
+ "queueAssignments": {
+ "MainQueue": {}
+ },
+ "totalCapacity": 10,
+ "labels": {},
+ "tags": {},
+ "channelConfigurations": {
+ "CustomChatChannel": {
+ "capacityCostPerJob": 11,
+ "maxNumberOfJobs": 4
+ },
+ "CustomVoiceChannel": {
+ "capacityCostPerJob": 10,
+ "maxNumberOfJobs": 1
}
},
"offers": [],
diff --git a/specification/communication/data-plane/JobRouter/readme.md b/specification/communication/data-plane/JobRouter/readme.md
index 63e7979b2c1b..9fb06a381347 100644
--- a/specification/communication/data-plane/JobRouter/readme.md
+++ b/specification/communication/data-plane/JobRouter/readme.md
@@ -55,12 +55,6 @@ directive:
transform: >
$.type = "object";
$.additionalProperties["$ref"] = "#/definitions/ExceptionAction";
-
-# Rename CommunicationError to JobRouterError
- - from: swagger-document
- where: '$.definitions.CommunicationError'
- transform: >
- $["x-ms-client-name"] = "JobRouterError";
```
diff --git a/specification/communication/data-plane/PhoneNumbers/preview/2023-05-01-preview/phonenumbers.json b/specification/communication/data-plane/PhoneNumbers/preview/2023-05-01-preview/phonenumbers.json
index c671f76c0379..e83d71c6f80b 100644
--- a/specification/communication/data-plane/PhoneNumbers/preview/2023-05-01-preview/phonenumbers.json
+++ b/specification/communication/data-plane/PhoneNumbers/preview/2023-05-01-preview/phonenumbers.json
@@ -1515,6 +1515,10 @@
"modelAsString": true
}
},
+ "isoCountryCode": {
+ "description": "ISO 3166-1 two character ('alpha-2') code associated with the phone number.",
+ "type": "string"
+ },
"operatorDetails": {
"$ref": "#/definitions/OperatorDetails"
}
diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/CommunicationServices.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/CommunicationServices.json
index 585165f30bd0..d89bb83fd864 100644
--- a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/CommunicationServices.json
+++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/CommunicationServices.json
@@ -686,7 +686,12 @@
"x-ms-client-flatten": true
},
"identity": {
- "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity"
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "x-ms-mutability": [
+ "create",
+ "read",
+ "update"
+ ]
}
}
},
diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateRemoveSystemIdentity.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateRemoveSystemIdentity.json
index 5755e61e2cdc..d23a346778b4 100644
--- a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateRemoveSystemIdentity.json
+++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateRemoveSystemIdentity.json
@@ -7,10 +7,10 @@
"parameters": {
"tags": {
"newTag": "newVal"
+ },
+ "identity": {
+ "type": "None"
}
- },
- "identity": {
- "type": "None"
}
},
"responses": {
diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAndUserIdentity.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAndUserIdentity.json
index b86a5f34eb31..b188617734bc 100644
--- a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAndUserIdentity.json
+++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAndUserIdentity.json
@@ -7,12 +7,12 @@
"parameters": {
"tags": {
"newTag": "newVal"
- }
- },
- "identity": {
- "type": "SystemAssigned,UserAssigned",
- "userAssignedIdentities": {
- "/user/assigned/resource/id": {}
+ },
+ "identity": {
+ "type": "SystemAssigned,UserAssigned",
+ "userAssignedIdentities": {
+ "/user/assigned/resource/id": {}
+ }
}
}
},
diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAssignedIdentity.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAssignedIdentity.json
index 29311ed0cf04..11e225caa31c 100644
--- a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAssignedIdentity.json
+++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithSystemAssignedIdentity.json
@@ -7,10 +7,10 @@
"parameters": {
"tags": {
"newTag": "newVal"
+ },
+ "identity": {
+ "type": "SystemAssigned"
}
- },
- "identity": {
- "type": "SystemAssigned"
}
},
"responses": {
diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithUserAssignedIdentity.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithUserAssignedIdentity.json
index 267afc354439..0fc322a30644 100644
--- a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithUserAssignedIdentity.json
+++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-04-01-preview/examples/communicationServices/updateWithUserAssignedIdentity.json
@@ -7,12 +7,12 @@
"parameters": {
"tags": {
"newTag": "newVal"
- }
- },
- "identity": {
- "type": "UserAssigned",
- "userAssignedIdentities": {
- "/user/assigned/resource/id": {}
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/user/assigned/resource/id": {}
+ }
}
}
},
diff --git a/specification/communication/resource-manager/readme.md b/specification/communication/resource-manager/readme.md
index 4987e0546c10..a5b1e38970d3 100644
--- a/specification/communication/resource-manager/readme.md
+++ b/specification/communication/resource-manager/readme.md
@@ -28,7 +28,7 @@ These are the global settings for the Azure Communication Services API.
title: CommunicationServiceManagementClient
openapi-type: arm
openapi-subtype: rpaas
-tag: package-2023-03
+tag: package-preview-2023-04
```
### Tag: package-preview-2023-04
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2022-08-01/computeRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2022-08-01/computeRPCommon.json
index 08c547b70aac..ecb193363008 100644
--- a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2022-08-01/computeRPCommon.json
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2022-08-01/computeRPCommon.json
@@ -438,7 +438,7 @@
"properties": {
"vmSize": {
"type": "string",
- "description": "Specifies the size of the virtual machine.
The enum data type is currently deprecated and will be removed by December 23rd 2023.
Recommended way to get the list of available sizes is using these APIs:
[List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
[List all available virtual machine sizes in a region]( https://docs.microsoft.com/rest/api/compute/resourceskus/list)
[List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/sizes).
The available VM sizes depend on region and availability set.",
+ "description": "Specifies the size of the virtual machine. The enum data type is currently deprecated and will be removed by December 23rd 2023. Recommended way to get the list of available sizes is using these APIs: [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) [List all available virtual machine sizes in a region]( https://docs.microsoft.com/rest/api/compute/resourceskus/list) [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/sizes). The available VM sizes depend on region and availability set.",
"enum": [
"Basic_A0",
"Basic_A1",
@@ -614,7 +614,7 @@
},
"vmSizeProperties": {
"$ref": "#/definitions/VMSizeProperties",
- "description": "Specifies the properties for customizing the size of the virtual machine. Minimum api-version: 2021-07-01.
This feature is still in preview mode and is not supported for VirtualMachineScaleSet.
Please follow the instructions in [VM Customization](https://aka.ms/vmcustomization) for more details."
+ "description": "Specifies the properties for customizing the size of the virtual machine. Minimum api-version: 2021-07-01. This feature is still in preview mode and is not supported for VirtualMachineScaleSet. Please follow the instructions in [VM Customization](https://aka.ms/vmcustomization) for more details."
}
},
"description": "Specifies the hardware settings for the virtual machine."
@@ -625,12 +625,12 @@
"vCPUsAvailable": {
"type": "integer",
"format": "int32",
- "description": "Specifies the number of vCPUs available for the VM.
When this property is not specified in the request body the default behavior is to set it to the value of vCPUs available for that VM size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list) ."
+ "description": "Specifies the number of vCPUs available for the VM. When this property is not specified in the request body the default behavior is to set it to the value of vCPUs available for that VM size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list) ."
},
"vCPUsPerCore": {
"type": "integer",
"format": "int32",
- "description": "Specifies the vCPU to physical core ratio.
When this property is not specified in the request body the default behavior is set to the value of vCPUsPerCore for the VM Size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list)
Setting this property to 1 also means that hyper-threading is disabled."
+ "description": "Specifies the vCPU to physical core ratio. When this property is not specified in the request body the default behavior is set to the value of vCPUsPerCore for the VM Size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list) Setting this property to 1 also means that hyper-threading is disabled."
}
},
"description": "Specifies VM Size Property settings on the virtual machine."
@@ -684,7 +684,7 @@
"name": "DiskControllerTypes",
"modelAsString": true
},
- "description": "Specifies the disk controller type configured for the VM and VirtualMachineScaleSet. This property is only supported for virtual machines whose operating system disk and VM sku supports Generation 2 (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please check the HyperVGenerations capability returned as part of VM sku capabilities in the response of Microsoft.Compute SKUs api for the region contains V2 (https://docs.microsoft.com/rest/api/compute/resourceskus/list) .
For more information about Disk Controller Types supported please refer to https://aka.ms/azure-diskcontrollertypes."
+ "description": "Specifies the disk controller type configured for the VM and VirtualMachineScaleSet. This property is only supported for virtual machines whose operating system disk and VM sku supports Generation 2 (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please check the HyperVGenerations capability returned as part of VM sku capabilities in the response of Microsoft.Compute SKUs api for the region contains V2 (https://docs.microsoft.com/rest/api/compute/resourceskus/list) . For more information about Disk Controller Types supported please refer to https://aka.ms/azure-diskcontrollertypes."
},
"KeyVaultSecretReference": {
"properties": {
@@ -709,7 +709,7 @@
"$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
}
],
- "description": "Describes the parameter of customer managed disk encryption set resource id that can be specified for disk.
NOTE: The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details."
+ "description": "Describes the parameter of customer managed disk encryption set resource id that can be specified for disk. NOTE: The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details."
},
"KeyVaultKeyReference": {
"properties": {
@@ -750,7 +750,7 @@
"properties": {
"securityEncryptionType": {
"type": "string",
- "description": "Specifies the EncryptionType of the managed disk.
It is set to DiskWithVMGuestState for encryption of the managed disk along with VMGuestState blob, and VMGuestStateOnly for encryption of just the VMGuestState blob.
NOTE: It can be set for only Confidential VMs.",
+ "description": "Specifies the EncryptionType of the managed disk. It is set to DiskWithVMGuestState for encryption of the managed disk along with VMGuestState blob, and VMGuestStateOnly for encryption of just the VMGuestState blob. NOTE: It can be set for only Confidential VMs.",
"enum": [
"VMGuestStateOnly",
"DiskWithVMGuestState"
@@ -765,7 +765,7 @@
"description": "Specifies the customer managed disk encryption set resource id for the managed disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and VMGuest blob."
}
},
- "description": "Specifies the security profile settings for the managed disk.
NOTE: It can only be set for Confidential VMs"
+ "description": "Specifies the security profile settings for the managed disk. NOTE: It can only be set for Confidential VMs"
},
"VirtualHardDisk": {
"properties": {
@@ -778,7 +778,7 @@
},
"Caching": {
"type": "string",
- "description": "Specifies the caching requirements.
Possible values are:
**None**
**ReadOnly**
**ReadWrite**
Default: **None for Standard storage. ReadOnly for Premium storage**",
+ "description": "Specifies the caching requirements. Possible values are: **None** **ReadOnly** **ReadWrite** Default: **None for Standard storage. ReadOnly for Premium storage**",
"enum": [
"None",
"ReadOnly",
@@ -791,7 +791,7 @@
},
"CreateOption": {
"type": "string",
- "description": "Specifies how the virtual machine should be created.
Possible values are:
**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.
**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.",
+ "description": "Specifies how the virtual machine should be created. Possible values are: **Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine. **FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.",
"enum": [
"FromImage",
"Empty",
@@ -804,7 +804,7 @@
},
"DetachOption": {
"type": "string",
- "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach**.
detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior.
This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.",
+ "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach**. detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.",
"enum": [
"ForceDetach"
],
@@ -815,7 +815,7 @@
},
"DeleteOption": {
"type": "string",
- "description": "Specifies the behavior of the managed disk when the VM gets deleted i.e whether the managed disk is deleted or detached. Supported values:
**Delete** If this value is used, the managed disk is deleted when VM gets deleted.
**Detach** If this value is used, the managed disk is retained after VM gets deleted.
Minimum api-version: 2021-03-01",
+ "description": "Specifies the behavior of the managed disk when the VM gets deleted i.e whether the managed disk is deleted or detached. Supported values: **Delete** If this value is used, the managed disk is deleted when VM gets deleted. **Detach** If this value is used, the managed disk is retained after VM gets deleted. Minimum api-version: 2021-03-01",
"enum": [
"Delete",
"Detach"
@@ -873,10 +873,10 @@
},
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
- "description": "Specifies the ephemeral disk placement for operating system disk.
Possible values are:
**CacheDisk**
**ResourceDisk**
Default: **CacheDisk** if one is configured for the VM size otherwise **ResourceDisk** is used.
Refer to VM size documentation for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM sizes exposes a cache disk."
+ "description": "Specifies the ephemeral disk placement for operating system disk. Possible values are: **CacheDisk** **ResourceDisk** Default: **CacheDisk** if one is configured for the VM size otherwise **ResourceDisk** is used. Refer to VM size documentation for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM sizes exposes a cache disk."
}
},
- "description": "Describes the parameters of ephemeral disk settings that can be specified for operating system disk.
NOTE: The ephemeral disk settings can only be specified for managed disk."
+ "description": "Describes the parameters of ephemeral disk settings that can be specified for operating system disk. NOTE: The ephemeral disk settings can only be specified for managed disk."
},
"ManagedDiskParameters": {
"properties": {
@@ -904,7 +904,7 @@
"properties": {
"osType": {
"type": "string",
- "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.
Possible values are:
**Windows**
**Linux**",
+ "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD. Possible values are: **Windows** **Linux**",
"enum": [
"Windows",
"Linux"
@@ -916,7 +916,7 @@
},
"encryptionSettings": {
"$ref": "#/definitions/DiskEncryptionSettings",
- "description": "Specifies the encryption settings for the OS Disk.
Minimum api-version: 2015-06-15"
+ "description": "Specifies the encryption settings for the OS Disk. Minimum api-version: 2015-06-15"
},
"name": {
"type": "string",
@@ -932,7 +932,7 @@
},
"caching": {
"$ref": "#/definitions/Caching",
- "description": "Specifies the caching requirements.
Possible values are:
**None**
**ReadOnly**
**ReadWrite**
Default: **None** for Standard storage. **ReadOnly** for Premium storage."
+ "description": "Specifies the caching requirements. Possible values are: **None** **ReadOnly** **ReadWrite** Default: **None** for Standard storage. **ReadOnly** for Premium storage."
},
"writeAcceleratorEnabled": {
"type": "boolean",
@@ -944,12 +944,12 @@
},
"createOption": {
"$ref": "#/definitions/CreateOption",
- "description": "Specifies how the virtual machine should be created.
Possible values are:
**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.
**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described."
+ "description": "Specifies how the virtual machine should be created. Possible values are: **Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine. **FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described."
},
"diskSizeGB": {
"type": "integer",
"format": "int32",
- "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023"
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023"
},
"managedDisk": {
"description": "The managed disk parameters.",
@@ -957,13 +957,13 @@
},
"deleteOption": {
"$ref": "#/definitions/DeleteOption",
- "description": "Specifies whether OS Disk should be deleted or detached upon VM deletion.
Possible values:
**Delete** If this value is used, the OS disk is deleted when VM is deleted.
**Detach** If this value is used, the os disk is retained after VM is deleted.
The default value is set to **detach**. For an ephemeral OS Disk, the default value is set to **Delete**. User cannot change the delete option for ephemeral OS Disk."
+ "description": "Specifies whether OS Disk should be deleted or detached upon VM deletion. Possible values: **Delete** If this value is used, the OS disk is deleted when VM is deleted. **Detach** If this value is used, the os disk is retained after VM is deleted. The default value is set to **detach**. For an ephemeral OS Disk, the default value is set to **Delete**. User cannot change the delete option for ephemeral OS Disk."
}
},
"required": [
"createOption"
],
- "description": "Specifies information about the operating system disk used by the virtual machine.
For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ "description": "Specifies information about the operating system disk used by the virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
},
"DataDisk": {
"properties": {
@@ -986,7 +986,7 @@
},
"caching": {
"$ref": "#/definitions/Caching",
- "description": "Specifies the caching requirements.
Possible values are:
**None**
**ReadOnly**
**ReadWrite**
Default: **None for Standard storage. ReadOnly for Premium storage**"
+ "description": "Specifies the caching requirements. Possible values are: **None** **ReadOnly** **ReadWrite** Default: **None for Standard storage. ReadOnly for Premium storage**"
},
"writeAcceleratorEnabled": {
"type": "boolean",
@@ -994,12 +994,12 @@
},
"createOption": {
"$ref": "#/definitions/CreateOption",
- "description": "Specifies how the virtual machine should be created.
Possible values are:
**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.
**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described."
+ "description": "Specifies how the virtual machine should be created. Possible values are: **Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine. **FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described."
},
"diskSizeGB": {
"type": "integer",
"format": "int32",
- "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023"
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023"
},
"managedDisk": {
"description": "The managed disk parameters.",
@@ -1023,11 +1023,11 @@
},
"detachOption": {
"$ref": "#/definitions/DetachOption",
- "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach**.
detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior.
This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'."
+ "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach**. detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. This feature is still in preview mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'."
},
"deleteOption": {
"$ref": "#/definitions/DeleteOption",
- "description": "Specifies whether data disk should be deleted or detached upon VM deletion.
Possible values:
**Delete** If this value is used, the data disk is deleted when VM is deleted.
**Detach** If this value is used, the data disk is retained after VM is deleted.
The default value is set to **detach**"
+ "description": "Specifies whether data disk should be deleted or detached upon VM deletion. Possible values: **Delete** If this value is used, the data disk is deleted when VM is deleted. **Detach** If this value is used, the data disk is retained after VM is deleted. The default value is set to **detach**"
}
},
"required": [
@@ -1054,7 +1054,7 @@
},
"osDisk": {
"$ref": "#/definitions/OSDisk",
- "description": "Specifies information about the operating system disk used by the virtual machine.
For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ "description": "Specifies information about the operating system disk used by the virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
},
"dataDisks": {
"type": "array",
@@ -1064,11 +1064,11 @@
"x-ms-identifiers": [
"lun"
],
- "description": "Specifies the parameters that are used to add a data disk to a virtual machine.
For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ "description": "Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
},
"diskControllerType": {
"$ref": "#/definitions/DiskControllerType",
- "description": "Specifies the disk controller type configured for the VM.
NOTE: This property will be set to the default disk controller type if not specified provided virtual machine is being created as a hyperVGeneration: V2 based on the capabilities of the operating system disk and VM size from the the specified minimum api version.
You need to deallocate the VM before updating its disk controller type unless you are updating the VM size in the VM configuration which implicitly deallocates and reallocates the VM.
Minimum api-version: 2022-08-01"
+ "description": "Specifies the disk controller type configured for the VM. NOTE: This property will be set to the default disk controller type if not specified provided virtual machine is being created as a hyperVGeneration: V2 based on the capabilities of the operating system disk and VM size from the the specified minimum api version. You need to deallocate the VM before updating its disk controller type unless you are updating the VM size in the VM configuration which implicitly deallocates and reallocates the VM. Minimum api-version: 2022-08-01"
}
},
"description": "Specifies the storage settings for the virtual machine disks."
@@ -1077,28 +1077,28 @@
"properties": {
"secureBootEnabled": {
"type": "boolean",
- "description": "Specifies whether secure boot should be enabled on the virtual machine.
Minimum api-version: 2020-12-01"
+ "description": "Specifies whether secure boot should be enabled on the virtual machine. Minimum api-version: 2020-12-01"
},
"vTpmEnabled": {
"type": "boolean",
- "description": "Specifies whether vTPM should be enabled on the virtual machine.
Minimum api-version: 2020-12-01"
+ "description": "Specifies whether vTPM should be enabled on the virtual machine. Minimum api-version: 2020-12-01"
}
},
- "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine.
Minimum api-version: 2020-12-01"
+ "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Minimum api-version: 2020-12-01"
},
"SecurityProfile": {
"properties": {
"uefiSettings": {
"$ref": "#/definitions/UefiSettings",
- "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine.
Minimum api-version: 2020-12-01"
+ "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Minimum api-version: 2020-12-01"
},
"encryptionAtHost": {
"type": "boolean",
- "description": "This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself.
Default: The Encryption at host will be disabled unless this property is set to true for the resource."
+ "description": "This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself. Default: The Encryption at host will be disabled unless this property is set to true for the resource."
},
"securityType": {
"type": "string",
- "description": "Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings.
Default: UefiSettings will not be enabled unless this property is set.",
+ "description": "Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. Default: UefiSettings will not be enabled unless this property is set.",
"enum": [
"TrustedLaunch",
"ConfidentialVM"
@@ -1221,7 +1221,7 @@
"properties": {
"protocol": {
"type": "string",
- "description": "Specifies the protocol of WinRM listener.
Possible values are:
**http**
**https**",
+ "description": "Specifies the protocol of WinRM listener. Possible values are: **http** **https**",
"enum": [
"Http",
"Https"
@@ -1233,7 +1233,7 @@
},
"certificateUrl": {
"type": "string",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:
{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}
To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
+ "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8: { \"data\":\"\", \"dataType\":\"pfx\", \"password\":\"\"} To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
}
},
"description": "Describes Protocol and thumbprint of Windows Remote Management listener"
@@ -1255,15 +1255,15 @@
"properties": {
"provisionVMAgent": {
"type": "boolean",
- "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.
When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later."
+ "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later."
},
"enableAutomaticUpdates": {
"type": "boolean",
- "description": "Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true.
For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning."
+ "description": "Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true. For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning."
},
"timeZone": {
"type": "string",
- "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\".
Possible values can be [TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) value from time zones returned by [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones)."
+ "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\". Possible values can be [TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) value from time zones returned by [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones)."
},
"additionalUnattendContent": {
"type": "array",
@@ -1296,7 +1296,7 @@
},
"keyData": {
"type": "string",
- "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format.
For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
+ "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
},
"description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed."
@@ -1328,7 +1328,7 @@
},
"provisionVMAgent": {
"type": "boolean",
- "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.
When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later."
+ "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later."
},
"patchSettings": {
"$ref": "#/definitions/LinuxPatchSettings",
@@ -1339,17 +1339,17 @@
"description": "Indicates whether VMAgent Platform Updates is enabled for the Linux virtual machine. Default value is false."
}
},
- "description": "Specifies the Linux operating system settings on the virtual machine.
For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
},
"VaultCertificate": {
"properties": {
"certificateUrl": {
"type": "string",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:
{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}
To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
+ "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8: { \"data\":\"\", \"dataType\":\"pfx\", \"password\":\"\"} To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
},
"certificateStore": {
"type": "string",
- "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account.
For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted."
+ "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account. For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted."
}
},
"description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM."
@@ -1377,20 +1377,20 @@
"properties": {
"computerName": {
"type": "string",
- "description": "Specifies the host OS name of the virtual machine.
This name cannot be updated after the VM is created.
**Max-length (Windows):** 15 characters
**Max-length (Linux):** 64 characters.
For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules)."
+ "description": "Specifies the host OS name of the virtual machine. This name cannot be updated after the VM is created. **Max-length (Windows):** 15 characters **Max-length (Linux):** 64 characters. For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules)."
},
"adminUsername": {
"type": "string",
- "description": "Specifies the name of the administrator account.
This property cannot be updated after the VM is created.
**Windows-only restriction:** Cannot end in \".\"
**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".
**Minimum-length (Linux):** 1 character
**Max-length (Linux):** 64 characters
**Max-length (Windows):** 20 characters."
+ "description": "Specifies the name of the administrator account. This property cannot be updated after the VM is created. **Windows-only restriction:** Cannot end in \".\" **Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\". **Minimum-length (Linux):** 1 character **Max-length (Linux):** 64 characters **Max-length (Windows):** 20 characters."
},
"adminPassword": {
"type": "string",
- "description": "Specifies the password of the administrator account.
**Minimum-length (Windows):** 8 characters
**Minimum-length (Linux):** 6 characters
**Max-length (Windows):** 123 characters
**Max-length (Linux):** 72 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"
For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)
For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "description": "Specifies the password of the administrator account. **Minimum-length (Windows):** 8 characters **Minimum-length (Linux):** 6 characters **Max-length (Windows):** 123 characters **Max-length (Linux):** 72 characters **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\\W_]) **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\" For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
"x-ms-secret": true
},
"customData": {
"type": "string",
- "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.
**Note: Do not pass any secrets or passwords in customData property**
This property cannot be updated after the VM is created.
customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/)
For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)"
+ "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. **Note: Do not pass any secrets or passwords in customData property** This property cannot be updated after the VM is created. customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/) For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)"
},
"windowsConfiguration": {
"$ref": "#/definitions/WindowsConfiguration",
@@ -1398,7 +1398,7 @@
},
"linuxConfiguration": {
"$ref": "#/definitions/LinuxConfiguration",
- "description": "Specifies the Linux operating system settings on the virtual machine.
For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
},
"secrets": {
"type": "array",
@@ -1412,7 +1412,7 @@
},
"allowExtensionOperations": {
"type": "boolean",
- "description": "Specifies whether extension operations should be allowed on the virtual machine.
This may only be set to False when no extensions are present on the virtual machine."
+ "description": "Specifies whether extension operations should be allowed on the virtual machine. This may only be set to False when no extensions are present on the virtual machine."
},
"requireGuestProvisionSignal": {
"type": "boolean",
@@ -1526,23 +1526,23 @@
},
"storageUri": {
"type": "string",
- "description": "Uri of the storage account to use for placing the console output and screenshot.
If storageUri is not specified while enabling boot diagnostics, managed storage will be used."
+ "description": "Uri of the storage account to use for placing the console output and screenshot. If storageUri is not specified while enabling boot diagnostics, managed storage will be used."
}
},
- "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.
You can easily view the output of your console log.
Azure also enables you to see a screenshot of the VM from the hypervisor."
+ "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor."
},
"DiagnosticsProfile": {
"properties": {
"bootDiagnostics": {
"$ref": "#/definitions/BootDiagnostics",
- "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.
**NOTE**: If storageUri is being specified then ensure that the storage account is in the same region and subscription as the VM.
You can easily view the output of your console log.
Azure also enables you to see a screenshot of the VM from the hypervisor."
+ "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. **NOTE**: If storageUri is being specified then ensure that the storage account is in the same region and subscription as the VM. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor."
}
},
- "description": "Specifies the boot diagnostic settings state.
Minimum api-version: 2015-06-15."
+ "description": "Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15."
},
"priority": {
"type": "string",
- "description": "Specifies the priority for a standalone virtual machine or the virtual machines in the scale set.
'Low' enum will be deprecated in the future, please use 'Spot' as the enum to deploy Azure Spot VM/VMSS.",
+ "description": "Specifies the priority for a standalone virtual machine or the virtual machines in the scale set. 'Low' enum will be deprecated in the future, please use 'Spot' as the enum to deploy Azure Spot VM/VMSS.",
"enum": [
"Regular",
"Low",
@@ -1570,10 +1570,10 @@
"maxPrice": {
"type": "number",
"format": "double",
- "description": "Specifies the maximum price you are willing to pay for a Azure Spot VM/VMSS. This price is in US Dollars.
This price will be compared with the current Azure Spot price for the VM size. Also, the prices are compared at the time of create/update of Azure Spot VM/VMSS and the operation will only succeed if the maxPrice is greater than the current Azure Spot price.
The maxPrice will also be used for evicting a Azure Spot VM/VMSS if the current Azure Spot price goes beyond the maxPrice after creation of VM/VMSS.
Possible values are:
- Any decimal value greater than zero. Example: 0.01538
-1 – indicates default price to be up-to on-demand.
You can set the maxPrice to -1 to indicate that the Azure Spot VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you.
Minimum api-version: 2019-03-01."
+ "description": "Specifies the maximum price you are willing to pay for a Azure Spot VM/VMSS. This price is in US Dollars. This price will be compared with the current Azure Spot price for the VM size. Also, the prices are compared at the time of create/update of Azure Spot VM/VMSS and the operation will only succeed if the maxPrice is greater than the current Azure Spot price. The maxPrice will also be used for evicting a Azure Spot VM/VMSS if the current Azure Spot price goes beyond the maxPrice after creation of VM/VMSS. Possible values are: - Any decimal value greater than zero. Example: 0.01538 -1 – indicates default price to be up-to on-demand. You can set the maxPrice to -1 to indicate that the Azure Spot VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you. Minimum api-version: 2019-03-01."
}
},
- "description": "Specifies the billing related details of a Azure Spot VM or VMSS.
Minimum api-version: 2019-03-01."
+ "description": "Specifies the billing related details of a Azure Spot VM or VMSS. Minimum api-version: 2019-03-01."
},
"DiskInstanceView": {
"properties": {
@@ -1589,7 +1589,7 @@
"x-ms-identifiers": [
"diskEncryptionKey/sourceVault/id"
],
- "description": "Specifies the encryption settings for the OS Disk.
Minimum api-version: 2015-06-15"
+ "description": "Specifies the encryption settings for the OS Disk. Minimum api-version: 2015-06-15"
},
"statuses": {
"type": "array",
@@ -1607,17 +1607,17 @@
"consoleScreenshotBlobUri": {
"readOnly": true,
"type": "string",
- "description": "The console screenshot blob URI.
NOTE: This will **not** be set if boot diagnostics is currently enabled with managed storage."
+ "description": "The console screenshot blob URI. NOTE: This will **not** be set if boot diagnostics is currently enabled with managed storage."
},
"serialConsoleLogBlobUri": {
"readOnly": true,
"type": "string",
- "description": "The serial console log blob Uri.
NOTE: This will **not** be set if boot diagnostics is currently enabled with managed storage."
+ "description": "The serial console log blob Uri. NOTE: This will **not** be set if boot diagnostics is currently enabled with managed storage."
},
"status": {
"readOnly": true,
"$ref": "#/definitions/InstanceViewStatus",
- "description": "The boot diagnostics status information for the VM.
NOTE: It will be set only if there are errors encountered in enabling boot diagnostics."
+ "description": "The boot diagnostics status information for the VM. NOTE: It will be set only if there are errors encountered in enabling boot diagnostics."
}
},
"description": "The instance view of a virtual machine boot diagnostics."
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/availabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/availabilitySet.json
new file mode 100644
index 000000000000..070785a6a93a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/availabilitySet.json
@@ -0,0 +1,514 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}": {
+ "put": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_CreateOrUpdate",
+ "description": "Create or update an availability set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "availabilitySetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the availability set."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySet"
+ },
+ "description": "Parameters supplied to the Create Availability Set operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an availability set.": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_Update",
+ "description": "Update an availability set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "availabilitySetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the availability set."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySetUpdate"
+ },
+ "description": "Parameters supplied to the Update Availability Set operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AvailabilitySet_Update_MaximumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Update_MaximumSet_Gen.json"
+ },
+ "AvailabilitySet_Update_MinimumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_Delete",
+ "description": "Delete an availability set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "availabilitySetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the availability set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AvailabilitySet_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Delete_MaximumSet_Gen.json"
+ },
+ "AvailabilitySet_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_Get",
+ "description": "Retrieves information about an availability set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "availabilitySetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the availability set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AvailabilitySet_Get_MaximumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Get_MaximumSet_Gen.json"
+ },
+ "AvailabilitySet_Get_MinimumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_Get_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets": {
+ "get": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_ListBySubscription",
+ "description": "Lists all availability sets in a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply to the operation. Allowed values are 'instanceView'."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySetListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List availability sets in a subscription.": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets": {
+ "get": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_List",
+ "description": "Lists all availability sets in a resource group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AvailabilitySetListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "AvailabilitySet_List_MaximumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_List_MaximumSet_Gen.json"
+ },
+ "AvailabilitySet_List_MinimumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes": {
+ "get": {
+ "tags": [
+ "AvailabilitySets"
+ ],
+ "operationId": "AvailabilitySets_ListAvailableSizes",
+ "description": "Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "availabilitySetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the availability set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./computeRPCommon.json#/definitions/VirtualMachineSizeListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "AvailabilitySet_ListAvailableSizes_MaximumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MaximumSet_Gen.json"
+ },
+ "AvailabilitySet_ListAvailableSizes_MinimumSet_Gen": {
+ "$ref": "./examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MinimumSet_Gen.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AvailabilitySetProperties": {
+ "properties": {
+ "platformUpdateDomainCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Update Domain count."
+ },
+ "platformFaultDomainCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Fault Domain count."
+ },
+ "virtualMachines": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "A list of references to all virtual machines in the availability set."
+ },
+ "proximityPlacementGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the proximity placement group that the availability set should be assigned to. Minimum api-version: 2018-04-01."
+ },
+ "statuses": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of a resource."
+ },
+ "AvailabilitySetSkuType": {
+ "type": "string",
+ "description": "Specifies the sku of an Availability Set. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'.",
+ "enum": [
+ "Classic",
+ "Aligned"
+ ],
+ "x-ms-enum": {
+ "name": "AvailabilitySetSkuTypes",
+ "modelAsString": true
+ }
+ },
+ "AvailabilitySet": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/AvailabilitySetProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview). For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates). Currently, a VM can only be added to an availability set at creation time. An existing VM cannot be added to an availability set."
+ },
+ "AvailabilitySetUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/AvailabilitySetProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "Sku of the availability set"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the availability set that the virtual machine should be assigned to. Only tags may be updated."
+ },
+ "AvailabilitySetListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AvailabilitySet"
+ },
+ "description": "The list of availability sets"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of AvailabilitySets. Call ListNext() with this URI to fetch the next page of AvailabilitySets."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Availability Set operation response."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/capacityReservation.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/capacityReservation.json
new file mode 100644
index 000000000000..a1476d7404c8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/capacityReservation.json
@@ -0,0 +1,990 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}": {
+ "put": {
+ "tags": [
+ "CapacityReservationGroups"
+ ],
+ "operationId": "CapacityReservationGroups_CreateOrUpdate",
+ "description": "The operation to create or update a capacity reservation group. When updating a capacity reservation group, only tags may be modified. Please refer to https://aka.ms/CapacityReservation for more details.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroup"
+ },
+ "description": "Parameters supplied to the Create capacity reservation Group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroup"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update a capacity reservation group.": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_CreateOrUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "CapacityReservationGroups"
+ ],
+ "operationId": "CapacityReservationGroups_Update",
+ "description": "The operation to update a capacity reservation group. When updating a capacity reservation group, only tags may be modified.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroupUpdate"
+ },
+ "description": "Parameters supplied to the Update capacity reservation Group operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CapacityReservationGroup_Update_MaximumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_Update_MaximumSet_Gen.json"
+ },
+ "CapacityReservationGroup_Update_MinimumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "CapacityReservationGroups"
+ ],
+ "operationId": "CapacityReservationGroups_Delete",
+ "description": "The operation to delete a capacity reservation group. This operation is allowed only if all the associated resources are disassociated from the reservation group and all capacity reservations under the reservation group have also been deleted. Please refer to https://aka.ms/CapacityReservation for more details.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CapacityReservationGroup_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_Delete_MaximumSet_Gen.json"
+ },
+ "CapacityReservationGroup_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CapacityReservationGroups"
+ ],
+ "operationId": "CapacityReservationGroups_Get",
+ "description": "The operation that retrieves information about a capacity reservation group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the list of instance views of the capacity reservations under the capacity reservation group which is a snapshot of the runtime properties of a capacity reservation that is managed by the platform and can change outside of control plane operations.",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "CapacityReservationGroupInstanceViewTypes",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a capacity reservation Group.": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups": {
+ "get": {
+ "tags": [
+ "CapacityReservationGroups"
+ ],
+ "operationId": "CapacityReservationGroups_ListByResourceGroup",
+ "description": "Lists all of the capacity reservation groups in the specified resource group. Use the nextLink property in the response to get the next page of capacity reservation groups.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. Based on the expand param(s) specified we return Virtual Machine or ScaleSet VM Instance or both resource Ids which are associated to capacity reservation group in the response.",
+ "enum": [
+ "virtualMachineScaleSetVMs/$ref",
+ "virtualMachines/$ref"
+ ],
+ "x-ms-enum": {
+ "name": "ExpandTypesForGetCapacityReservationGroups",
+ "modelAsString": true
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List capacity reservation groups in resource group.": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/capacityReservationGroups": {
+ "get": {
+ "tags": [
+ "CapacityReservationGroups"
+ ],
+ "operationId": "CapacityReservationGroups_ListBySubscription",
+ "description": "Lists all of the capacity reservation groups in the subscription. Use the nextLink property in the response to get the next page of capacity reservation groups.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. Based on the expand param(s) specified we return Virtual Machine or ScaleSet VM Instance or both resource Ids which are associated to capacity reservation group in the response.",
+ "enum": [
+ "virtualMachineScaleSetVMs/$ref",
+ "virtualMachines/$ref"
+ ],
+ "x-ms-enum": {
+ "name": "ExpandTypesForGetCapacityReservationGroups",
+ "modelAsString": true
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List capacity reservation groups in subscription.": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservationGroup_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations/{capacityReservationName}": {
+ "put": {
+ "tags": [
+ "CapacityReservations"
+ ],
+ "operationId": "CapacityReservations_CreateOrUpdate",
+ "description": "The operation to create or update a capacity reservation. Please note some properties can be set only during capacity reservation creation. Please refer to https://aka.ms/CapacityReservation for more details.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "capacityReservationName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CapacityReservation"
+ },
+ "description": "Parameters supplied to the Create capacity reservation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservation"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update a capacity reservation .": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "CapacityReservations"
+ ],
+ "operationId": "CapacityReservations_Update",
+ "description": "The operation to update a capacity reservation.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "capacityReservationName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationUpdate"
+ },
+ "description": "Parameters supplied to the Update capacity reservation operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservation"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "CapacityReservation_Update_MaximumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_Update_MaximumSet_Gen.json"
+ },
+ "CapacityReservation_Update_MinimumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "CapacityReservations"
+ ],
+ "operationId": "CapacityReservations_Delete",
+ "description": "The operation to delete a capacity reservation. This operation is allowed only when all the associated resources are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more details.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "capacityReservationName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "CapacityReservation_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_Delete_MaximumSet_Gen.json"
+ },
+ "CapacityReservation_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CapacityReservations"
+ ],
+ "operationId": "CapacityReservations_Get",
+ "description": "The operation that retrieves information about the capacity reservation.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "name": "capacityReservationName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' retrieves a snapshot of the runtime properties of the capacity reservation that is managed by the platform and can change outside of control plane operations.",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "CapacityReservationInstanceViewTypes",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a capacity reservation.": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/capacityReservations": {
+ "get": {
+ "tags": [
+ "CapacityReservation"
+ ],
+ "operationId": "CapacityReservations_ListByCapacityReservationGroup",
+ "description": "Lists all of the capacity reservations in the specified capacity reservation group. Use the nextLink property in the response to get the next page of capacity reservations.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "capacityReservationGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the capacity reservation group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapacityReservationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List capacity reservations in reservation group.": {
+ "$ref": "./examples/capacityReservationExamples/CapacityReservation_ListByReservationGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CapacityReservationGroupInstanceView": {
+ "type": "object",
+ "properties": {
+ "capacityReservations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CapacityReservationInstanceViewWithName"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true,
+ "description": "List of instance view of the capacity reservations under the capacity reservation group."
+ }
+ }
+ },
+ "CapacityReservationGroupProperties": {
+ "type": "object",
+ "properties": {
+ "capacityReservations": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ },
+ "readOnly": true,
+ "description": "A list of all capacity reservation resource ids that belong to capacity reservation group."
+ },
+ "virtualMachinesAssociated": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ },
+ "readOnly": true,
+ "description": "A list of references to all virtual machines associated to the capacity reservation group."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/CapacityReservationGroupInstanceView",
+ "readOnly": true,
+ "description": "The capacity reservation group instance view which has the list of instance views for all the capacity reservations that belong to the capacity reservation group."
+ }
+ },
+ "description": "capacity reservation group Properties."
+ },
+ "CapacityReservationGroup": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/CapacityReservationGroupProperties"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Availability Zones to use for this capacity reservation group. The zones can be assigned only during creation. If not provided, the group supports only regional resources in the region. If provided, enforces each capacity reservation in the group to be in one of the zones."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Specifies information about the capacity reservation group that the capacity reservations should be assigned to. Currently, a capacity reservation can only be added to a capacity reservation group at creation time. An existing capacity reservation cannot be added or moved to another capacity reservation group."
+ },
+ "CapacityReservationGroupUpdate": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/CapacityReservationGroupProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the capacity reservation group. Only tags can be updated."
+ },
+ "CapacityReservationGroupListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CapacityReservationGroup"
+ },
+ "description": "The list of capacity reservation groups"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of capacity reservation groups. Call ListNext() with this URI to fetch the next page of capacity reservation groups."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List capacity reservation group with resource group response."
+ },
+ "CapacityReservationInstanceView": {
+ "type": "object",
+ "properties": {
+ "utilizationInfo": {
+ "$ref": "#/definitions/CapacityReservationUtilization",
+ "description": "Unutilized capacity of the capacity reservation."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of a capacity reservation that provides as snapshot of the runtime properties of the capacity reservation that is managed by the platform and can change outside of control plane operations."
+ },
+ "CapacityReservationUtilization": {
+ "type": "object",
+ "properties": {
+ "currentCapacity": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The value provides the current capacity of the VM size which was reserved successfully and for which the customer is getting billed. Minimum api-version: 2022-08-01."
+ },
+ "virtualMachinesAllocated": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ },
+ "readOnly": true,
+ "description": "A list of all virtual machines resource ids allocated against the capacity reservation."
+ }
+ },
+ "description": "Represents the capacity reservation utilization in terms of resources allocated."
+ },
+ "CapacityReservationInstanceViewWithName": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the capacity reservation."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/CapacityReservationInstanceView"
+ }
+ ],
+ "description": "The instance view of a capacity reservation that includes the name of the capacity reservation. It is used for the response to the instance view of a capacity reservation group."
+ },
+ "CapacityReservationProperties": {
+ "type": "object",
+ "properties": {
+ "reservationId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "A unique id generated and assigned to the capacity reservation by the platform which does not change throughout the lifetime of the resource."
+ },
+ "platformFaultDomainCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the value of fault domain count that Capacity Reservation supports for requested VM size. **Note:** The fault domain count specified for a resource (like virtual machines scale set) must be less than or equal to this value if it deploys using capacity reservation. Minimum api-version: 2022-08-01."
+ },
+ "virtualMachinesAssociated": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ },
+ "readOnly": true,
+ "description": "A list of all virtual machine resource ids that are associated with the capacity reservation."
+ },
+ "provisioningTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The date time when the capacity reservation was last updated."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/CapacityReservationInstanceView",
+ "readOnly": true,
+ "description": "The Capacity reservation instance view."
+ },
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Specifies the time at which the Capacity Reservation resource was created. Minimum api-version: 2021-11-01."
+ }
+ },
+ "description": "Properties of the Capacity reservation."
+ },
+ "CapacityReservation": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/CapacityReservationProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "SKU of the resource for which capacity needs be reserved. The SKU name and capacity is required to be set. Currently VM Skus with the capability called 'CapacityReservationSupported' set to true are supported. Refer to List Microsoft.Compute SKUs in a region (https://docs.microsoft.com/rest/api/compute/resourceskus/list) for supported values."
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Availability Zone to use for this capacity reservation. The zone has to be single value and also should be part for the list of zones specified during the capacity reservation group creation. The zone can be assigned only during creation. If not provided, the reservation supports only non-zonal deployments. If provided, enforces VM/VMSS using this capacity reservation to be in same zone."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "required": [
+ "sku"
+ ],
+ "description": "Specifies information about the capacity reservation."
+ },
+ "CapacityReservationUpdate": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/CapacityReservationProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "SKU of the resource for which capacity needs be reserved. The SKU name and capacity is required to be set. Currently VM Skus with the capability called 'CapacityReservationSupported' set to true are supported. Refer to List Microsoft.Compute SKUs in a region (https://docs.microsoft.com/rest/api/compute/resourceskus/list) for supported values."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the capacity reservation. Only tags and sku.capacity can be updated."
+ },
+ "CapacityReservationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CapacityReservation"
+ },
+ "description": "The list of capacity reservations"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of capacity reservations. Call ListNext() with this URI to fetch the next page of capacity reservations."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The list capacity reservation operation response."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/computeRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/computeRPCommon.json
new file mode 100644
index 000000000000..88768a747630
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/computeRPCommon.json
@@ -0,0 +1,1918 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.Compute/operations": {
+ "get": {
+ "tags": [
+ "ComputeOperations"
+ ],
+ "operationId": "Operations_List",
+ "description": "Gets a list of compute operations.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ComputeOperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "Operations_List_MaximumSet_Gen": {
+ "$ref": "./examples/computeRPCommonExamples/Operations_List_MaximumSet_Gen.json"
+ },
+ "Operations_List_MinimumSet_Gen": {
+ "$ref": "./examples/computeRPCommonExamples/Operations_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages": {
+ "get": {
+ "tags": [
+ "Usage"
+ ],
+ "operationId": "Usage_List",
+ "description": "Gets, for the specified location, the current compute resource usage information as well as the limits for compute resources under the subscription.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location for which resource usage is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ListUsagesResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Usage_List_MaximumSet_Gen": {
+ "$ref": "./examples/computeRPCommonExamples/Usage_List_MaximumSet_Gen.json"
+ },
+ "Usage_List_MinimumSet_Gen": {
+ "$ref": "./examples/computeRPCommonExamples/Usage_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes": {
+ "get": {
+ "tags": [
+ "VirtualMachineSizes"
+ ],
+ "operationId": "VirtualMachineSizes_List",
+ "description": "This API is deprecated. Use [Resources Skus](https://docs.microsoft.com/rest/api/compute/resourceskus/list)",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location upon which virtual-machine-sizes is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineSizeListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "VirtualMachineSizes_List_MaximumSet_Gen": {
+ "$ref": "./examples/computeRPCommonExamples/VirtualMachineSizes_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineSizes_List_MinimumSet_Gen": {
+ "$ref": "./examples/computeRPCommonExamples/VirtualMachineSizes_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ComputeOperationListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ComputeOperationValue"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The list of compute operations"
+ }
+ },
+ "description": "The List Compute Operation operation response."
+ },
+ "ComputeOperationValue": {
+ "properties": {
+ "origin": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The origin of the compute operation."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the compute operation."
+ },
+ "display": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ComputeOperationValueDisplay"
+ }
+ },
+ "description": "Describes the properties of a Compute Operation value."
+ },
+ "ComputeOperationValueDisplay": {
+ "properties": {
+ "operation": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the compute operation."
+ },
+ "resource": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the resource the operation applies to."
+ },
+ "description": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The description of the operation."
+ },
+ "provider": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The resource provider for the operation."
+ }
+ },
+ "description": "Describes the properties of a Compute Operation Value Display."
+ },
+ "UsageName": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "The name of the resource."
+ },
+ "localizedValue": {
+ "type": "string",
+ "description": "The localized name of the resource."
+ }
+ },
+ "description": "The Usage Names."
+ },
+ "Usage": {
+ "properties": {
+ "unit": {
+ "type": "string",
+ "description": "An enum describing the unit of usage measurement.",
+ "enum": [
+ "Count"
+ ],
+ "x-ms-enum": {
+ "name": "UsageUnit",
+ "modelAsString": false
+ }
+ },
+ "currentValue": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The current usage of the resource."
+ },
+ "limit": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The maximum permitted usage of the resource."
+ },
+ "name": {
+ "$ref": "#/definitions/UsageName",
+ "description": "The name of the type of usage."
+ }
+ },
+ "required": [
+ "unit",
+ "currentValue",
+ "limit",
+ "name"
+ ],
+ "description": "Describes Compute Resource Usage."
+ },
+ "ListUsagesResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Usage"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of compute resource usages."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of compute resource usage information. Call ListNext() with this to fetch the next page of compute resource usage information."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Usages operation response."
+ },
+ "HyperVGenerationType": {
+ "type": "string",
+ "description": "Specifies the HyperVGeneration Type",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGenerationTypes",
+ "modelAsString": true
+ }
+ },
+ "InstanceViewStatus": {
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "The status code."
+ },
+ "level": {
+ "type": "string",
+ "description": "The level code.",
+ "enum": [
+ "Info",
+ "Warning",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "name": "StatusLevelTypes",
+ "modelAsString": false
+ }
+ },
+ "displayStatus": {
+ "type": "string",
+ "description": "The short localizable label for the status."
+ },
+ "message": {
+ "type": "string",
+ "description": "The detailed status message, including for alerts and error messages."
+ },
+ "time": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The time of the status."
+ }
+ },
+ "type": "object",
+ "description": "Instance view status."
+ },
+ "SubResourceWithColocationStatus": {
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "colocationStatus": {
+ "$ref": "#/definitions/InstanceViewStatus",
+ "description": "Describes colocation status of a resource in the Proximity Placement Group."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineSize": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the virtual machine size."
+ },
+ "numberOfCores": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of cores supported by the virtual machine size. For Constrained vCPU capable VM sizes, this number represents the total vCPUs of quota that the VM uses. For accurate vCPU count, please refer to https://docs.microsoft.com/azure/virtual-machines/constrained-vcpu or https://docs.microsoft.com/rest/api/compute/resourceskus/list"
+ },
+ "osDiskSizeInMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The OS disk size, in MB, allowed by the virtual machine size."
+ },
+ "resourceDiskSizeInMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The resource disk size, in MB, allowed by the virtual machine size."
+ },
+ "memoryInMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The amount of memory, in MB, supported by the virtual machine size."
+ },
+ "maxDataDiskCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of data disks that can be attached to the virtual machine size."
+ }
+ },
+ "description": "Describes the properties of a VM size."
+ },
+ "VirtualMachineSizeListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineSize"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The list of virtual machine sizes."
+ }
+ },
+ "description": "The List Virtual Machine operation response."
+ },
+ "Plan": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The plan ID."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The publisher ID."
+ },
+ "product": {
+ "type": "string",
+ "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element."
+ },
+ "promotionCode": {
+ "type": "string",
+ "description": "The promotion code."
+ }
+ },
+ "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**."
+ },
+ "HardwareProfile": {
+ "properties": {
+ "vmSize": {
+ "type": "string",
+ "description": "Specifies the size of the virtual machine. The enum data type is currently deprecated and will be removed by December 23rd 2023. The recommended way to get the list of available sizes is using these APIs: [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes), [List all available virtual machine sizes in a region]( https://docs.microsoft.com/rest/api/compute/resourceskus/list), [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/sizes). The available VM sizes depend on region and availability set.",
+ "enum": [
+ "Basic_A0",
+ "Basic_A1",
+ "Basic_A2",
+ "Basic_A3",
+ "Basic_A4",
+ "Standard_A0",
+ "Standard_A1",
+ "Standard_A2",
+ "Standard_A3",
+ "Standard_A4",
+ "Standard_A5",
+ "Standard_A6",
+ "Standard_A7",
+ "Standard_A8",
+ "Standard_A9",
+ "Standard_A10",
+ "Standard_A11",
+ "Standard_A1_v2",
+ "Standard_A2_v2",
+ "Standard_A4_v2",
+ "Standard_A8_v2",
+ "Standard_A2m_v2",
+ "Standard_A4m_v2",
+ "Standard_A8m_v2",
+ "Standard_B1s",
+ "Standard_B1ms",
+ "Standard_B2s",
+ "Standard_B2ms",
+ "Standard_B4ms",
+ "Standard_B8ms",
+ "Standard_D1",
+ "Standard_D2",
+ "Standard_D3",
+ "Standard_D4",
+ "Standard_D11",
+ "Standard_D12",
+ "Standard_D13",
+ "Standard_D14",
+ "Standard_D1_v2",
+ "Standard_D2_v2",
+ "Standard_D3_v2",
+ "Standard_D4_v2",
+ "Standard_D5_v2",
+ "Standard_D2_v3",
+ "Standard_D4_v3",
+ "Standard_D8_v3",
+ "Standard_D16_v3",
+ "Standard_D32_v3",
+ "Standard_D64_v3",
+ "Standard_D2s_v3",
+ "Standard_D4s_v3",
+ "Standard_D8s_v3",
+ "Standard_D16s_v3",
+ "Standard_D32s_v3",
+ "Standard_D64s_v3",
+ "Standard_D11_v2",
+ "Standard_D12_v2",
+ "Standard_D13_v2",
+ "Standard_D14_v2",
+ "Standard_D15_v2",
+ "Standard_DS1",
+ "Standard_DS2",
+ "Standard_DS3",
+ "Standard_DS4",
+ "Standard_DS11",
+ "Standard_DS12",
+ "Standard_DS13",
+ "Standard_DS14",
+ "Standard_DS1_v2",
+ "Standard_DS2_v2",
+ "Standard_DS3_v2",
+ "Standard_DS4_v2",
+ "Standard_DS5_v2",
+ "Standard_DS11_v2",
+ "Standard_DS12_v2",
+ "Standard_DS13_v2",
+ "Standard_DS14_v2",
+ "Standard_DS15_v2",
+ "Standard_DS13-4_v2",
+ "Standard_DS13-2_v2",
+ "Standard_DS14-8_v2",
+ "Standard_DS14-4_v2",
+ "Standard_E2_v3",
+ "Standard_E4_v3",
+ "Standard_E8_v3",
+ "Standard_E16_v3",
+ "Standard_E32_v3",
+ "Standard_E64_v3",
+ "Standard_E2s_v3",
+ "Standard_E4s_v3",
+ "Standard_E8s_v3",
+ "Standard_E16s_v3",
+ "Standard_E32s_v3",
+ "Standard_E64s_v3",
+ "Standard_E32-16_v3",
+ "Standard_E32-8s_v3",
+ "Standard_E64-32s_v3",
+ "Standard_E64-16s_v3",
+ "Standard_F1",
+ "Standard_F2",
+ "Standard_F4",
+ "Standard_F8",
+ "Standard_F16",
+ "Standard_F1s",
+ "Standard_F2s",
+ "Standard_F4s",
+ "Standard_F8s",
+ "Standard_F16s",
+ "Standard_F2s_v2",
+ "Standard_F4s_v2",
+ "Standard_F8s_v2",
+ "Standard_F16s_v2",
+ "Standard_F32s_v2",
+ "Standard_F64s_v2",
+ "Standard_F72s_v2",
+ "Standard_G1",
+ "Standard_G2",
+ "Standard_G3",
+ "Standard_G4",
+ "Standard_G5",
+ "Standard_GS1",
+ "Standard_GS2",
+ "Standard_GS3",
+ "Standard_GS4",
+ "Standard_GS5",
+ "Standard_GS4-8",
+ "Standard_GS4-4",
+ "Standard_GS5-16",
+ "Standard_GS5-8",
+ "Standard_H8",
+ "Standard_H16",
+ "Standard_H8m",
+ "Standard_H16m",
+ "Standard_H16r",
+ "Standard_H16mr",
+ "Standard_L4s",
+ "Standard_L8s",
+ "Standard_L16s",
+ "Standard_L32s",
+ "Standard_M64s",
+ "Standard_M64ms",
+ "Standard_M128s",
+ "Standard_M128ms",
+ "Standard_M64-32ms",
+ "Standard_M64-16ms",
+ "Standard_M128-64ms",
+ "Standard_M128-32ms",
+ "Standard_NC6",
+ "Standard_NC12",
+ "Standard_NC24",
+ "Standard_NC24r",
+ "Standard_NC6s_v2",
+ "Standard_NC12s_v2",
+ "Standard_NC24s_v2",
+ "Standard_NC24rs_v2",
+ "Standard_NC6s_v3",
+ "Standard_NC12s_v3",
+ "Standard_NC24s_v3",
+ "Standard_NC24rs_v3",
+ "Standard_ND6s",
+ "Standard_ND12s",
+ "Standard_ND24s",
+ "Standard_ND24rs",
+ "Standard_NV6",
+ "Standard_NV12",
+ "Standard_NV24"
+ ],
+ "x-ms-enum": {
+ "name": "VirtualMachineSizeTypes",
+ "modelAsString": true
+ }
+ },
+ "vmSizeProperties": {
+ "$ref": "#/definitions/VMSizeProperties",
+ "description": "Specifies the properties for customizing the size of the virtual machine. Minimum api-version: 2021-07-01. This feature is still in preview mode and is not supported for VirtualMachineScaleSet. Please follow the instructions in [VM Customization](https://aka.ms/vmcustomization) for more details."
+ }
+ },
+ "description": "Specifies the hardware settings for the virtual machine."
+ },
+ "VMSizeProperties": {
+ "type": "object",
+ "properties": {
+ "vCPUsAvailable": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the number of vCPUs available for the VM. When this property is not specified in the request body the default behavior is to set it to the value of vCPUs available for that VM size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list)."
+ },
+ "vCPUsPerCore": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the vCPU to physical core ratio. When this property is not specified in the request body the default behavior is set to the value of vCPUsPerCore for the VM Size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list). **Setting this property to 1 also means that hyper-threading is disabled.**"
+ }
+ },
+ "description": "Specifies VM Size Property settings on the virtual machine."
+ },
+ "ImageReference": {
+ "properties": {
+ "publisher": {
+ "type": "string",
+ "description": "The image publisher."
+ },
+ "offer": {
+ "type": "string",
+ "description": "Specifies the offer of the platform image or marketplace image used to create the virtual machine."
+ },
+ "sku": {
+ "type": "string",
+ "description": "The image SKU."
+ },
+ "version": {
+ "type": "string",
+ "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available. Please do not use field 'version' for gallery image deployment, gallery image should always use 'id' field for deployment, to use 'latest' version of gallery image, just set '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}' in the 'id' field without version input."
+ },
+ "exactVersion": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Specifies in decimal numbers, the version of platform image or marketplace image used to create the virtual machine. This readonly field differs from 'version', only if the value specified in 'version' field is 'latest'."
+ },
+ "sharedGalleryImageId": {
+ "type": "string",
+ "description": "Specified the shared gallery image unique id for vm deployment. This can be fetched from shared gallery image GET call."
+ },
+ "communityGalleryImageId": {
+ "type": "string",
+ "description": "Specified the community gallery image unique id for vm deployment. This can be fetched from community gallery image GET call."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set."
+ },
+ "DiskControllerType": {
+ "type": "string",
+ "enum": [
+ "SCSI",
+ "NVMe"
+ ],
+ "x-ms-enum": {
+ "name": "DiskControllerTypes",
+ "modelAsString": true
+ },
+ "description": "Specifies the disk controller type configured for the VM and VirtualMachineScaleSet. This property is only supported for virtual machines whose operating system disk and VM sku supports Generation 2 (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please check the HyperVGenerations capability returned as part of VM sku capabilities in the response of Microsoft.Compute SKUs api for the region contains V2 (https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more information about Disk Controller Types supported please refer to https://aka.ms/azure-diskcontrollertypes."
+ },
+ "KeyVaultSecretReference": {
+ "properties": {
+ "secretUrl": {
+ "type": "string",
+ "description": "The URL referencing a secret in a Key Vault."
+ },
+ "sourceVault": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The relative URL of the Key Vault containing the secret."
+ }
+ },
+ "required": [
+ "secretUrl",
+ "sourceVault"
+ ],
+ "description": "Describes a reference to Key Vault Secret"
+ },
+ "DiskEncryptionSetParameters": {
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "description": "Describes the parameter of customer managed disk encryption set resource id that can be specified for disk. **Note:** The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details.",
+ "x-ms-azure-resource": true
+ },
+ "KeyVaultKeyReference": {
+ "properties": {
+ "keyUrl": {
+ "type": "string",
+ "description": "The URL referencing a key encryption key in Key Vault."
+ },
+ "sourceVault": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The relative URL of the Key Vault containing the key."
+ }
+ },
+ "required": [
+ "keyUrl",
+ "sourceVault"
+ ],
+ "description": "Describes a reference to Key Vault Key"
+ },
+ "DiskEncryptionSettings": {
+ "properties": {
+ "diskEncryptionKey": {
+ "$ref": "#/definitions/KeyVaultSecretReference",
+ "description": "Specifies the location of the disk encryption key, which is a Key Vault Secret."
+ },
+ "keyEncryptionKey": {
+ "$ref": "#/definitions/KeyVaultKeyReference",
+ "description": "Specifies the location of the key encryption key in Key Vault."
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "Specifies whether disk encryption should be enabled on the virtual machine."
+ }
+ },
+ "description": "Describes a Encryption Settings for a Disk"
+ },
+ "VMDiskSecurityProfile": {
+ "type": "object",
+ "properties": {
+ "securityEncryptionType": {
+ "type": "string",
+ "description": "Specifies the EncryptionType of the managed disk. It is set to DiskWithVMGuestState for encryption of the managed disk along with VMGuestState blob, and VMGuestStateOnly for encryption of just the VMGuestState blob. **Note:** It can be set for only Confidential VMs.",
+ "enum": [
+ "VMGuestStateOnly",
+ "DiskWithVMGuestState"
+ ],
+ "x-ms-enum": {
+ "name": "securityEncryptionTypes",
+ "modelAsString": true
+ }
+ },
+ "diskEncryptionSet": {
+ "$ref": "#/definitions/DiskEncryptionSetParameters",
+ "description": "Specifies the customer managed disk encryption set resource id for the managed disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and VMGuest blob."
+ }
+ },
+ "description": "Specifies the security profile settings for the managed disk. **Note:** It can only be set for Confidential VMs."
+ },
+ "VirtualHardDisk": {
+ "properties": {
+ "uri": {
+ "type": "string",
+ "description": "Specifies the virtual hard disk's uri."
+ }
+ },
+ "description": "Describes the uri of a disk."
+ },
+ "Caching": {
+ "type": "string",
+ "description": "Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The default values are: **None for Standard storage. ReadOnly for Premium storage**",
+ "enum": [
+ "None",
+ "ReadOnly",
+ "ReadWrite"
+ ],
+ "x-ms-enum": {
+ "name": "CachingTypes",
+ "modelAsString": false
+ }
+ },
+ "CreateOption": {
+ "type": "string",
+ "description": "Specifies how the virtual machine should be created. Possible values are: **Attach.** This value is used when you are using a specialized disk to create the virtual machine. **FromImage.** This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.",
+ "enum": [
+ "FromImage",
+ "Empty",
+ "Attach"
+ ],
+ "x-ms-enum": {
+ "name": "DiskCreateOptionTypes",
+ "modelAsString": true
+ }
+ },
+ "DetachOption": {
+ "type": "string",
+ "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values are: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview** mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'.",
+ "enum": [
+ "ForceDetach"
+ ],
+ "x-ms-enum": {
+ "name": "DiskDetachOptionTypes",
+ "modelAsString": true
+ }
+ },
+ "DeleteOption": {
+ "type": "string",
+ "description": "Specifies the behavior of the managed disk when the VM gets deleted, for example whether the managed disk is deleted or detached. Supported values are: **Delete.** If this value is used, the managed disk is deleted when VM gets deleted. **Detach.** If this value is used, the managed disk is retained after VM gets deleted. Minimum api-version: 2021-03-01.",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DiskDeleteOptionTypes",
+ "modelAsString": true
+ }
+ },
+ "StorageAccountType": {
+ "type": "string",
+ "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD zone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant storage. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/linux/disks-types",
+ "enum": [
+ "Standard_LRS",
+ "Premium_LRS",
+ "StandardSSD_LRS",
+ "UltraSSD_LRS",
+ "Premium_ZRS",
+ "StandardSSD_ZRS",
+ "PremiumV2_LRS"
+ ],
+ "x-ms-enum": {
+ "name": "StorageAccountTypes",
+ "modelAsString": true
+ }
+ },
+ "DiffDiskOption": {
+ "type": "string",
+ "description": "Specifies the ephemeral disk option for operating system disk.",
+ "enum": [
+ "Local"
+ ],
+ "x-ms-enum": {
+ "name": "DiffDiskOptions",
+ "modelAsString": true
+ }
+ },
+ "DiffDiskPlacement": {
+ "type": "string",
+ "description": "Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk or resource disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
+ "enum": [
+ "CacheDisk",
+ "ResourceDisk"
+ ],
+ "x-ms-enum": {
+ "name": "DiffDiskPlacement",
+ "modelAsString": true
+ }
+ },
+ "DiffDiskSettings": {
+ "properties": {
+ "option": {
+ "$ref": "#/definitions/DiffDiskOption",
+ "description": "Specifies the ephemeral disk settings for operating system disk."
+ },
+ "placement": {
+ "$ref": "#/definitions/DiffDiskPlacement",
+ "description": "Specifies the ephemeral disk placement for operating system disk. Possible values are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is: **CacheDisk** if one is configured for the VM size otherwise **ResourceDisk** is used. Refer to the VM size documentation for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM sizes exposes a cache disk."
+ }
+ },
+ "description": "Describes the parameters of ephemeral disk settings that can be specified for operating system disk. **Note:** The ephemeral disk settings can only be specified for managed disk."
+ },
+ "ManagedDiskParameters": {
+ "properties": {
+ "storageAccountType": {
+ "$ref": "#/definitions/StorageAccountType",
+ "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk."
+ },
+ "diskEncryptionSet": {
+ "$ref": "#/definitions/DiskEncryptionSetParameters",
+ "description": "Specifies the customer managed disk encryption set resource id for the managed disk."
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/VMDiskSecurityProfile",
+ "description": "Specifies the security profile for the managed disk."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "description": "The parameters of a managed disk."
+ },
+ "OSDisk": {
+ "properties": {
+ "osType": {
+ "type": "string",
+ "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD. Possible values are: **Windows,** **Linux.**",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "encryptionSettings": {
+ "$ref": "#/definitions/DiskEncryptionSettings",
+ "description": "Specifies the encryption settings for the OS Disk. Minimum api-version: 2015-06-15."
+ },
+ "name": {
+ "type": "string",
+ "description": "The disk name."
+ },
+ "vhd": {
+ "$ref": "#/definitions/VirtualHardDisk",
+ "description": "The virtual hard disk."
+ },
+ "image": {
+ "$ref": "#/definitions/VirtualHardDisk",
+ "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist."
+ },
+ "caching": {
+ "$ref": "#/definitions/Caching",
+ "description": "Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The defaulting behavior is: **None for Standard storage. ReadOnly for Premium storage.**"
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk."
+ },
+ "diffDiskSettings": {
+ "$ref": "#/definitions/DiffDiskSettings",
+ "description": "Specifies the ephemeral Disk Settings for the operating system disk used by the virtual machine."
+ },
+ "createOption": {
+ "$ref": "#/definitions/CreateOption",
+ "description": "Specifies how the virtual machine should be created. Possible values are: **Attach.** This value is used when you are using a specialized disk to create the virtual machine. **FromImage.** This value is used when you are using an image to create the virtual machine. If you are using a platform image, you should also use the imageReference element described above. If you are using a marketplace image, you should also use the plan element previously described."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023."
+ },
+ "managedDisk": {
+ "description": "The managed disk parameters.",
+ "$ref": "#/definitions/ManagedDiskParameters"
+ },
+ "deleteOption": {
+ "$ref": "#/definitions/DeleteOption",
+ "description": "Specifies whether OS Disk should be deleted or detached upon VM deletion. Possible values are: **Delete.** If this value is used, the OS disk is deleted when VM is deleted. **Detach.** If this value is used, the os disk is retained after VM is deleted. The default value is set to **Detach**. For an ephemeral OS Disk, the default value is set to **Delete**. The user cannot change the delete option for an ephemeral OS Disk."
+ }
+ },
+ "required": [
+ "createOption"
+ ],
+ "description": "Specifies information about the operating system disk used by the virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "DataDisk": {
+ "properties": {
+ "lun": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM."
+ },
+ "name": {
+ "type": "string",
+ "description": "The disk name."
+ },
+ "vhd": {
+ "$ref": "#/definitions/VirtualHardDisk",
+ "description": "The virtual hard disk."
+ },
+ "image": {
+ "$ref": "#/definitions/VirtualHardDisk",
+ "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist."
+ },
+ "caching": {
+ "$ref": "#/definitions/Caching",
+ "description": "Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The defaulting behavior is: **None for Standard storage. ReadOnly for Premium storage.**"
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk."
+ },
+ "createOption": {
+ "$ref": "#/definitions/CreateOption",
+ "description": "Specifies how the virtual machine should be created. Possible values are: **Attach.** This value is used when you are using a specialized disk to create the virtual machine. **FromImage.** This value is used when you are using an image to create the virtual machine. If you are using a platform image, you should also use the imageReference element described above. If you are using a marketplace image, you should also use the plan element previously described."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023."
+ },
+ "managedDisk": {
+ "description": "The managed disk parameters.",
+ "$ref": "#/definitions/ManagedDiskParameters"
+ },
+ "toBeDetached": {
+ "type": "boolean",
+ "description": "Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset"
+ },
+ "diskIOPSReadWrite": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int64",
+ "description": "Specifies the Read-Write IOPS for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set."
+ },
+ "diskMBpsReadWrite": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int64",
+ "description": "Specifies the bandwidth in MB per second for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set."
+ },
+ "detachOption": {
+ "$ref": "#/definitions/DetachOption",
+ "description": "Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview** mode and is not supported for VirtualMachineScaleSet. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'."
+ },
+ "deleteOption": {
+ "$ref": "#/definitions/DeleteOption",
+ "description": "Specifies whether data disk should be deleted or detached upon VM deletion. Possible values are: **Delete.** If this value is used, the data disk is deleted when VM is deleted. **Detach.** If this value is used, the data disk is retained after VM is deleted. The default value is set to **Detach**."
+ }
+ },
+ "required": [
+ "lun",
+ "createOption"
+ ],
+ "description": "Describes a data disk."
+ },
+ "CapacityReservationProfile": {
+ "type": "object",
+ "properties": {
+ "capacityReservationGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies the capacity reservation group resource id that should be used for allocating the virtual machine or scaleset vm instances provided enough capacity has been reserved. Please refer to https://aka.ms/CapacityReservation for more details."
+ }
+ },
+ "description": "The parameters of a capacity reservation Profile."
+ },
+ "StorageProfile": {
+ "properties": {
+ "imageReference": {
+ "$ref": "#/definitions/ImageReference",
+ "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations."
+ },
+ "osDisk": {
+ "$ref": "#/definitions/OSDisk",
+ "description": "Specifies information about the operating system disk used by the virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DataDisk"
+ },
+ "x-ms-identifiers": [
+ "lun"
+ ],
+ "description": "Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "diskControllerType": {
+ "$ref": "#/definitions/DiskControllerType",
+ "description": "Specifies the disk controller type configured for the VM. **Note:** This property will be set to the default disk controller type if not specified provided virtual machine is being created with 'hyperVGeneration' set to V2 based on the capabilities of the operating system disk and VM size from the the specified minimum api version. You need to deallocate the VM before updating its disk controller type unless you are updating the VM size in the VM configuration which implicitly deallocates and reallocates the VM. Minimum api-version: 2022-08-01."
+ }
+ },
+ "description": "Specifies the storage settings for the virtual machine disks."
+ },
+ "UefiSettings": {
+ "properties": {
+ "secureBootEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether secure boot should be enabled on the virtual machine. Minimum api-version: 2020-12-01."
+ },
+ "vTpmEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether vTPM should be enabled on the virtual machine. Minimum api-version: 2020-12-01."
+ }
+ },
+ "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Minimum api-version: 2020-12-01."
+ },
+ "SecurityProfile": {
+ "properties": {
+ "uefiSettings": {
+ "$ref": "#/definitions/UefiSettings",
+ "description": "Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Minimum api-version: 2020-12-01."
+ },
+ "encryptionAtHost": {
+ "type": "boolean",
+ "description": "This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself. The default behavior is: The Encryption at host will be disabled unless this property is set to true for the resource."
+ },
+ "securityType": {
+ "type": "string",
+ "description": "Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. The default behavior is: UefiSettings will not be enabled unless this property is set.",
+ "enum": [
+ "TrustedLaunch",
+ "ConfidentialVM"
+ ],
+ "x-ms-enum": {
+ "name": "SecurityTypes",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Specifies the Security profile settings for the virtual machine or virtual machine scale set."
+ },
+ "VMGalleryApplication": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "string",
+ "description": "Optional, Specifies a passthrough value for more generic context."
+ },
+ "order": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Optional, Specifies the order in which the packages have to be installed"
+ },
+ "packageReferenceId": {
+ "type": "string",
+ "description": "Specifies the GalleryApplicationVersion resource id on the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version}"
+ },
+ "configurationReference": {
+ "type": "string",
+ "description": "Optional, Specifies the uri to an azure blob that will replace the default configuration for the package if provided"
+ },
+ "treatFailureAsDeploymentFailure": {
+ "type": "boolean",
+ "description": "Optional, If true, any failure for any operation in the VmApplication will fail the deployment"
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "If set to true, when a new Gallery Application version is available in PIR/SIG, it will be automatically updated for the VM/VMSS"
+ }
+ },
+ "required": [
+ "packageReferenceId"
+ ],
+ "description": "Specifies the required information to reference a compute gallery application version"
+ },
+ "ApplicationProfile": {
+ "type": "object",
+ "properties": {
+ "galleryApplications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VMGalleryApplication"
+ },
+ "x-ms-identifiers": [
+ "packageReferenceId"
+ ],
+ "description": "Specifies the gallery applications that should be made available to the VM/VMSS"
+ }
+ },
+ "description": "Contains the list of gallery applications that should be made available to the VM/VMSS"
+ },
+ "AdditionalCapabilities": {
+ "properties": {
+ "ultraSSDEnabled": {
+ "type": "boolean",
+ "description": "The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled."
+ },
+ "hibernationEnabled": {
+ "type": "boolean",
+ "description": "The flag that enables or disables hibernation capability on the VM."
+ }
+ },
+ "description": "Enables or disables a capability on the virtual machine or virtual machine scale set."
+ },
+ "AdditionalUnattendContent": {
+ "properties": {
+ "passName": {
+ "type": "string",
+ "description": "The pass name. Currently, the only allowable value is OobeSystem.",
+ "enum": [
+ "OobeSystem"
+ ],
+ "x-ms-enum": {
+ "name": "PassNames",
+ "modelAsString": false
+ }
+ },
+ "componentName": {
+ "type": "string",
+ "description": "The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.",
+ "enum": [
+ "Microsoft-Windows-Shell-Setup"
+ ],
+ "x-ms-enum": {
+ "name": "ComponentNames",
+ "modelAsString": false
+ }
+ },
+ "settingName": {
+ "type": "string",
+ "description": "Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.",
+ "enum": [
+ "AutoLogon",
+ "FirstLogonCommands"
+ ],
+ "x-ms-enum": {
+ "name": "SettingNames",
+ "modelAsString": false
+ }
+ },
+ "content": {
+ "type": "string",
+ "description": "Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted."
+ }
+ },
+ "description": "Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied."
+ },
+ "WinRMListener": {
+ "properties": {
+ "protocol": {
+ "type": "string",
+ "description": "Specifies the protocol of WinRM listener. Possible values are: **http,** **https.**",
+ "enum": [
+ "Http",
+ "Https"
+ ],
+ "x-ms-enum": {
+ "name": "ProtocolTypes",
+ "modelAsString": false
+ }
+ },
+ "certificateUrl": {
+ "type": "string",
+ "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be the Base64 encoding of the following JSON Object which is encoded in UTF-8:
{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}
To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
+ }
+ },
+ "description": "Describes Protocol and thumbprint of Windows Remote Management listener"
+ },
+ "WinRMConfiguration": {
+ "properties": {
+ "listeners": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WinRMListener"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of Windows Remote Management listeners"
+ }
+ },
+ "description": "Describes Windows Remote Management configuration of the VM"
+ },
+ "WindowsConfiguration": {
+ "properties": {
+ "provisionVMAgent": {
+ "type": "boolean",
+ "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, it is set to true by default. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later."
+ },
+ "enableAutomaticUpdates": {
+ "type": "boolean",
+ "description": "Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true. For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning."
+ },
+ "timeZone": {
+ "type": "string",
+ "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\". Possible values can be [TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) value from time zones returned by [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones)."
+ },
+ "additionalUnattendContent": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AdditionalUnattendContent"
+ },
+ "x-ms-identifiers": [],
+ "description": "Specifies additional base-64 encoded XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup."
+ },
+ "patchSettings": {
+ "$ref": "#/definitions/PatchSettings",
+ "description": "[Preview Feature] Specifies settings related to VM Guest Patching on Windows."
+ },
+ "winRM": {
+ "$ref": "#/definitions/WinRMConfiguration",
+ "description": "Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell."
+ },
+ "enableVMAgentPlatformUpdates": {
+ "type": "boolean",
+ "description": "Indicates whether VMAgent Platform Updates is enabled for the Windows virtual machine. Default value is false."
+ }
+ },
+ "description": "Specifies Windows operating system settings on the virtual machine."
+ },
+ "SshPublicKey": {
+ "properties": {
+ "path": {
+ "type": "string",
+ "description": "Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys"
+ },
+ "keyData": {
+ "type": "string",
+ "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
+ }
+ },
+ "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed."
+ },
+ "SshConfiguration": {
+ "properties": {
+ "publicKeys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKey"
+ },
+ "x-ms-identifiers": [
+ "path"
+ ],
+ "description": "The list of SSH public keys used to authenticate with linux based VMs."
+ }
+ },
+ "description": "SSH configuration for Linux based VMs running on Azure"
+ },
+ "LinuxConfiguration": {
+ "properties": {
+ "disablePasswordAuthentication": {
+ "type": "boolean",
+ "description": "Specifies whether password authentication should be disabled."
+ },
+ "ssh": {
+ "$ref": "#/definitions/SshConfiguration",
+ "description": "Specifies the ssh key configuration for a Linux OS."
+ },
+ "provisionVMAgent": {
+ "type": "boolean",
+ "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later."
+ },
+ "patchSettings": {
+ "$ref": "#/definitions/LinuxPatchSettings",
+ "description": "[Preview Feature] Specifies settings related to VM Guest Patching on Linux."
+ },
+ "enableVMAgentPlatformUpdates": {
+ "type": "boolean",
+ "description": "Indicates whether VMAgent Platform Updates is enabled for the Linux virtual machine. Default value is false."
+ }
+ },
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ },
+ "VaultCertificate": {
+ "properties": {
+ "certificateUrl": {
+ "type": "string",
+ "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:
{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}
To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
+ },
+ "certificateStore": {
+ "type": "string",
+ "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account. For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted."
+ }
+ },
+ "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM."
+ },
+ "VaultSecretGroup": {
+ "properties": {
+ "sourceVault": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The relative URL of the Key Vault containing all of the certificates in VaultCertificates."
+ },
+ "vaultCertificates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VaultCertificate"
+ },
+ "x-ms-identifiers": [
+ "certificateUrl"
+ ],
+ "description": "The list of key vault references in SourceVault which contain certificates."
+ }
+ },
+ "description": "Describes a set of certificates which are all in the same Key Vault."
+ },
+ "OSProfile": {
+ "properties": {
+ "computerName": {
+ "type": "string",
+ "description": "Specifies the host OS name of the virtual machine. This name cannot be updated after the VM is created. **Max-length (Windows):** 15 characters. **Max-length (Linux):** 64 characters. For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules)."
+ },
+ "adminUsername": {
+ "type": "string",
+ "description": "Specifies the name of the administrator account.
This property cannot be updated after the VM is created.
**Windows-only restriction:** Cannot end in \".\"
**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".
**Minimum-length (Linux):** 1 character
**Max-length (Linux):** 64 characters
**Max-length (Windows):** 20 characters."
+ },
+ "adminPassword": {
+ "type": "string",
+ "description": "Specifies the password of the administrator account.
**Minimum-length (Windows):** 8 characters
**Minimum-length (Linux):** 6 characters
**Max-length (Windows):** 123 characters
**Max-length (Linux):** 72 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"
For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)
For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "x-ms-secret": true
+ },
+ "customData": {
+ "type": "string",
+ "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. **Note: Do not pass any secrets or passwords in customData property.** This property cannot be updated after the VM is created. The property 'customData' is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/). For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)."
+ },
+ "windowsConfiguration": {
+ "$ref": "#/definitions/WindowsConfiguration",
+ "description": "Specifies Windows operating system settings on the virtual machine."
+ },
+ "linuxConfiguration": {
+ "$ref": "#/definitions/LinuxConfiguration",
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ },
+ "secrets": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VaultSecretGroup"
+ },
+ "x-ms-identifiers": [
+ "sourceVault/id"
+ ],
+ "description": "Specifies set of certificates that should be installed onto the virtual machine. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
+ },
+ "allowExtensionOperations": {
+ "type": "boolean",
+ "description": "Specifies whether extension operations should be allowed on the virtual machine. This may only be set to False when no extensions are present on the virtual machine."
+ },
+ "requireGuestProvisionSignal": {
+ "type": "boolean",
+ "description": "Optional property which must either be set to True or omitted."
+ }
+ },
+ "description": "Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned."
+ },
+ "NetworkInterfaceReferenceProperties": {
+ "properties": {
+ "primary": {
+ "type": "boolean",
+ "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface."
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the network interface when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a network interface reference properties."
+ },
+ "NetworkInterfaceReference": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/NetworkInterfaceReferenceProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "description": "Describes a network interface reference.",
+ "x-ms-azure-resource": true
+ },
+ "PublicIPAddressSku": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Specify public IP sku name",
+ "enum": [
+ "Basic",
+ "Standard"
+ ],
+ "x-ms-enum": {
+ "name": "PublicIPAddressSkuName",
+ "modelAsString": true
+ }
+ },
+ "tier": {
+ "type": "string",
+ "description": "Specify public IP sku tier",
+ "enum": [
+ "Regional",
+ "Global"
+ ],
+ "x-ms-enum": {
+ "name": "PublicIPAddressSkuTier",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes the public IP Sku. It can only be set with OrchestrationMode as Flexible."
+ },
+ "NetworkProfile": {
+ "properties": {
+ "networkInterfaces": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInterfaceReference"
+ },
+ "description": "Specifies the list of resource Ids for the network interfaces associated with the virtual machine."
+ },
+ "networkApiVersion": {
+ "type": "string",
+ "description": "specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations",
+ "enum": [
+ "2020-11-01"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkApiVersion",
+ "modelAsString": true
+ }
+ },
+ "networkInterfaceConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineNetworkInterfaceConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "Specifies the networking configurations that will be used to create the virtual machine networking resources."
+ }
+ },
+ "description": "Specifies the network interfaces or the networking configuration of the virtual machine."
+ },
+ "BootDiagnostics": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether boot diagnostics should be enabled on the Virtual Machine."
+ },
+ "storageUri": {
+ "type": "string",
+ "description": "Uri of the storage account to use for placing the console output and screenshot. If storageUri is not specified while enabling boot diagnostics, managed storage will be used."
+ }
+ },
+ "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor."
+ },
+ "DiagnosticsProfile": {
+ "properties": {
+ "bootDiagnostics": {
+ "$ref": "#/definitions/BootDiagnostics",
+ "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. **NOTE**: If storageUri is being specified then ensure that the storage account is in the same region and subscription as the VM. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor."
+ }
+ },
+ "description": "Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15."
+ },
+ "priority": {
+ "type": "string",
+ "description": "Specifies the priority for a standalone virtual machine or the virtual machines in the scale set. 'Low' enum will be deprecated in the future, please use 'Spot' as the enum to deploy Azure Spot VM/VMSS.",
+ "enum": [
+ "Regular",
+ "Low",
+ "Spot"
+ ],
+ "x-ms-enum": {
+ "name": "VirtualMachinePriorityTypes",
+ "modelAsString": true
+ }
+ },
+ "evictionPolicy": {
+ "type": "string",
+ "description": "Specifies the eviction policy for the Azure Spot VM/VMSS",
+ "enum": [
+ "Deallocate",
+ "Delete"
+ ],
+ "x-ms-enum": {
+ "name": "VirtualMachineEvictionPolicyTypes",
+ "modelAsString": true
+ }
+ },
+ "BillingProfile": {
+ "properties": {
+ "maxPrice": {
+ "type": "number",
+ "format": "double",
+ "description": "Specifies the maximum price you are willing to pay for a Azure Spot VM/VMSS. This price is in US Dollars.
This price will be compared with the current Azure Spot price for the VM size. Also, the prices are compared at the time of create/update of Azure Spot VM/VMSS and the operation will only succeed if the maxPrice is greater than the current Azure Spot price.
The maxPrice will also be used for evicting a Azure Spot VM/VMSS if the current Azure Spot price goes beyond the maxPrice after creation of VM/VMSS.
Possible values are:
- Any decimal value greater than zero. Example: 0.01538
-1 – indicates default price to be up-to on-demand.
You can set the maxPrice to -1 to indicate that the Azure Spot VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you.
Minimum api-version: 2019-03-01."
+ }
+ },
+ "description": "Specifies the billing related details of a Azure Spot VM or VMSS. Minimum api-version: 2019-03-01."
+ },
+ "DiskInstanceView": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The disk name."
+ },
+ "encryptionSettings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiskEncryptionSettings"
+ },
+ "x-ms-identifiers": [
+ "diskEncryptionKey/sourceVault/id"
+ ],
+ "description": "Specifies the encryption settings for the OS Disk.
Minimum api-version: 2015-06-15"
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of the disk."
+ },
+ "BootDiagnosticsInstanceView": {
+ "properties": {
+ "consoleScreenshotBlobUri": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The console screenshot blob URI. **Note:** This will **not** be set if boot diagnostics is currently enabled with managed storage."
+ },
+ "serialConsoleLogBlobUri": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The serial console log blob Uri. **Note:** This will **not** be set if boot diagnostics is currently enabled with managed storage."
+ },
+ "status": {
+ "readOnly": true,
+ "$ref": "#/definitions/InstanceViewStatus",
+ "description": "The boot diagnostics status information for the VM. **Note:** It will be set only if there are errors encountered in enabling boot diagnostics."
+ }
+ },
+ "description": "The instance view of a virtual machine boot diagnostics."
+ },
+ "MaintenanceRedeployStatus": {
+ "properties": {
+ "isCustomerInitiatedMaintenanceAllowed": {
+ "type": "boolean",
+ "description": "True, if customer is allowed to perform Maintenance."
+ },
+ "preMaintenanceWindowStartTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Start Time for the Pre Maintenance Window."
+ },
+ "preMaintenanceWindowEndTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "End Time for the Pre Maintenance Window."
+ },
+ "maintenanceWindowStartTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Start Time for the Maintenance Window."
+ },
+ "maintenanceWindowEndTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "End Time for the Maintenance Window."
+ },
+ "lastOperationResultCode": {
+ "type": "string",
+ "description": "The Last Maintenance Operation Result Code.",
+ "enum": [
+ "None",
+ "RetryLater",
+ "MaintenanceAborted",
+ "MaintenanceCompleted"
+ ],
+ "x-ms-enum": {
+ "name": "MaintenanceOperationResultCodeTypes",
+ "modelAsString": false
+ }
+ },
+ "lastOperationMessage": {
+ "type": "string",
+ "description": "Message returned for the last Maintenance Operation."
+ }
+ },
+ "description": "Maintenance Operation Status."
+ },
+ "Sku": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The sku name."
+ },
+ "tier": {
+ "type": "string",
+ "description": "Specifies the tier of virtual machines in a scale set.
Possible Values:
**Standard**
**Basic**"
+ },
+ "capacity": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Specifies the number of virtual machines in the scale set."
+ }
+ },
+ "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name."
+ },
+ "ApiEntityReference": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..."
+ }
+ },
+ "description": "The API entity reference."
+ },
+ "RollbackStatusInfo": {
+ "properties": {
+ "successfullyRolledbackInstanceCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances which have been successfully rolled back."
+ },
+ "failedRolledbackInstanceCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances which failed to rollback."
+ },
+ "rollbackError": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "readOnly": true,
+ "description": "Error details if OS rollback failed."
+ }
+ },
+ "description": "Information about rollback on failed VM instances after a OS Upgrade operation."
+ },
+ "ScheduledEventsProfile": {
+ "type": "object",
+ "properties": {
+ "terminateNotificationProfile": {
+ "$ref": "#/definitions/TerminateNotificationProfile",
+ "description": "Specifies Terminate Scheduled Event related configurations."
+ },
+ "osImageNotificationProfile": {
+ "$ref": "#/definitions/OSImageNotificationProfile",
+ "description": "Specifies OS Image Scheduled Event related configurations."
+ }
+ }
+ },
+ "TerminateNotificationProfile": {
+ "type": "object",
+ "properties": {
+ "notBeforeTimeout": {
+ "type": "string",
+ "description": "Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)"
+ },
+ "enable": {
+ "type": "boolean",
+ "description": "Specifies whether the Terminate Scheduled event is enabled or disabled."
+ }
+ }
+ },
+ "OSImageNotificationProfile": {
+ "type": "object",
+ "properties": {
+ "notBeforeTimeout": {
+ "type": "string",
+ "description": "Length of time a Virtual Machine being reimaged or having its OS upgraded will have to potentially approve the OS Image Scheduled Event before the event is auto approved (timed out). The configuration is specified in ISO 8601 format, and the value must be 15 minutes (PT15M)"
+ },
+ "enable": {
+ "type": "boolean",
+ "description": "Specifies whether the OS Image Scheduled event is enabled or disabled."
+ }
+ }
+ },
+ "ProxyResource": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource Id"
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource name"
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ }
+ },
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will not have tags and a location",
+ "x-ms-azure-resource": true
+ },
+ "UpdateResource": {
+ "type": "object",
+ "description": "The Update Resource model definition.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ }
+ },
+ "PatchSettings": {
+ "properties": {
+ "patchMode": {
+ "type": "string",
+ "description": "Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.
Possible values are:
**Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false
**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.
**AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true ",
+ "enum": [
+ "Manual",
+ "AutomaticByOS",
+ "AutomaticByPlatform"
+ ],
+ "x-ms-enum": {
+ "name": "WindowsVMGuestPatchMode",
+ "modelAsString": true
+ }
+ },
+ "enableHotpatching": {
+ "type": "boolean",
+ "description": "Enables customers to patch their Azure VMs without requiring a reboot. For enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' must be set to 'AutomaticByPlatform'."
+ },
+ "assessmentMode": {
+ "type": "string",
+ "description": "Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.
Possible values are:
**ImageDefault** - You control the timing of patch assessments on a virtual machine.
**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. ",
+ "enum": [
+ "ImageDefault",
+ "AutomaticByPlatform"
+ ],
+ "x-ms-enum": {
+ "name": "WindowsPatchAssessmentMode",
+ "modelAsString": true
+ }
+ },
+ "automaticByPlatformSettings": {
+ "$ref": "#/definitions/WindowsVMGuestPatchAutomaticByPlatformSettings",
+ "description": "Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Windows."
+ }
+ },
+ "description": "Specifies settings related to VM Guest Patching on Windows."
+ },
+ "LinuxPatchSettings": {
+ "properties": {
+ "patchMode": {
+ "type": "string",
+ "description": "Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.
Possible values are:
**ImageDefault** - The virtual machine's default patching configuration is used.
**AutomaticByPlatform** - The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true",
+ "enum": [
+ "ImageDefault",
+ "AutomaticByPlatform"
+ ],
+ "x-ms-enum": {
+ "name": "LinuxVMGuestPatchMode",
+ "modelAsString": true
+ }
+ },
+ "assessmentMode": {
+ "type": "string",
+ "description": "Specifies the mode of VM Guest Patch Assessment for the IaaS virtual machine.
Possible values are:
**ImageDefault** - You control the timing of patch assessments on a virtual machine.
**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true.",
+ "enum": [
+ "ImageDefault",
+ "AutomaticByPlatform"
+ ],
+ "x-ms-enum": {
+ "name": "LinuxPatchAssessmentMode",
+ "modelAsString": true
+ }
+ },
+ "automaticByPlatformSettings": {
+ "$ref": "#/definitions/LinuxVMGuestPatchAutomaticByPlatformSettings",
+ "description": "Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Linux."
+ }
+ },
+ "description": "Specifies settings related to VM Guest Patching on Linux."
+ },
+ "WindowsVMGuestPatchAutomaticByPlatformSettings": {
+ "type": "object",
+ "properties": {
+ "rebootSetting": {
+ "type": "string",
+ "description": "Specifies the reboot setting for all AutomaticByPlatform patch installation operations.",
+ "enum": [
+ "Unknown",
+ "IfRequired",
+ "Never",
+ "Always"
+ ],
+ "x-ms-enum": {
+ "name": "WindowsVMGuestPatchAutomaticByPlatformRebootSetting",
+ "modelAsString": true
+ }
+ },
+ "bypassPlatformSafetyChecksOnUserSchedule": {
+ "type": "boolean",
+ "description": "Enables customer to schedule patching without accidental upgrades"
+ }
+ },
+ "description": "Specifies additional settings to be applied when patch mode AutomaticByPlatform is selected in Windows patch settings."
+ },
+ "LinuxVMGuestPatchAutomaticByPlatformSettings": {
+ "type": "object",
+ "properties": {
+ "rebootSetting": {
+ "type": "string",
+ "description": "Specifies the reboot setting for all AutomaticByPlatform patch installation operations.",
+ "enum": [
+ "Unknown",
+ "IfRequired",
+ "Never",
+ "Always"
+ ],
+ "x-ms-enum": {
+ "name": "LinuxVMGuestPatchAutomaticByPlatformRebootSetting",
+ "modelAsString": true
+ }
+ },
+ "bypassPlatformSafetyChecksOnUserSchedule": {
+ "type": "boolean",
+ "description": "Enables customer to schedule patching without accidental upgrades"
+ }
+ },
+ "description": "Specifies additional settings to be applied when patch mode AutomaticByPlatform is selected in Linux patch settings."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/dedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/dedicatedHost.json
new file mode 100644
index 000000000000..7f9831518cf2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/dedicatedHost.json
@@ -0,0 +1,1147 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}": {
+ "put": {
+ "tags": [
+ "DedicatedHostGroups"
+ ],
+ "operationId": "DedicatedHostGroups_CreateOrUpdate",
+ "description": "Create or update a dedicated host group. For details of Dedicated Host and Dedicated Host Groups please see [Dedicated Host Documentation] (https://go.microsoft.com/fwlink/?linkid=2082596)",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroup"
+ },
+ "description": "Parameters supplied to the Create Dedicated Host Group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroup"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update a dedicated host group.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate.json"
+ },
+ "Create or update a dedicated host group with Ultra SSD support.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate_WithUltraSSD.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "DedicatedHostGroups"
+ ],
+ "operationId": "DedicatedHostGroups_Update",
+ "description": "Update an dedicated host group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroupUpdate"
+ },
+ "description": "Parameters supplied to the Update Dedicated Host Group operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "DedicatedHostGroup_Update_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_Update_MaximumSet_Gen.json"
+ },
+ "DedicatedHostGroup_Update_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DedicatedHostGroups"
+ ],
+ "operationId": "DedicatedHostGroups_Delete",
+ "description": "Delete a dedicated host group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "DedicatedHostGroup_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MaximumSet_Gen.json"
+ },
+ "DedicatedHostGroup_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "DedicatedHostGroups"
+ ],
+ "operationId": "DedicatedHostGroups_Get",
+ "description": "Retrieves information about a dedicated host group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the list of instance views of the dedicated hosts under the dedicated host group. 'UserData' is not supported for dedicated host group.",
+ "enum": [
+ "instanceView",
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a dedicated host group.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_Get.json"
+ },
+ "Create an ultraSSDEnabled dedicated host group.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_Get_UltraSSDEnabledDedicatedHostGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups": {
+ "get": {
+ "tags": [
+ "DedicatedHostGroups"
+ ],
+ "operationId": "DedicatedHostGroups_ListByResourceGroup",
+ "description": "Lists all of the dedicated host groups in the specified resource group. Use the nextLink property in the response to get the next page of dedicated host groups.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "DedicatedHostGroup_ListByResourceGroup_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MaximumSet_Gen.json"
+ },
+ "DedicatedHostGroup_ListByResourceGroup_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups": {
+ "get": {
+ "tags": [
+ "DedicatedHostGroups"
+ ],
+ "operationId": "DedicatedHostGroups_ListBySubscription",
+ "description": "Lists all of the dedicated host groups in the subscription. Use the nextLink property in the response to get the next page of dedicated host groups.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "DedicatedHostGroup_ListBySubscription_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MaximumSet_Gen.json"
+ },
+ "DedicatedHostGroup_ListBySubscription_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}": {
+ "put": {
+ "tags": [
+ "DedicatedHosts"
+ ],
+ "operationId": "DedicatedHosts_CreateOrUpdate",
+ "description": "Create or update a dedicated host .",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "hostName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host ."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DedicatedHost"
+ },
+ "description": "Parameters supplied to the Create Dedicated Host."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHost"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHost"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update a dedicated host .": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "DedicatedHosts"
+ ],
+ "operationId": "DedicatedHosts_Update",
+ "description": "Update a dedicated host .",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "hostName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host ."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostUpdate"
+ },
+ "description": "Parameters supplied to the Update Dedicated Host operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHost"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "DedicatedHost_Update_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Update_MaximumSet_Gen.json"
+ },
+ "DedicatedHost_Update_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Update_MinimumSet_Gen.json"
+ },
+ "DedicatedHost_Update_Resize": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Update_Resize.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DedicatedHosts"
+ ],
+ "operationId": "DedicatedHosts_Delete",
+ "description": "Delete a dedicated host.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "hostName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "DedicatedHost_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Delete_MaximumSet_Gen.json"
+ },
+ "DedicatedHost_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "DedicatedHosts"
+ ],
+ "operationId": "DedicatedHosts_Get",
+ "description": "Retrieves information about a dedicated host.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "hostName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the list of instance views of the dedicated host. 'UserData' is not supported for dedicated host.",
+ "enum": [
+ "instanceView",
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHost"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a dedicated host.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts": {
+ "get": {
+ "tags": [
+ "DedicatedHost"
+ ],
+ "operationId": "DedicatedHosts_ListByHostGroup",
+ "description": "Lists all of the dedicated hosts in the specified dedicated host group. Use the nextLink property in the response to get the next page of dedicated hosts.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "DedicatedHost_ListByHostGroup_MaximumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MaximumSet_Gen.json"
+ },
+ "DedicatedHost_ListByHostGroup_MinimumSet_Gen": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}/restart": {
+ "post": {
+ "tags": [
+ "DedicatedHost"
+ ],
+ "operationId": "DedicatedHosts_Restart",
+ "description": "Restart the dedicated host. The operation will complete successfully once the dedicated host has restarted and is running. To determine the health of VMs deployed on the dedicated host after the restart check the Resource Health Center in the Azure Portal. Please refer to https://docs.microsoft.com/azure/service-health/resource-health-overview for more details.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "hostName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the dedicated host."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Restart Dedicated Host.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_Restart.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}/hostSizes": {
+ "get": {
+ "tags": [
+ "DedicatedHost"
+ ],
+ "operationId": "DedicatedHosts_ListAvailableSizes",
+ "description": "Lists all available dedicated host sizes to which the specified dedicated host can be resized. NOTE: The dedicated host sizes provided can be used to only scale up the existing dedicated host.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "hostGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._]+$",
+ "description": "The name of the dedicated host group."
+ },
+ {
+ "name": "hostName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[-\\w\\._]+$",
+ "description": "The name of the dedicated host."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DedicatedHostSizeListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "Get Available Dedicated Host Sizes.": {
+ "$ref": "./examples/dedicatedHostExamples/DedicatedHost_ListAvailableSizes.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DedicatedHostGroupInstanceView": {
+ "properties": {
+ "hosts": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DedicatedHostInstanceViewWithName"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "List of instance view of the dedicated hosts under the dedicated host group."
+ }
+ }
+ },
+ "DedicatedHostGroupProperties": {
+ "properties": {
+ "platformFaultDomainCount": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "description": "Number of fault domains that the host group can span."
+ },
+ "hosts": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ },
+ "readOnly": true,
+ "description": "A list of references to all dedicated hosts in the dedicated host group."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/DedicatedHostGroupInstanceView",
+ "readOnly": true,
+ "description": "The dedicated host group instance view, which has the list of instance view of the dedicated hosts under the dedicated host group."
+ },
+ "supportAutomaticPlacement": {
+ "type": "boolean",
+ "description": "Specifies whether virtual machines or virtual machine scale sets can be placed automatically on the dedicated host group. Automatic placement means resources are allocated on dedicated hosts, that are chosen by Azure, under the dedicated host group. The value is defaulted to 'false' when not provided. Minimum api-version: 2020-06-01."
+ },
+ "additionalCapabilities": {
+ "type": "object",
+ "properties": {
+ "ultraSSDEnabled": {
+ "type": "boolean",
+ "description": "The flag that enables or disables a capability to have UltraSSD Enabled Virtual Machines on Dedicated Hosts of the Dedicated Host Group. For the Virtual Machines to be UltraSSD Enabled, UltraSSDEnabled flag for the resource needs to be set true as well. The value is defaulted to 'false' when not provided. Please refer to https://docs.microsoft.com/en-us/azure/virtual-machines/disks-enable-ultra-ssd for more details on Ultra SSD feature. **Note:** The ultraSSDEnabled setting can only be enabled for Host Groups that are created as zonal. Minimum api-version: 2022-03-01."
+ }
+ },
+ "description": "Enables or disables a capability on the dedicated host group. Minimum api-version: 2022-03-01."
+ }
+ },
+ "required": [
+ "platformFaultDomainCount"
+ ],
+ "description": "Dedicated Host Group Properties."
+ },
+ "DedicatedHostGroup": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DedicatedHostGroupProperties"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Specifies information about the dedicated host group that the dedicated hosts should be assigned to. Currently, a dedicated host can only be added to a dedicated host group at creation time. An existing dedicated host cannot be added to another dedicated host group."
+ },
+ "DedicatedHostGroupUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DedicatedHostGroupProperties"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the dedicated host group that the dedicated host should be assigned to. Only tags may be updated."
+ },
+ "DedicatedHostGroupListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DedicatedHostGroup"
+ },
+ "description": "The list of dedicated host groups"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of Dedicated Host Groups. Call ListNext() with this URI to fetch the next page of Dedicated Host Groups."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Dedicated Host Group with resource group response."
+ },
+ "DedicatedHostLicenseType": {
+ "type": "string",
+ "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host. Possible values are: **None,** **Windows_Server_Hybrid,** **Windows_Server_Perpetual.** The default value is: **None.**",
+ "enum": [
+ "None",
+ "Windows_Server_Hybrid",
+ "Windows_Server_Perpetual"
+ ],
+ "x-ms-enum": {
+ "name": "DedicatedHostLicenseTypes",
+ "modelAsString": false
+ }
+ },
+ "DedicatedHostAllocatableVM": {
+ "properties": {
+ "vmSize": {
+ "type": "string",
+ "description": "VM size in terms of which the unutilized capacity is represented."
+ },
+ "count": {
+ "type": "number",
+ "format": "double",
+ "description": "Maximum number of VMs of size vmSize that can fit in the dedicated host's remaining capacity."
+ }
+ },
+ "description": "Represents the dedicated host unutilized capacity in terms of a specific VM size."
+ },
+ "DedicatedHostAvailableCapacity": {
+ "properties": {
+ "allocatableVMs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DedicatedHostAllocatableVM"
+ },
+ "x-ms-identifiers": [],
+ "description": "The unutilized capacity of the dedicated host represented in terms of each VM size that is allowed to be deployed to the dedicated host."
+ }
+ },
+ "description": "Dedicated host unutilized capacity."
+ },
+ "DedicatedHostInstanceView": {
+ "properties": {
+ "assetId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies the unique id of the dedicated physical machine on which the dedicated host resides."
+ },
+ "availableCapacity": {
+ "$ref": "#/definitions/DedicatedHostAvailableCapacity",
+ "description": "Unutilized capacity of the dedicated host."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of a dedicated host."
+ },
+ "DedicatedHostInstanceViewWithName": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the dedicated host."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/DedicatedHostInstanceView"
+ }
+ ],
+ "description": "The instance view of a dedicated host that includes the name of the dedicated host. It is used for the response to the instance view of a dedicated host group."
+ },
+ "DedicatedHostProperties": {
+ "properties": {
+ "platformFaultDomain": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "description": "Fault domain of the dedicated host within a dedicated host group."
+ },
+ "autoReplaceOnFailure": {
+ "type": "boolean",
+ "description": "Specifies whether the dedicated host should be replaced automatically in case of a failure. The value is defaulted to 'true' when not provided."
+ },
+ "hostId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "A unique id generated and assigned to the dedicated host by the platform. Does not change throughout the lifetime of the host."
+ },
+ "virtualMachines": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ },
+ "readOnly": true,
+ "description": "A list of references to all virtual machines in the Dedicated Host."
+ },
+ "licenseType": {
+ "$ref": "#/definitions/DedicatedHostLicenseType",
+ "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host. Possible values are: **None,** **Windows_Server_Hybrid,** **Windows_Server_Perpetual.** The default value is: **None.**"
+ },
+ "provisioningTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The date when the host was first provisioned."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/DedicatedHostInstanceView",
+ "readOnly": true,
+ "description": "The dedicated host instance view."
+ },
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Specifies the time at which the Dedicated Host resource was created. Minimum api-version: 2021-11-01."
+ }
+ },
+ "description": "Properties of the dedicated host."
+ },
+ "DedicatedHost": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DedicatedHostProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "SKU of the dedicated host for Hardware Generation and VM family. Only name is required to be set. List Microsoft.Compute SKUs for a list of possible values."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "required": [
+ "sku"
+ ],
+ "description": "Specifies information about the Dedicated host."
+ },
+ "DedicatedHostUpdate": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DedicatedHostProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "[List all available dedicated host sizes for resizing] (https://docs.microsoft.com/rest/api/compute/dedicated-hosts/listavailablesizes). Resizing can be only used to scale up DedicatedHost. Only name is required to be set. "
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the dedicated host. Only tags, autoReplaceOnFailure and licenseType may be updated."
+ },
+ "DedicatedHostListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DedicatedHost"
+ },
+ "description": "The list of dedicated hosts"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of dedicated hosts. Call ListNext() with this URI to fetch the next page of dedicated hosts."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The list dedicated host operation response."
+ },
+ "DedicatedHostSizeListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The list of dedicated host sizes."
+ }
+ },
+ "description": "The List Dedicated Host sizes operation response."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Create.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Create.json
new file mode 100644
index 000000000000..c3f6302bfafa
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Create.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "availabilitySetName": "myAvailabilitySet",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "platformFaultDomainCount": 2,
+ "platformUpdateDomainCount": 20
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "name": "Classic"
+ },
+ "name": "myAvailabilitySet",
+ "properties": {
+ "platformFaultDomainCount": 2,
+ "platformUpdateDomainCount": 20
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/availabilitySets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..72affea3582c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Delete_MaximumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..f77088894179
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Delete_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Get_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..da4acb7f858c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Get_MaximumSet_Gen.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "properties": {
+ "platformFaultDomainCount": 2,
+ "platformUpdateDomainCount": 20,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaa",
+ "capacity": 29
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet",
+ "name": "myAvailabilitySet",
+ "type": "Microsoft.Compute/availabilitySets",
+ "tags": {
+ "key9626": "aaaaaaaaaaaaaaaaaaaa",
+ "key2505": "aa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Get_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Get_MinimumSet_Gen.json
new file mode 100644
index 000000000000..9ee163ea377d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Get_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MaximumSet_Gen.json
new file mode 100644
index 000000000000..995a13686a80
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MaximumSet_Gen.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Standard_A1_V2",
+ "numberOfCores": 1,
+ "osDiskSizeInMB": 1047552,
+ "resourceDiskSizeInMB": 10240,
+ "memoryInMB": 2048,
+ "maxDataDiskCount": 2
+ },
+ {
+ "name": "Standard_A2_V2",
+ "numberOfCores": 2,
+ "osDiskSizeInMB": 1047552,
+ "resourceDiskSizeInMB": 20480,
+ "memoryInMB": 4096,
+ "maxDataDiskCount": 4
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MinimumSet_Gen.json
new file mode 100644
index 000000000000..2abdfb0e99e6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListAvailableSizes_MinimumSet_Gen.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListBySubscription.json
new file mode 100644
index 000000000000..f8a09c495783
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_ListBySubscription.json
@@ -0,0 +1,85 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "api-version": "2023-07-01",
+ "$expand": "virtualMachines\\$ref"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "australiasoutheast",
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic"
+ }
+ },
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "australiasoutheast",
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic"
+ }
+ },
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "westcentralus",
+ "tags": {
+ "{tagName}": "{tagValue}"
+ },
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": []
+ },
+ "sku": {
+ "name": "Classic"
+ }
+ },
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "westcentralus",
+ "tags": {
+ "{tagName}": "{tagValue}"
+ },
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": []
+ },
+ "sku": {
+ "name": "Classic"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..5b0745c66b4a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_List_MaximumSet_Gen.json
@@ -0,0 +1,144 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "australiasoutheast",
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}"
+ }
+ ],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaa",
+ "message": "aaaaaa",
+ "time": "2021-11-30T13:39:56.427Z"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "capacity": 22
+ },
+ "tags": {
+ "key2039": "aaaaaaaaaaaaa"
+ }
+ },
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "australiasoutheast",
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}"
+ }
+ ],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaa",
+ "message": "aaaaaa",
+ "time": "2021-11-30T13:39:56.427Z"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "capacity": 23
+ },
+ "tags": {
+ "key5849": "aaaaaaaaaaaaaaa"
+ }
+ },
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "westcentralus",
+ "tags": {},
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": [],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaa",
+ "message": "aaaaaa",
+ "time": "2021-11-30T13:39:56.427Z"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaaaaaaaaa",
+ "capacity": 26
+ }
+ },
+ {
+ "name": "{availabilitySetName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}",
+ "type": "Microsoft.Compute/availabilitySets",
+ "location": "westcentralus",
+ "tags": {},
+ "properties": {
+ "platformUpdateDomainCount": 5,
+ "platformFaultDomainCount": 3,
+ "virtualMachines": [],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaa",
+ "message": "aaaaaa",
+ "time": "2021-11-30T13:39:56.427Z"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaaaaaa",
+ "capacity": 6
+ }
+ }
+ ],
+ "nextLink": "aaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..f9f0adb10967
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_List_MinimumSet_Gen.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "australiasoutheast",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet1"
+ },
+ {
+ "location": "australiasoutheast",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet2"
+ },
+ {
+ "location": "westcentralus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet3"
+ },
+ {
+ "location": "westcentralus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet4"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c7a18ab19df0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Update_MaximumSet_Gen.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "properties": {
+ "platformFaultDomainCount": 2,
+ "platformUpdateDomainCount": 20,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "sku": {
+ "name": "DSv3-Type1",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "tags": {
+ "key2574": "aaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "properties": {
+ "platformFaultDomainCount": 2,
+ "platformUpdateDomainCount": 20,
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaa",
+ "capacity": 29
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet",
+ "name": "myAvailabilitySet",
+ "type": "Microsoft.Compute/availabilitySets",
+ "tags": {
+ "key9626": "aaaaaaaaaaaaaaaaaaaa",
+ "key2505": "aa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..80de621df5be
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/availabilitySetExamples/AvailabilitySet_Update_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_CreateOrUpdate.json
new file mode 100644
index 000000000000..f1fb292b893b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_CreateOrUpdate.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "capacityReservationGroupName": "myCapacityReservationGroup",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "department": "finance"
+ },
+ "zones": [
+ "1",
+ "2"
+ ]
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "myCapacityReservationGroup",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/myCapacityReservationGroup",
+ "tags": {
+ "department": "finance"
+ },
+ "zones": [
+ "1",
+ "2"
+ ]
+ }
+ },
+ "200": {
+ "body": {
+ "location": "westus",
+ "tags": {
+ "department": "finance",
+ "owner": "myCompany"
+ },
+ "name": "myCapacityReservationGroup",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/myCapacityReservationGroup",
+ "zones": [
+ "1",
+ "2"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4ec650173fb7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Delete_MaximumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "a",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..51fa133aefc8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Delete_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Get.json
new file mode 100644
index 000000000000..4af1a7f9bd6c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Get.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "capacityReservationGroupName": "myCapacityReservationGroup",
+ "$expand": "instanceView"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/myCapacityReservationGroup",
+ "properties": {
+ "capacityReservations": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation1"
+ },
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation2"
+ }
+ ],
+ "instanceView": {
+ "capacityReservations": [
+ {
+ "name": "myCapacityReservation1",
+ "utilizationInfo": {
+ "currentCapacity": 5,
+ "virtualMachinesAllocated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM1"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM2"
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ }
+ ]
+ },
+ {
+ "name": "myCapacityReservation2",
+ "utilizationInfo": {
+ "currentCapacity": 5,
+ "virtualMachinesAllocated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM3"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM4"
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "location": "westus",
+ "tags": {
+ "{tagName}": "{tagValue}"
+ },
+ "name": "myCapacityReservationGroup",
+ "zones": [
+ "3",
+ "1"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_ListByResourceGroup.json
new file mode 100644
index 000000000000..75f5b1aac5e0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_ListByResourceGroup.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "$expand": "virtualMachines/$ref"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{capacityReservationGroupName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}",
+ "type": "Microsoft.Compute/CapacityReservationGroups",
+ "location": "West US",
+ "properties": {
+ "capacityReservations": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation1"
+ },
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation2"
+ }
+ ],
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM1"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM2"
+ }
+ ]
+ }
+ },
+ {
+ "name": "{capacityReservationGroupName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}",
+ "type": "Microsoft.Compute/CapacityReservationGroups",
+ "location": "West US",
+ "properties": {
+ "capacityReservations": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation3"
+ },
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation4"
+ }
+ ],
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM3"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_ListBySubscription.json
new file mode 100644
index 000000000000..96b8baad33ed
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_ListBySubscription.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-07-01",
+ "$expand": "virtualMachines/$ref"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{capacityReservationGroupName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup1/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}",
+ "type": "Microsoft.Compute/CapacityReservationGroups",
+ "location": "West US",
+ "properties": {
+ "capacityReservations": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup1/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation1"
+ },
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup1/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation2"
+ }
+ ],
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup1/providers/Microsoft.Compute/virtualMachines/myVM1"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup1/providers/Microsoft.Compute/virtualMachines/myVM2"
+ }
+ ]
+ }
+ },
+ {
+ "name": "{capacityReservationGroupName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}",
+ "type": "Microsoft.Compute/CapacityReservationGroups",
+ "location": "West US",
+ "properties": {
+ "capacityReservations": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation3"
+ },
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup2/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation4"
+ }
+ ],
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup2/providers/Microsoft.Compute/virtualMachines/myVM3"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..0922f06ed6d4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Update_MaximumSet_Gen.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "properties": {
+ "instanceView": {}
+ },
+ "tags": {
+ "key5355": "aaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "tags": {},
+ "zones": [
+ "1",
+ "2"
+ ],
+ "properties": {
+ "capacityReservations": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "virtualMachinesAssociated": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "instanceView": {
+ "capacityReservations": [
+ {
+ "name": "aaaaaaaaaaaaaaaa",
+ "utilizationInfo": {
+ "virtualMachinesAllocated": [
+ {
+ "id": "aaaa"
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/myCapacityReservationGroup",
+ "name": "myCapacityReservationGroup",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..c2ede5c22255
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservationGroup_Update_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_CreateOrUpdate.json
new file mode 100644
index 000000000000..5802f548889e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_CreateOrUpdate.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "capacity": 4
+ },
+ "zones": [
+ "1"
+ ]
+ },
+ "capacityReservationGroupName": "myCapacityReservationGroup",
+ "capacityReservationName": "myCapacityReservation"
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "myCapacityReservation",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation",
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "capacity": 4
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "reservationId": "{GUID}",
+ "provisioningState": "Creating",
+ "provisioningTime": "2021-06-27T01:02:38.3138469+00:00"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myCapacityReservation",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation",
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "capacity": 4
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "reservationId": "{GUID}",
+ "provisioningState": "Creating",
+ "provisioningTime": "2021-06-27T01:02:38.3138469+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..dffbfe954164
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaaaaaaaaaa",
+ "capacityReservationName": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..9d4a93f5bd9c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Delete_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaa",
+ "capacityReservationName": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Get.json
new file mode 100644
index 000000000000..d9012b67ac1c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Get.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "capacityReservationGroupName": "myCapacityReservationGroup",
+ "capacityReservationName": "myCapacityReservation",
+ "$expand": "instanceView"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation",
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "reservationId": "{GUID}",
+ "provisioningTime": "2021-06-27T01:02:38.3138469+00:00",
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM1"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM2"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM3"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "utilizationInfo": {
+ "currentCapacity": 5,
+ "virtualMachinesAllocated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM1"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM2"
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ }
+ ]
+ },
+ "timeCreated": "2021-06-27T01:02:38.3138469+00:00"
+ },
+ "location": "westus",
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "capacity": 4
+ },
+ "zones": [
+ "1"
+ ],
+ "name": "myCapacityReservation"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_ListByReservationGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_ListByReservationGroup.json
new file mode 100644
index 000000000000..21180dd8ea6f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_ListByReservationGroup.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "capacityReservationGroupName": "myCapacityReservationGroup",
+ "api-version": "2023-07-01",
+ "$expand": "virtualMachines/$ref"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{capacityReservationName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/CapacityReservation/{capacityReservationName}",
+ "type": "Microsoft.Compute/CapacityReservations",
+ "location": "West US",
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "reservationId": "{GUID}",
+ "provisioningTime": "2021-06-27T01:02:38.3138469+00:00",
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM1"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM2"
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM3"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "capacity": 4
+ },
+ "zones": [
+ "1"
+ ]
+ },
+ {
+ "name": "{capacityReservationName}",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}/CapacityReservation/{capacityReservationName}",
+ "type": "Microsoft.Compute/CapacityReservations",
+ "location": "West US",
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "reservationId": "{GUID}",
+ "provisioningTime": "2021-06-27T01:02:38.3138469+00:00",
+ "virtualMachinesAssociated": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM4"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "Standard_A1_v2",
+ "capacity": 4
+ },
+ "zones": [
+ "1"
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..56e437e90561
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Update_MaximumSet_Gen.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaaaaaaaaa",
+ "capacityReservationName": "aaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "properties": {
+ "instanceView": {
+ "utilizationInfo": {},
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "tags": {
+ "key4974": "aaaaaaaaaaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "tags": {},
+ "sku": {
+ "name": "Standard_DS1_v2",
+ "capacity": 4,
+ "tier": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "reservationId": "{GUID}",
+ "virtualMachinesAssociated": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "provisioningTime": "2021-06-27T01:02:38.3138469+00:00",
+ "provisioningState": "Creating",
+ "instanceView": {
+ "utilizationInfo": {
+ "virtualMachinesAllocated": [
+ {
+ "id": "aaaa"
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/capacityReservationGroups/myCapacityReservationGroup/capacityReservations/myCapacityReservation",
+ "name": "myCapacityReservation",
+ "type": "aaaaaaaaaaaaaaa"
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..d4e7a970baf8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/capacityReservationExamples/CapacityReservation_Update_MinimumSet_Gen.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "capacityReservationGroupName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "capacityReservationName": "aaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "sku": {}
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Operations_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Operations_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..235901c237f2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Operations_List_MaximumSet_Gen.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "origin": "aaaaa",
+ "name": "aaaaaaaaaaaa",
+ "display": {
+ "operation": "aaaaaaaaaaaaaaaaaaaaaa",
+ "resource": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "description": "aaaaaaaaaaaaaaaaaaaaaa",
+ "provider": "aaaaaaaaaaaaaaaaaa"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Operations_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Operations_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..4e615dd3793f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Operations_List_MinimumSet_Gen.json
@@ -0,0 +1,10 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Usage_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Usage_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..5dbed6f85984
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Usage_List_MaximumSet_Gen.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "location": "4_.",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "unit": "Count",
+ "currentValue": 17,
+ "limit": 19,
+ "name": {
+ "value": "aaaaaaaaaaaaaaaaaa",
+ "localizedValue": "aaaaaaaaaaaaaa"
+ }
+ }
+ ],
+ "nextLink": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Usage_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Usage_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a5b70dacdf4e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/Usage_List_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "location": "_--",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "unit": "Count",
+ "currentValue": 17,
+ "limit": 19,
+ "name": {}
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/VirtualMachineSizes_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/VirtualMachineSizes_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..fc31b410a50b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/VirtualMachineSizes_List_MaximumSet_Gen.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "location": "-e",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Standard_A1_V2",
+ "numberOfCores": 1,
+ "osDiskSizeInMB": 1047552,
+ "resourceDiskSizeInMB": 10240,
+ "memoryInMB": 2048,
+ "maxDataDiskCount": 2
+ },
+ {
+ "name": "Standard_A2_V2",
+ "numberOfCores": 2,
+ "osDiskSizeInMB": 1047552,
+ "resourceDiskSizeInMB": 20480,
+ "memoryInMB": 4096,
+ "maxDataDiskCount": 4
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/VirtualMachineSizes_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/VirtualMachineSizes_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..11a9edb7cfd3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/computeRPCommonExamples/VirtualMachineSizes_List_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "location": "._..",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate.json
new file mode 100644
index 000000000000..d353fc3b9c25
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "department": "finance"
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "myDedicatedHostGroup",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "tags": {
+ "department": "finance"
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true
+ },
+ "location": "westus",
+ "tags": {
+ "department": "finance",
+ "owner": "myCompany"
+ },
+ "name": "myDedicatedHostGroup",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "zones": [
+ "1"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate_WithUltraSSD.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate_WithUltraSSD.json
new file mode 100644
index 000000000000..5862c412fa8e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_CreateOrUpdate_WithUltraSSD.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "department": "finance"
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "myDedicatedHostGroup",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "tags": {
+ "department": "finance"
+ },
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true
+ }
+ },
+ "location": "westus",
+ "tags": {
+ "department": "finance",
+ "owner": "myCompany"
+ },
+ "name": "myDedicatedHostGroup",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "zones": [
+ "1"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a4bc9211f261
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MaximumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "a",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..6880bceb4f96
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Delete_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Get.json
new file mode 100644
index 000000000000..1aa9ba241f31
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Get.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "expand": "instanceView"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "hosts": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost1"
+ },
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost2"
+ }
+ ],
+ "supportAutomaticPlacement": true,
+ "instanceView": {
+ "hosts": [
+ {
+ "name": "myHost1",
+ "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "Standard_A1",
+ "count": 10
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ },
+ {
+ "code": "HealthState/available",
+ "level": "Info",
+ "displayStatus": "Host available"
+ }
+ ]
+ },
+ {
+ "name": "myHost2",
+ "assetId": "f293d4ac-5eea-4be2-b0c0-0fcaa09aebf8",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "Standard_A1",
+ "count": 10
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ },
+ {
+ "code": "HealthState/available",
+ "level": "Info",
+ "displayStatus": "Host available"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "location": "westus",
+ "tags": {
+ "{tagName}": "{tagValue}"
+ },
+ "name": "myDedicatedHostGroup",
+ "zones": [
+ "3"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Get_UltraSSDEnabledDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Get_UltraSSDEnabledDedicatedHostGroup.json
new file mode 100644
index 000000000000..077f0f81ff02
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Get_UltraSSDEnabledDedicatedHostGroup.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "expand": "instanceView"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "hosts": [
+ {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost"
+ }
+ ],
+ "supportAutomaticPlacement": true,
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true
+ },
+ "instanceView": {
+ "hosts": [
+ {
+ "name": "myHost",
+ "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "Standard_A1",
+ "count": 10
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ },
+ {
+ "code": "HealthState/available",
+ "level": "Info",
+ "displayStatus": "Host available"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "location": "westus",
+ "tags": {
+ "{tagName}": "{tagValue}"
+ },
+ "name": "myDedicatedHostGroup",
+ "zones": [
+ "3"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..e6a2f7f2ab98
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MaximumSet_Gen.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "tags": {},
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "hosts": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "instanceView": {
+ "hosts": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "assetId": "aaaa",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "name": "myDedicatedHostGroup",
+ "type": "aaaa"
+ }
+ ],
+ "nextLink": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b4381886575b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListByResourceGroup_MinimumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "location": "westus"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MaximumSet_Gen.json
new file mode 100644
index 000000000000..029ac6a13021
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MaximumSet_Gen.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "tags": {},
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "hosts": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "instanceView": {
+ "hosts": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "assetId": "aaaa",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "name": "myDedicatedHostGroup",
+ "type": "aaaa"
+ }
+ ],
+ "nextLink": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b113f771952f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_ListBySubscription_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..daea2562888f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Update_MaximumSet_Gen.json
@@ -0,0 +1,91 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaa",
+ "parameters": {
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "instanceView": {
+ "hosts": [
+ {
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "zones": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ ],
+ "tags": {
+ "key9921": "aaaaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "tags": {},
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "platformFaultDomainCount": 3,
+ "supportAutomaticPlacement": true,
+ "hosts": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "instanceView": {
+ "hosts": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "assetId": "aaaa",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup",
+ "name": "myDedicatedHostGroup",
+ "type": "aaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..6616168be956
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHostGroup_Update_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_CreateOrUpdate.json
new file mode 100644
index 000000000000..a12069479304
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_CreateOrUpdate.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "department": "HR"
+ },
+ "properties": {
+ "platformFaultDomain": 1
+ },
+ "sku": {
+ "name": "DSv3-Type1"
+ }
+ },
+ "hostGroupName": "myDedicatedHostGroup",
+ "hostName": "myDedicatedHost"
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "myDedicatedHost",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost",
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "DSv3-Type1"
+ },
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": true,
+ "hostId": "{GUID}"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": false,
+ "licenseType": "Windows_Server_Hybrid",
+ "hostId": "{GUID}"
+ },
+ "location": "westus",
+ "tags": {
+ "department": "HR"
+ },
+ "name": "myDedicatedHost",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost",
+ "sku": {
+ "name": "DSv3-Type1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..679ad28999da
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaaaa",
+ "hostName": "aaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..478fd5c3d070
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Delete_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaaaaaaaaaaaaa",
+ "hostName": "aaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Get.json
new file mode 100644
index 000000000000..7a8f0f58cf6a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Get.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "hostName": "myHost",
+ "$expand": "instanceView"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myHost",
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": true,
+ "hostId": "{GUID}",
+ "provisioningTime": "2019-06-27T01:02:38.3138469+00:00",
+ "virtualMachines": [
+ {
+ "id": "/subscriptions/subId/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/vm1"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "Standard_A1",
+ "count": 10
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded"
+ },
+ {
+ "code": "HealthState/available",
+ "level": "Info",
+ "displayStatus": "Host available"
+ }
+ ]
+ },
+ "timeCreated": "2019-06-27T01:02:38.3138469+00:00"
+ },
+ "location": "westus",
+ "tags": {
+ "department": "HR"
+ },
+ "sku": {
+ "name": "DSv3-Type1"
+ },
+ "name": "myHost"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListAvailableSizes.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListAvailableSizes.json
new file mode 100644
index 000000000000..7d8b4a467a3c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListAvailableSizes.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "hostName": "myHost"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ "Dsv3-Type1",
+ "Esv3-Type1"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7e9d660ef355
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MaximumSet_Gen.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": true,
+ "hostId": "{GUID}",
+ "virtualMachines": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "licenseType": "Windows_Server_Hybrid",
+ "provisioningTime": "2021-11-30T12:58:26.526Z",
+ "provisioningState": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceView": {
+ "assetId": "aaaaaaaaaaaaaaaa",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "sku": {
+ "name": "DSv3-Type1",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost",
+ "name": "myDedicatedHost",
+ "type": "aaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "nextLink": "aaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MinimumSet_Gen.json
new file mode 100644
index 000000000000..127c4e07b477
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_ListByHostGroup_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "sku": {},
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myHost"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Restart.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Restart.json
new file mode 100644
index 000000000000..8dfdd6489b21
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Restart.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "hostGroupName": "myDedicatedHostGroup",
+ "hostName": "myHost"
+ },
+ "responses": {
+ "200": {
+ "description": "OK"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d3b9e3c6bd13
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_MaximumSet_Gen.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaaaaaaa",
+ "hostName": "aaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": true,
+ "licenseType": "Windows_Server_Hybrid",
+ "instanceView": {
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "tags": {
+ "key8813": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": true,
+ "hostId": "{GUID}",
+ "virtualMachines": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "licenseType": "Windows_Server_Hybrid",
+ "provisioningTime": "2021-11-30T12:58:26.526Z",
+ "provisioningState": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceView": {
+ "assetId": "aaaaaaaaaaaaaaaa",
+ "availableCapacity": {
+ "allocatableVMs": [
+ {
+ "vmSize": "aaaaaaaaaaaaaaaaaaaa",
+ "count": 26
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "sku": {
+ "name": "DSv3-Type1",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost",
+ "name": "myDedicatedHost",
+ "type": "aaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ef6ec49a4ce5
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aa",
+ "hostName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "sku": {}
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_Resize.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_Resize.json
new file mode 100644
index 000000000000..6ea3b80a753b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/dedicatedHostExamples/DedicatedHost_Update_Resize.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "hostGroupName": "aaaaaaaaa",
+ "hostName": "aaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "name": "DSv3-Type1"
+ }
+ },
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "platformFaultDomain": 1,
+ "autoReplaceOnFailure": true,
+ "hostId": "{GUID}",
+ "virtualMachines": [
+ {
+ "id": "aaaa"
+ }
+ ],
+ "licenseType": "Windows_Server_Hybrid",
+ "provisioningTime": "2021-11-30T12:58:26.526Z",
+ "provisioningState": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "sku": {
+ "name": "DSv3-Type1",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost",
+ "name": "myDedicatedHost",
+ "type": "aaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromABlob.json
new file mode 100644
index 000000000000..b5922ccc7940
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromABlob.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "osState": "Generalized"
+ },
+ "zoneResilient": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": true
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": true
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromABlobWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromABlobWithDiskEncryptionSet.json
new file mode 100644
index 000000000000..e9455e2953af
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromABlobWithDiskEncryptionSet.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "caching": "ReadWrite"
+ },
+ "dataDisks": []
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "caching": "ReadWrite"
+ },
+ "dataDisks": []
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAManagedDisk.json
new file mode 100644
index 000000000000..b5bd92aaa6bb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAManagedDisk.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "osState": "Generalized"
+ },
+ "zoneResilient": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": true
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": true
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAManagedDiskWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAManagedDiskWithDiskEncryptionSet.json
new file mode 100644
index 000000000000..2f9332b25aa5
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAManagedDiskWithDiskEncryptionSet.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": []
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": []
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromASnapshot.json
new file mode 100644
index 000000000000..760252f9b3fc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromASnapshot.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "osState": "Generalized"
+ },
+ "zoneResilient": false
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromASnapshotWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromASnapshotWithDiskEncryptionSet.json
new file mode 100644
index 000000000000..0aaed6a86336
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromASnapshotWithDiskEncryptionSet.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": []
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": []
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAVM.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAVM.json
new file mode 100644
index 000000000000..30987ba531cc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_CreateFromAVM.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "sourceVirtualMachine": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "sourceVirtualMachine": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "managedDisk": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022"
+ },
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "sourceVirtualMachine": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "managedDisk": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022"
+ },
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromABlobIncluded.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromABlobIncluded.json
new file mode 100644
index 000000000000..c07bc91c1ac9
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromABlobIncluded.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "osState": "Generalized"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd"
+ }
+ ],
+ "zoneResilient": false
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd"
+ }
+ ],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "osState": "Generalized",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd"
+ }
+ ],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromAManagedDiskIncluded.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromAManagedDiskIncluded.json
new file mode 100644
index 000000000000..45c1a46dd0f4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromAManagedDiskIncluded.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "osState": "Generalized"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ }
+ }
+ ],
+ "zoneResilient": false
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ }
+ }
+ ],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "managedDisk": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ }
+ }
+ ],
+ "zoneResilient": false
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromASnapshotIncluded.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromASnapshotIncluded.json
new file mode 100644
index 000000000000..eb26527e1d9a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Create_DataDiskFromASnapshotIncluded.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "osState": "Generalized"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ }
+ }
+ ],
+ "zoneResilient": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ }
+ }
+ ],
+ "zoneResilient": true
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Linux",
+ "snapshot": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "osState": "Generalized",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ }
+ }
+ ],
+ "zoneResilient": true
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/images",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Get.json
new file mode 100644
index 000000000000..06c291f4fa56
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Get.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage",
+ "type": "Microsoft.Compute/images",
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1"
+ },
+ "osState": "Generalized",
+ "storageAccountType": "Standard_LRS",
+ "diskSizeGB": 20
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ },
+ "storageAccountType": "Standard_LRS"
+ }
+ ],
+ "zoneResilient": true
+ },
+ "provisioningState": "created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_ListByResourceGroup.json
new file mode 100644
index 000000000000..4f2ef0c5cff8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_ListByResourceGroup.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage",
+ "type": "Microsoft.Compute/images",
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1"
+ },
+ "osState": "Generalized",
+ "storageAccountType": "Standard_LRS"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ },
+ "storageAccountType": "Standard_LRS"
+ }
+ ]
+ },
+ "provisioningState": "created"
+ }
+ }
+ ],
+ "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/UserVMImages/myImageName"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_ListBySubscription.json
new file mode 100644
index 000000000000..72b6fb923fdc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_ListBySubscription.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage",
+ "type": "Microsoft.Compute/images",
+ "location": "West US",
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1"
+ },
+ "osState": "Generalized",
+ "storageAccountType": "Standard_LRS"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ },
+ "storageAccountType": "Standard_LRS"
+ }
+ ]
+ },
+ "provisioningState": "created"
+ }
+ }
+ ],
+ "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/UserVMImages/myImageName"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Update.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Update.json
new file mode 100644
index 000000000000..ab65543a3a7c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Image_Update.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "imageName": "myImage",
+ "parameters": {
+ "properties": {
+ "sourceVirtualMachine": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"
+ },
+ "hyperVGeneration": "V1"
+ },
+ "tags": {
+ "department": "HR"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage",
+ "type": "Microsoft.Compute/images",
+ "location": "West US",
+ "tags": {
+ "department": "HR"
+ },
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1"
+ },
+ "osState": "Generalized",
+ "storageAccountType": "Standard_LRS",
+ "diskSizeGB": 20
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ },
+ "storageAccountType": "Standard_LRS"
+ }
+ ],
+ "zoneResilient": true
+ },
+ "provisioningState": "created"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage",
+ "name": "myImage",
+ "type": "Microsoft.Compute/images",
+ "location": "West US",
+ "tags": {
+ "department": "HR"
+ },
+ "properties": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1"
+ },
+ "osState": "Generalized",
+ "storageAccountType": "Standard_LRS",
+ "diskSizeGB": 20
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd",
+ "snapshot": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2"
+ },
+ "managedDisk": {
+ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2"
+ },
+ "storageAccountType": "Standard_LRS"
+ }
+ ],
+ "zoneResilient": true
+ },
+ "provisioningState": "created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Images_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Images_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..1e895be6d201
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Images_Delete_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "imageName": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Images_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Images_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..3c038ec5de69
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/imageExamples/Images_Delete_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "imageName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/logAnalyticExamples/LogAnalytics_RequestRateByInterval.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/logAnalyticExamples/LogAnalytics_RequestRateByInterval.json
new file mode 100644
index 000000000000..c25f58220e08
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/logAnalyticExamples/LogAnalytics_RequestRateByInterval.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "intervalLength": "FiveMins",
+ "blobContainerSasUri": "https://somesasuri",
+ "fromTime": "2018-01-21T01:54:06.862601Z",
+ "toTime": "2018-01-23T01:54:06.862601Z",
+ "groupByResourceName": true
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/RequestRateByInterval_20180121-0154_20180123-0154.csv"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/logAnalyticExamples/LogAnalytics_ThrottledRequests.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/logAnalyticExamples/LogAnalytics_ThrottledRequests.json
new file mode 100644
index 000000000000..c3014a970f03
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/logAnalyticExamples/LogAnalytics_ThrottledRequests.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "blobContainerSasUri": "https://somesasuri",
+ "fromTime": "2018-01-21T01:54:06.862601Z",
+ "toTime": "2018-01-23T01:54:06.862601Z",
+ "groupByOperationName": true,
+ "groupByResourceName": false,
+ "groupByClientApplicationId": false,
+ "groupByUserAgent": false
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/ThrottledRequests_20180121-0154_20180123-0154.csv"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_CreateOrUpdate.json
new file mode 100644
index 000000000000..33146c3ef09d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_CreateOrUpdate.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "proximityPlacementGroupName": "myProximityPlacementGroup",
+ "parameters": {
+ "location": "westus",
+ "zones": [
+ "1"
+ ],
+ "properties": {
+ "proximityPlacementGroupType": "Standard",
+ "intent": {
+ "vmSizes": [
+ "Basic_A0",
+ "Basic_A2"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myProximityPlacementGroup",
+ "properties": {
+ "proximityPlacementGroupType": "Standard",
+ "intent": {
+ "vmSizes": [
+ "Basic_A0",
+ "Basic_A2"
+ ]
+ }
+ },
+ "location": "westus",
+ "zones": [
+ "1"
+ ],
+ "type": "Microsoft.Compute/proximityPlacementGroups",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myProximityPlacementGroup",
+ "properties": {
+ "proximityPlacementGroupType": "Standard",
+ "intent": {
+ "vmSizes": [
+ "Basic_A0",
+ "Basic_A2"
+ ]
+ }
+ },
+ "location": "westus",
+ "zones": [
+ "1"
+ ],
+ "type": "Microsoft.Compute/proximityPlacementGroups",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Delete.json
new file mode 100644
index 000000000000..8e01fe036bc2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Delete.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "proximityPlacementGroupName": "myProximityPlacementGroup",
+ "parameters": {}
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Get.json
new file mode 100644
index 000000000000..35934320a1bf
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Get.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "proximityPlacementGroupName": "myProximityPlacementGroup",
+ "parameters": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myProximityPlacementGroup",
+ "properties": {
+ "proximityPlacementGroupType": "Standard",
+ "intent": {
+ "vmSizes": [
+ "Basic_A0",
+ "Basic_A2"
+ ]
+ },
+ "virtualMachines": [
+ {
+ "id": "string"
+ }
+ ],
+ "virtualMachineScaleSets": [
+ {
+ "id": "string"
+ }
+ ],
+ "availabilitySets": [
+ {
+ "id": "string"
+ }
+ ]
+ },
+ "location": "westus",
+ "zones": [
+ "1"
+ ],
+ "type": "Microsoft.Compute/proximityPlacementGroups",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListByResourceGroup.json
new file mode 100644
index 000000000000..2f1a3969ff48
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListByResourceGroup.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "parameters": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myProximityPlacementGroup",
+ "properties": {
+ "proximityPlacementGroupType": "Standard",
+ "intent": {
+ "vmSizes": [
+ "Basic_A0",
+ "Basic_A2"
+ ]
+ },
+ "virtualMachines": [
+ {
+ "id": "string"
+ }
+ ],
+ "virtualMachineScaleSets": [
+ {
+ "id": "string"
+ }
+ ],
+ "availabilitySets": [
+ {
+ "id": "string"
+ }
+ ]
+ },
+ "location": "westus",
+ "zones": [
+ "1"
+ ],
+ "type": "Microsoft.Compute/proximityPlacementGroups",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup"
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListBySubscription.json
new file mode 100644
index 000000000000..a176056ab36c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListBySubscription.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-07-01",
+ "parameters": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myProximityPlacementGroup",
+ "properties": {
+ "proximityPlacementGroupType": "Standard",
+ "intent": {
+ "vmSizes": [
+ "Basic_A0",
+ "Basic_A2"
+ ]
+ },
+ "virtualMachines": [
+ {
+ "id": "string"
+ }
+ ],
+ "virtualMachineScaleSets": [
+ {
+ "id": "string"
+ }
+ ],
+ "availabilitySets": [
+ {
+ "id": "string"
+ }
+ ]
+ },
+ "location": "westus",
+ "zones": [
+ "1"
+ ],
+ "type": "Microsoft.Compute/proximityPlacementGroups",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup"
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Patch.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Patch.json
new file mode 100644
index 000000000000..d08bacc6a8b2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Patch.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "proximityPlacementGroupName": "myProximityPlacementGroup",
+ "parameters": {
+ "tags": {
+ "additionalProp1": "string"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myProximityPlacementGroup",
+ "properties": {
+ "proximityPlacementGroupType": "Standard"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/proximityPlacementGroups",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_CreateOrUpdate.json
new file mode 100644
index 000000000000..d1c7deeb8d14
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_CreateOrUpdate.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "myRpc",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "norwayeast",
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"
+ }
+ },
+ "tags": {
+ "myTag1": "tagValue1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRpc",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "norwayeast",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "eastus"
+ },
+ "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myRpc",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "norwayeast",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "eastus"
+ },
+ "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_CreateOrUpdate_ForCrossRegionCopy.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_CreateOrUpdate_ForCrossRegionCopy.json
new file mode 100644
index 000000000000..a195631f2d37
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_CreateOrUpdate_ForCrossRegionCopy.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "myRpc",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "norwayeast",
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/sourceRpcName"
+ }
+ },
+ "tags": {
+ "myTag1": "tagValue1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRpc",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "norwayeast",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "eastus"
+ },
+ "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myRpc",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "norwayeast",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/sourceRpcName",
+ "location": "eastus"
+ },
+ "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d5a9344ba5d4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Delete_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "rgcompute",
+ "restorePointCollectionName": "aaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..1cd02d61551a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Delete_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "rgcompute",
+ "restorePointCollectionName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Get.json
new file mode 100644
index 000000000000..b590946f7652
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "myRpc",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRpc",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "location": "eastus"
+ },
+ "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Get_WithContainedRestorePoints.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Get_WithContainedRestorePoints.json
new file mode 100644
index 000000000000..f8d1337ee76f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Get_WithContainedRestorePoints.json
@@ -0,0 +1,97 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpcName",
+ "api-version": "2023-07-01",
+ "expand": "restorePoints"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "rpcName",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "eastus"
+ },
+ "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4",
+ "provisioningState": "Succeeded",
+ "restorePoints": [
+ {
+ "name": "restorePointName",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName",
+ "properties": {
+ "excludeDisks": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f"
+ }
+ ],
+ "sourceMetadata": {
+ "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7",
+ "hardwareProfile": {
+ "vmSize": "Standard_B1s"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "testingexcludedisk_DataDisk_1",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5"
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "computerName",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "location": "westus"
+ },
+ "provisioningState": "Succeeded",
+ "consistencyMode": "ApplicationConsistent",
+ "timeCreated": "2021-01-27T20:35:05.8401519+00:00"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_ListByResourceGroup.json
new file mode 100644
index 000000000000..0ad4e4e3478e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_ListByResourceGroup.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "restorePointCollection1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection1",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection1",
+ "location": "westus"
+ },
+ "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "name": "restorePointCollection2",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection2",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/restorePointCollection2",
+ "location": "westus"
+ },
+ "restorePointCollectionId": "2875c590-e337-4102-9668-4f5b7e3f98a4",
+ "provisioningState": "Deleting"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_ListBySubscription.json
new file mode 100644
index 000000000000..798b956a03b9
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_ListBySubscription.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "restorePointCollection1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/resourceGroup1/providers/Microsoft.Compute/restorePointCollections/restorePointCollection1",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/VM_Test",
+ "location": "westus"
+ },
+ "restorePointCollectionId": "59f04a5d-f783-4200-a1bd-d3f464e8c4b4",
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "name": "restorePointCollection2",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/resourceGroup2/providers/Microsoft.Compute/restorePointCollections/restorePointCollection2",
+ "type": "Microsoft.Compute/restorePointCollections",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/VM_Prod",
+ "location": "westus"
+ },
+ "restorePointCollectionId": "2875c590-e337-4102-9668-4f5b7e3f98a4",
+ "provisioningState": "Deleting"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..ec64a425622a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Update_MaximumSet_Gen.json
@@ -0,0 +1,193 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "rgcompute",
+ "restorePointCollectionName": "aaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM"
+ }
+ },
+ "tags": {
+ "key8536": "aaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "norwayeast",
+ "properties": {
+ "source": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "eastus"
+ },
+ "provisioningState": "Successful",
+ "restorePointCollectionId": "638f052b-a7c2-450c-89e7-6a3b8f1d6a7c",
+ "restorePoints": [
+ {
+ "properties": {
+ "excludeDisks": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ ],
+ "sourceMetadata": {
+ "hardwareProfile": {
+ "vmSize": "Standard_B1s",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 9,
+ "vCPUsPerCore": 12
+ }
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f",
+ "caching": "ReadWrite",
+ "diskSizeGB": 3,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "testingexcludedisk_DataDisk_1",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5"
+ },
+ "diskSizeGB": 24
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "computerName",
+ "adminUsername": "admin",
+ "customData": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "aaaaaaa",
+ "certificateStore": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ ],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "licenseType": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7",
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "location": "westus"
+ },
+ "provisioningState": "aaaaaaaaaaaaaaaaa",
+ "consistencyMode": "CrashConsistent",
+ "timeCreated": "2021-11-30T12:58:26.593Z"
+ },
+ "id": "aaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "tags": {},
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/myRpc",
+ "name": "myRpc",
+ "type": "Microsoft.Compute/restorePointCollections"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..fc1ea9084f29
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePointCollection_Update_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "rgcompute",
+ "restorePointCollectionName": "aaaaaaaaaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "norwayeast"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Copy_BetweenRegions.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Copy_BetweenRegions.json
new file mode 100644
index 000000000000..e6fa9c59be03
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Copy_BetweenRegions.json
@@ -0,0 +1,84 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpcName",
+ "restorePointName": "rpName",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "properties": {
+ "sourceRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/sourceRpcName/restorePoints/sourceRpName"
+ }
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "rpName",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName",
+ "properties": {
+ "sourceRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/sourceRpcName/restorePoints/sourceRpName"
+ },
+ "sourceMetadata": {
+ "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7",
+ "hardwareProfile": {
+ "vmSize": "Standard_B1s"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "name": "osDisk123",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk123"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/osDisk123_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "dataDisk123",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/disks/dataDisk123"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/dataDisk123_68785190-1acb-4d5e-a8ae-705b45f3dca5"
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "computerName",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "location": "westus",
+ "userData": "c2FtcGxlIHVzZXJEYXRh"
+ },
+ "provisioningState": "Creating",
+ "consistencyMode": "ApplicationConsistent",
+ "timeCreated": "2021-10-25T23:54:29.2796325+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Create.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Create.json
new file mode 100644
index 000000000000..a83f87dcb7fe
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Create.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpcName",
+ "restorePointName": "rpName",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "properties": {
+ "excludeDisks": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/disk123"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "rpName",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName",
+ "properties": {
+ "excludeDisks": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/disk123"
+ }
+ ],
+ "sourceMetadata": {
+ "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7",
+ "hardwareProfile": {
+ "vmSize": "Standard_B1s"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "name": "osDisk123",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk123"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/osDisk123_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "dataDisk123",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/disks/dataDisk123"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/dataDisk123_68785190-1acb-4d5e-a8ae-705b45f3dca5"
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "computerName",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "location": "westus",
+ "userData": "c2FtcGxlIHVzZXJEYXRh"
+ },
+ "provisioningState": "Succeeded",
+ "consistencyMode": "ApplicationConsistent",
+ "timeCreated": "2021-01-27T20:35:05.8401519+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..24de2a62bfde
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "rgcompute",
+ "restorePointCollectionName": "aaaaaaaaaaaaaaaaaaaaaa",
+ "restorePointName": "a",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..497f5178c551
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Delete_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "rgcompute",
+ "restorePointCollectionName": "aaaaaaaaaaaaaaaaa",
+ "restorePointName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Get.json
new file mode 100644
index 000000000000..d210bb4a88ab
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Get.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpcName",
+ "restorePointName": "rpName",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "rpName",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName",
+ "properties": {
+ "excludeDisks": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f"
+ }
+ ],
+ "sourceMetadata": {
+ "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7",
+ "hardwareProfile": {
+ "vmSize": "Standard_B1s"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "testingexcludedisk_DataDisk_1",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5"
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "computerName",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "location": "westus"
+ },
+ "provisioningState": "Succeeded",
+ "consistencyMode": "ApplicationConsistent",
+ "timeCreated": "2021-01-27T20:35:05.8401519+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Get_WithInstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Get_WithInstanceView.json
new file mode 100644
index 000000000000..a535f4487d29
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/restorePointExamples/RestorePoint_Get_WithInstanceView.json
@@ -0,0 +1,112 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpcName",
+ "restorePointName": "rpName",
+ "api-version": "2023-07-01",
+ "expand": "instanceView"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "rpName",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName",
+ "properties": {
+ "excludeDisks": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vm8768_disk2_fe6ffde4f69b491ca33fb984d5bcd89f"
+ }
+ ],
+ "sourceMetadata": {
+ "vmId": "76d6541e-80bd-4dc1-932b-3cae4cfb80e7",
+ "hardwareProfile": {
+ "vmSize": "Standard_B1s"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "name": "testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ }
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "testingexcludedisk_DataDisk_1",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/disks/testingexcludedisk_DataDisk_1"
+ },
+ "diskRestorePoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5"
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "computerName",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "location": "westus"
+ },
+ "provisioningState": "Succeeded",
+ "consistencyMode": "ApplicationConsistent",
+ "timeCreated": "2021-01-27T20:35:05.8401519+00:00",
+ "instanceView": {
+ "diskRestorePoints": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/rpName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57",
+ "replicationStatus": {
+ "status": {
+ "code": "ReplicationState/succeeded",
+ "level": "Info",
+ "displayStatus": "Succeeded"
+ },
+ "completionPercent": 100
+ }
+ },
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/userdata/providers/Microsoft.Compute/restorePointCollections/mynewrpc/restorePoints/restorepointtwo/diskRestorePoints/testingexcludedisk_DataDisk_1_68785190-1acb-4d5e-a8ae-705b45f3dca5",
+ "replicationStatus": {
+ "status": {
+ "code": "ReplicationState/succeeded",
+ "level": "Info",
+ "displayStatus": "Succeeded"
+ },
+ "completionPercent": 100
+ }
+ }
+ ],
+ "statuses": [
+ {
+ "code": "ReplicationState/succeeded",
+ "level": "Info",
+ "displayStatus": "Succeeded"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/RunCommand_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/RunCommand_Get.json
new file mode 100644
index 000000000000..16e43c4e0efb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/RunCommand_Get.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e",
+ "location": "SoutheastAsia",
+ "commandId": "RunPowerShellScript",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "script": [
+ "param(",
+ " [string]$arg1,",
+ " [string]$arg2",
+ ")",
+ "Write-Host This is a sample script with parameters $arg1 $arg2"
+ ],
+ "parameters": [
+ {
+ "name": "arg1",
+ "type": "string",
+ "defaultValue": "value1"
+ },
+ {
+ "name": "arg2",
+ "type": "string",
+ "defaultValue": "value2"
+ }
+ ],
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "RunPowerShellScript",
+ "osType": "Windows",
+ "label": "Executes a PowerShell script",
+ "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property."
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/RunCommand_List.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/RunCommand_List.json
new file mode 100644
index 000000000000..600259599f96
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/RunCommand_List.json
@@ -0,0 +1,85 @@
+{
+ "parameters": {
+ "subscriptionId": "subid",
+ "location": "SoutheastAsia",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "EnableRemotePS",
+ "osType": "Windows",
+ "label": "Enable remote PowerShell",
+ "description": "Configure the machine to enable remote PowerShell."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "IPConfig",
+ "osType": "Windows",
+ "label": "List IP configuration",
+ "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "RunPowerShellScript",
+ "osType": "Windows",
+ "label": "Executes a PowerShell script",
+ "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "RunShellScript",
+ "osType": "Linux",
+ "label": "Executes a Linux shell script",
+ "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "ifconfig",
+ "osType": "Linux",
+ "label": "List network configuration",
+ "description": "Get the configuration of all network interfaces."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "EnableAdminAccount",
+ "osType": "Windows",
+ "label": "Enable administrator account",
+ "description": "Checks if the local Administrator account is disabled, and if so enables it."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "ResetAccountPassword",
+ "osType": "Windows",
+ "label": "Reset built-in Administrator account password",
+ "description": "Reset built-in Administrator account password."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "RDPSettings",
+ "osType": "Windows",
+ "label": "Verify RDP Listener Settings",
+ "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "SetRDPPort",
+ "osType": "Windows",
+ "label": "Set Remote Desktop port",
+ "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port."
+ },
+ {
+ "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json",
+ "id": "ResetRDPCert",
+ "osType": "Windows",
+ "label": "Restore RDP Authentication mode to defaults",
+ "description": "Removes the SSL certificate tied to the RDP listener and restores the RDP listerner security to default. Use this script if you see any issues with the certificate."
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand.json
new file mode 100644
index 000000000000..b678203b4669
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e",
+ "resourceGroupName": "crptestar98131",
+ "vmName": "vm3036",
+ "$top": 1,
+ "api-version": "2023-07-01",
+ "monitor": "true",
+ "parameters": {
+ "commandId": "RunPowerShellScript"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "code": "ComponentStatus/StdOut/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": "This is a sample script with parameters value1 value2"
+ },
+ {
+ "code": "ComponentStatus/StdErr/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": ""
+ }
+ ]
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_CreateOrUpdate.json
new file mode 100644
index 000000000000..d3b4c81a4e33
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_CreateOrUpdate.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01",
+ "runCommand": {
+ "location": "West US",
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/scriptURI"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "runAsPassword": "",
+ "timeoutInSeconds": 3600,
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/scriptURI",
+ "outputBlobManagedIdentity": {
+ "clientId": "22d35efb-0c99-4041-8c5b-6d24db33a69a"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachines/runCommands",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Succeeded",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachines/runCommands",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Creating",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Delete.json
new file mode 100644
index 000000000000..6e2fc3ccf85f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Get.json
new file mode 100644
index 000000000000..fed183a17eb5
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Get.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachines/runCommands",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "script": "Write-Host Hello World! ; Remove-Item C:\test\testFile.txt"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Succeeded",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_List.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_List.json
new file mode 100644
index 000000000000..e935648d189d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_List.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachines/runCommands",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "script": "Write-Host Hello World!"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 0,
+ "provisioningState": "Succeeded",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Update.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Update.json
new file mode 100644
index 000000000000..3c09f86914c0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineRunCommand_Update.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01",
+ "runCommand": {
+ "properties": {
+ "source": {
+ "script": "Write-Host Hello World! ; Remove-Item C:\test\testFile.txt"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "runAsUser": "user1",
+ "runAsPassword": "",
+ "timeoutInSeconds": 3600,
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/outputUri",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt",
+ "errorBlobManagedIdentity": {
+ "objectId": "4231e4d2-33e4-4e23-96b2-17888afa6072"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachines/runCommands",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "script": "Write-Host Hello World! ; Remove-Item C:\test\testFile.txt"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Updating",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand.json
new file mode 100644
index 000000000000..97dde8a7f0db
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myVirtualMachineScaleSet",
+ "instanceId": "0",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "commandId": "RunPowerShellScript",
+ "script": [
+ "Write-Host Hello World!"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "code": "ComponentStatus/StdOut/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": "Hello World!"
+ },
+ {
+ "code": "ComponentStatus/StdErr/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": ""
+ }
+ ]
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_CreateOrUpdate.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_CreateOrUpdate.json
new file mode 100644
index 000000000000..bf199b331fa1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_CreateOrUpdate.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01",
+ "runCommand": {
+ "location": "West US",
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1",
+ "scriptUriManagedIdentity": {
+ "objectId": "4231e4d2-33e4-4e23-96b2-17888afa6072"
+ }
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": true,
+ "runAsUser": "user1",
+ "runAsPassword": "",
+ "timeoutInSeconds": 3600,
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt",
+ "outputBlobManagedIdentity": {
+ "clientId": "22d35efb-0c99-4041-8c5b-6d24db33a69a"
+ },
+ "errorBlobManagedIdentity": {}
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
+ "location": "westus",
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": true,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Succeeded",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myRunCommand",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
+ "location": "westus",
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": true,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Creating",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Delete.json
new file mode 100644
index 000000000000..4838f8ff44ed
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Delete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Get.json
new file mode 100644
index 000000000000..c320bf836545
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Get.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRunCommand",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "scriptUri": "https://gist.githubusercontent.com/myusername/75fd3634w7511116063c60bcc50bee0/raw/04a4c68ac9e1d36asfasdc64bd1d889b104c7abdb8/HelloWorld.ps1"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Succeeded",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_List.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_List.json
new file mode 100644
index 000000000000..ca51fba1e219
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_List.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myRunCommand",
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
+ "properties": {
+ "source": {
+ "script": "Write-Host Hello World! ; Remove-Item C:\test\testFile.txt"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 0,
+ "provisioningState": "Succeeded",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Update.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Update.json
new file mode 100644
index 000000000000..75ee8da7151a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Update.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "runCommandName": "myRunCommand",
+ "api-version": "2023-07-01",
+ "runCommand": {
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1",
+ "scriptUriManagedIdentity": {
+ "objectId": "4231e4d2-33e4-4e23-96b2-17888afa6072"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myRunCommand",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
+ "location": "westus",
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "source": {
+ "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
+ },
+ "parameters": [
+ {
+ "name": "param1",
+ "value": "value1"
+ },
+ {
+ "name": "param2",
+ "value": "value2"
+ }
+ ],
+ "asyncExecution": false,
+ "treatFailureAsDeploymentFailure": false,
+ "runAsUser": "user1",
+ "timeoutInSeconds": 3600,
+ "provisioningState": "Updating",
+ "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
+ "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Create.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Create.json
new file mode 100644
index 000000000000..c9a570aeb764
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Create.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "sshPublicKeyName": "mySshPublicKeyName",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "mySshPublicKeyName",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "mySshPublicKeyName",
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..3a549d18603c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Delete_MaximumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "sshPublicKeyName": "aaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..fe596ac4e667
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Delete_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "sshPublicKeyName": "aaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_GenerateKeyPair.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_GenerateKeyPair.json
new file mode 100644
index 000000000000..45b0c5208347
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_GenerateKeyPair.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "sshPublicKeyName": "mySshPublicKeyName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "privateKey": "{ssh private key}",
+ "publicKey": "{ssh-rsa public key}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Get.json
new file mode 100644
index 000000000000..ba567d1b8ea3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Get.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "sshPublicKeyName": "mySshPublicKeyName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "mySshPublicKeyName",
+ "location": "westus",
+ "tags": {
+ "{tagName}": "{tagValue}"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..591630fefe7d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MaximumSet_Gen.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName",
+ "name": "mySshPublicKeyName",
+ "type": "aaaa",
+ "tags": {
+ "key6396": "aaaaaaaaaaaaa",
+ "key8839": "aaa"
+ }
+ }
+ ],
+ "nextLink": "aaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MinimumSet_Gen.json
new file mode 100644
index 000000000000..94a1459e51cb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MinimumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MaximumSet_Gen.json
new file mode 100644
index 000000000000..cbc10da84d4a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MaximumSet_Gen.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName",
+ "name": "mySshPublicKeyName",
+ "type": "aaaa",
+ "tags": {
+ "key6396": "aaaaaaaaaaaaa",
+ "key8839": "aaa"
+ }
+ }
+ ],
+ "nextLink": "aaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MinimumSet_Gen.json
new file mode 100644
index 000000000000..5deaeea992bd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4f844c61c940
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Update_MaximumSet_Gen.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "sshPublicKeyName": "aaaaaaaaaaaa",
+ "parameters": {
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ },
+ "tags": {
+ "key2854": "a"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "properties": {
+ "publicKey": "{ssh-rsa public key}"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName",
+ "name": "mySshPublicKeyName",
+ "type": "aaaa",
+ "tags": {
+ "key6396": "aaaaaaaaaaaaa",
+ "key8839": "aaa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ccc5a3594e54
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/sshPublicKeyExamples/SshPublicKey_Update_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "sshPublicKeyName": "aaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..431101e9561d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,146 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmExtensionName": "aaaaaaaaaaaaa",
+ "extensionParameters": {
+ "location": "westus",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {},
+ "forceUpdateTag": "a",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "tags": {
+ "key9183": "aa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension",
+ "location": "westus",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {},
+ "forceUpdateTag": "a",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "tags": {
+ "key9183": "aa"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension",
+ "location": "westus",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {},
+ "forceUpdateTag": "a",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "tags": {
+ "key9183": "aa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MinimumSet_Gen.json
new file mode 100644
index 000000000000..50a54f927469
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MinimumSet_Gen.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "myVM",
+ "vmExtensionName": "myVMExtension",
+ "extensionParameters": {
+ "location": "westus"
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension"
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..28f7253a5eb7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaa",
+ "vmExtensionName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..007783f9af4a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Delete_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmExtensionName": "aa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Get_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c1e316374d00
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Get_MaximumSet_Gen.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmExtensionName": "aaaaaaa",
+ "$expand": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension",
+ "location": "westus",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {},
+ "forceUpdateTag": "a",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "tags": {
+ "key9183": "aa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Get_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Get_MinimumSet_Gen.json
new file mode 100644
index 000000000000..4dae297cac30
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Get_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "myVM",
+ "vmExtensionName": "myVMExtension",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..79162592592f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_List_MaximumSet_Gen.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaa",
+ "$expand": "aaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension",
+ "location": "westus",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {},
+ "forceUpdateTag": "a",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ },
+ "tags": {
+ "key9183": "aa"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b36841e31d29
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_List_MinimumSet_Gen.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Update.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Update.json
new file mode 100644
index 000000000000..0ce0ee03cddd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachineExtension_Update.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "vmExtensionName": "myVMExtension",
+ "api-version": "2023-07-01",
+ "extensionParameters": {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ },
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/myVMExtension",
+ "location": "westus",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "suppressFailures": true,
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ },
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_AssessPatches.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_AssessPatches.json
new file mode 100644
index 000000000000..89bc71b588b3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_AssessPatches.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroupName",
+ "vmName": "myVMName",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "Succeeded",
+ "assessmentActivityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "rebootPending": true,
+ "criticalAndSecurityPatchCount": 1,
+ "otherPatchCount": 2,
+ "startDateTime": "2020-04-24T21:02:04.2556154Z",
+ "availablePatches": [
+ {
+ "patchId": "35428702-5784-4ba4-a6e0-5222258b5411",
+ "name": "Definition Update for Windows Defender Antivirus - KB2267602 (Definition 1.279.1373.0)",
+ "version": "",
+ "kbId": "2267602",
+ "classifications": [
+ "Definition Updates"
+ ],
+ "rebootBehavior": "NeverReboots",
+ "activityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "publishedDate": "2018-11-07T00:00:00Z",
+ "lastModifiedDateTime": "2020-04-24T21:18:45.2830263Z",
+ "assessmentState": "Available"
+ },
+ {
+ "patchId": "39f9cdd1-795c-4d0e-8c0a-73ab3f31746d",
+ "name": "Windows Malicious Software Removal Tool x64 - October 2018 (KB890830)",
+ "version": "",
+ "kbId": "890830",
+ "classifications": [
+ "Update Rollups"
+ ],
+ "rebootBehavior": "CanRequestReboot",
+ "activityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "publishedDate": "2018-11-07T00:00:00Z",
+ "lastModifiedDateTime": "2020-04-24T21:18:45.2830263Z",
+ "assessmentState": "Available"
+ }
+ ],
+ "error": null
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Capture_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Capture_MaximumSet_Gen.json
new file mode 100644
index 000000000000..6f9b2abc5f8c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Capture_MaximumSet_Gen.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "vhdPrefix": "aaaaaaaaa",
+ "destinationContainerName": "aaaaaaa",
+ "overwriteVhds": true
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "$schema": "aaaaa",
+ "contentVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {},
+ "resources": [
+ {}
+ ],
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Capture_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Capture_MinimumSet_Gen.json
new file mode 100644
index 000000000000..930259c620f6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Capture_MinimumSet_Gen.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaa",
+ "parameters": {
+ "vhdPrefix": "aaaaaaaaa",
+ "destinationContainerName": "aaaaaaa",
+ "overwriteVhds": true
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MaximumSet_Gen.json
new file mode 100644
index 000000000000..17a986eaabee
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MinimumSet_Gen.json
new file mode 100644
index 000000000000..bb3bd2f7837f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_CustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_CustomImageVmFromAnUnmanagedGeneralizedOsImage.json
new file mode 100644
index 000000000000..9255249c3543
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_CustomImageVmFromAnUnmanagedGeneralizedOsImage.json
@@ -0,0 +1,145 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "{vm-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "osDisk": {
+ "name": "myVMosdisk",
+ "image": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd"
+ },
+ "osType": "Windows",
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd"
+ }
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "osDisk": {
+ "name": "myVMosdisk",
+ "image": {
+ "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Windows",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "osDisk": {
+ "name": "myVMosdisk",
+ "image": {
+ "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Windows",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromACommunityGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromACommunityGalleryImage.json
new file mode 100644
index 000000000000..95ce488a9f0d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromACommunityGalleryImage.json
@@ -0,0 +1,144 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "communityGalleryImageId": "/CommunityGalleries/galleryPublicName/Images/communityGalleryImageName/Versions/communityGalleryImageVersionName"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "communityGalleryImageId": "/CommunityGalleries/galleryPublicName/Images/communityGalleryImageName/Versions/communityGalleryImageVersionName"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "communityGalleryImageId": "/CommunityGalleries/galleryPublicName/Images/communityGalleryImageName/Versions/communityGalleryImageVersionName"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromACustomImage.json
new file mode 100644
index 000000000000..f26e6d3d960a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromACustomImage.json
@@ -0,0 +1,144 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromAGeneralizedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromAGeneralizedSharedImage.json
new file mode 100644
index 000000000000..877a8ff07a10
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromAGeneralizedSharedImage.json
@@ -0,0 +1,144 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromASharedGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromASharedGalleryImage.json
new file mode 100644
index 000000000000..e16b1b7f9230
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromASharedGalleryImage.json
@@ -0,0 +1,144 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sharedGalleryImageId": "/SharedGalleries/sharedGalleryName/Images/sharedGalleryImageName/Versions/sharedGalleryImageVersionName"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sharedGalleryImageId": "/SharedGalleries/sharedGalleryName/Images/sharedGalleryImageName/Versions/sharedGalleryImageVersionName"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sharedGalleryImageId": "/SharedGalleries/sharedGalleryName/Images/sharedGalleryImageName/Versions/sharedGalleryImageVersionName"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromASpecializedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromASpecializedSharedImage.json
new file mode 100644
index 000000000000..15e704bbcdd7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_FromASpecializedSharedImage.json
@@ -0,0 +1,123 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": []
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_InAVmssWithCustomerAssignedPlatformFaultDomain.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_InAVmssWithCustomerAssignedPlatformFaultDomain.json
new file mode 100644
index 000000000000..3b119834fd06
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_InAVmssWithCustomerAssignedPlatformFaultDomain.json
@@ -0,0 +1,165 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{existing-flex-vmss-name-with-platformFaultDomainCount-greater-than-1}"
+ },
+ "platformFaultDomain": 1
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "7cce54f2-ecd3-4ddd-a8d9-50984faa3918",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myExistingFlexVmss"
+ },
+ "platformFaultDomain": 1,
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "7cce54f2-ecd3-4ddd-a8d9-50984faa3918",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myExistingFlexVmss"
+ },
+ "platformFaultDomain": 1,
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_InAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_InAnAvailabilitySet.json
new file mode 100644
index 000000000000..605ca4e58389
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_InAnAvailabilitySet.json
@@ -0,0 +1,162 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithAutomaticByPlatformSettings.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithAutomaticByPlatformSettings.json
new file mode 100644
index 000000000000..479412d5f894
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithAutomaticByPlatformSettings.json
@@ -0,0 +1,178 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never",
+ "bypassPlatformSafetyChecksOnUserSchedule": true
+ }
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never",
+ "bypassPlatformSafetyChecksOnUserSchedule": true
+ }
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never",
+ "bypassPlatformSafetyChecksOnUserSchedule": true
+ }
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingAssessmentModeOfImageDefault.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingAssessmentModeOfImageDefault.json
new file mode 100644
index 000000000000..5b71cf53fa99
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingAssessmentModeOfImageDefault.json
@@ -0,0 +1,163 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModeOfImageDefault.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModeOfImageDefault.json
new file mode 100644
index 000000000000..f5052dcaae9a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModeOfImageDefault.json
@@ -0,0 +1,163 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModesOfAutomaticByPlatform.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModesOfAutomaticByPlatform.json
new file mode 100644
index 000000000000..b875b8a48e9c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModesOfAutomaticByPlatform.json
@@ -0,0 +1,166 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_PlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_PlatformImageVmWithUnmanagedOsAndDataDisks.json
new file mode 100644
index 000000000000..d82e1215d426
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_PlatformImageVmWithUnmanagedOsAndDataDisks.json
@@ -0,0 +1,213 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "{vm-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0,
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk0.vhd"
+ }
+ },
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 1,
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk1.vhd"
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "name": "dataDisk0",
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "caching": "None",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd"
+ },
+ "lun": 0
+ },
+ {
+ "name": "dataDisk1",
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "caching": "None",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd"
+ },
+ "lun": 1
+ }
+ ]
+ },
+ "vmId": "5230a749-2f68-4830-900b-702182d32e63",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "caching": "ReadWrite"
+ },
+ "dataDisks": [
+ {
+ "name": "dataDisk0",
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "caching": "None",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd"
+ },
+ "lun": 0
+ },
+ {
+ "name": "dataDisk1",
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "caching": "None",
+ "vhd": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd"
+ },
+ "lun": 1
+ }
+ ]
+ },
+ "vmId": "5230a749-2f68-4830-900b-702182d32e63",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithAutomaticByPlatformSettings.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithAutomaticByPlatformSettings.json
new file mode 100644
index 000000000000..d3b5743a670c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithAutomaticByPlatformSettings.json
@@ -0,0 +1,181 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never",
+ "bypassPlatformSafetyChecksOnUserSchedule": false
+ }
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never",
+ "bypassPlatformSafetyChecksOnUserSchedule": false
+ }
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never",
+ "bypassPlatformSafetyChecksOnUserSchedule": false
+ }
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingAssessmentModeOfImageDefault.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingAssessmentModeOfImageDefault.json
new file mode 100644
index 000000000000..92857a6a9faf
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingAssessmentModeOfImageDefault.json
@@ -0,0 +1,166 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": false,
+ "patchSettings": {
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByOS.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByOS.json
new file mode 100644
index 000000000000..f27a844a75f3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByOS.json
@@ -0,0 +1,166 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByOS"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByOS"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByOS"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json
new file mode 100644
index 000000000000..1184eb8b9cb1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json
@@ -0,0 +1,169 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "enableHotpatching": true
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "enableHotpatching": true
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "enableHotpatching": true
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfManual.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfManual.json
new file mode 100644
index 000000000000..17c4a5f8b745
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfManual.json
@@ -0,0 +1,166 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "Manual"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "Manual"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": false,
+ "patchSettings": {
+ "patchMode": "Manual"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModesOfAutomaticByPlatform.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModesOfAutomaticByPlatform.json
new file mode 100644
index 000000000000..813ae80aef82
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModesOfAutomaticByPlatform.json
@@ -0,0 +1,169 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "assessmentMode": "AutomaticByPlatform"
+ }
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDisk.json
new file mode 100644
index 000000000000..2fbe73f6968b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDisk.json
@@ -0,0 +1,177 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json
new file mode 100644
index 000000000000..73d02aacc509
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json
@@ -0,0 +1,180 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json
new file mode 100644
index 000000000000..9a84ccd3e12f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json
@@ -0,0 +1,180 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "ResourceDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "ResourceDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "ResourceDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithAMarketplaceImagePlan.json
new file mode 100644
index 000000000000..e9acbf0300a2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithAMarketplaceImagePlan.json
@@ -0,0 +1,168 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithApplicationProfile.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithApplicationProfile.json
new file mode 100644
index 000000000000..2a1df4c4fec0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithApplicationProfile.json
@@ -0,0 +1,208 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "{image_sku}",
+ "publisher": "{image_publisher}",
+ "version": "latest",
+ "offer": "{image_offer}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config",
+ "treatFailureAsDeploymentFailure": false,
+ "enableAutomaticUpgrade": false
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithBootDiagnostics.json
new file mode 100644
index 000000000000..69ca9b5b5453
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithBootDiagnostics.json
@@ -0,0 +1,171 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithCapacityReservation.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithCapacityReservation.json
new file mode 100644
index 000000000000..f3255fe0f97f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithCapacityReservation.json
@@ -0,0 +1,183 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithDiskControllerType.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithDiskControllerType.json
new file mode 100644
index 000000000000..e9bbd8ab1ea7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithDiskControllerType.json
@@ -0,0 +1,175 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D4_v3"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ },
+ "diskControllerType": "NVMe"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "userData": "U29tZSBDdXN0b20gRGF0YQ=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": [],
+ "diskControllerType": "NVMe"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D4_v3"
+ },
+ "provisioningState": "Updating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": [],
+ "diskControllerType": "NVMe"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D4_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithDiskEncryptionSetResource.json
new file mode 100644
index 000000000000..96aaa8572247
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithDiskEncryptionSetResource.json
@@ -0,0 +1,229 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ },
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}",
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Attach",
+ "lun": 1
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskencryptionset-name}"
+ }
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": [
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ },
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}",
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Attach",
+ "lun": 1
+ }
+ ]
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "name": "myVMosdisk",
+ "diskSizeGB": 30,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "osType": "Linux"
+ },
+ "dataDisks": [
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ },
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}",
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Attach",
+ "lun": 1
+ }
+ ]
+ },
+ "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithEmptyDataDisks.json
new file mode 100644
index 000000000000..0ec2f6731d05
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithEmptyDataDisks.json
@@ -0,0 +1,205 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ },
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 1
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023
+ }
+ ]
+ },
+ "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023,
+ "toBeDetached": false
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithEncryptionAtHost.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithEncryptionAtHost.json
new file mode 100644
index 000000000000..e54617402368
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithEncryptionAtHost.json
@@ -0,0 +1,177 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "securityProfile": {
+ "encryptionAtHost": true
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "encryptionAtHost": true
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "encryptionAtHost": true
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithExtensionsTimeBudget.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithExtensionsTimeBudget.json
new file mode 100644
index 000000000000..0956919ae0f1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithExtensionsTimeBudget.json
@@ -0,0 +1,174 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "extensionsTimeBudget": "PT30M"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "extensionsTimeBudget": "PT30M",
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "extensionsTimeBudget": "PT30M",
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithHibernationEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithHibernationEnabled.json
new file mode 100644
index 000000000000..eec77a6dca9c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithHibernationEnabled.json
@@ -0,0 +1,180 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "{vm-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "eastus2euap",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "additionalCapabilities": {
+ "hibernationEnabled": true
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2019-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "vmOSdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "{vm-name}",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "{vm-name}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2019-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "vmOSdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "additionalCapabilities": {
+ "hibernationEnabled": true
+ },
+ "provisioningState": "Updating"
+ },
+ "name": "{vm-name}",
+ "location": "eastus2euap"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "{vm-name}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2019-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "vmOSdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "additionalCapabilities": {
+ "hibernationEnabled": true
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "{vm-name}",
+ "location": "eastus2euap"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithManagedBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithManagedBootDiagnostics.json
new file mode 100644
index 000000000000..d132ef5fea14
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithManagedBootDiagnostics.json
@@ -0,0 +1,168 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfiguration.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfiguration.json
new file mode 100644
index 000000000000..18a05734fbe1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfiguration.json
@@ -0,0 +1,174 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkApiVersion": "2020-11-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nic-config-name}",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "ipConfigurations": [
+ {
+ "name": "{ip-config-name}",
+ "properties": {
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "{publicIP-config-name}",
+ "sku": {
+ "name": "Basic",
+ "tier": "Global"
+ },
+ "properties": {
+ "deleteOption": "Detach",
+ "publicIPAllocationMethod": "Static"
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/toBeCreatedNetworkInterface",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/toBeCreatedNetworkInterface",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfigurationDnsSettings.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfigurationDnsSettings.json
new file mode 100644
index 000000000000..6bada8ac3d6d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfigurationDnsSettings.json
@@ -0,0 +1,178 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkApiVersion": "2020-11-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nic-config-name}",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "ipConfigurations": [
+ {
+ "name": "{ip-config-name}",
+ "properties": {
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "{publicIP-config-name}",
+ "sku": {
+ "name": "Basic",
+ "tier": "Global"
+ },
+ "properties": {
+ "deleteOption": "Detach",
+ "publicIPAllocationMethod": "Static",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaa",
+ "domainNameLabelScope": "TenantReuse"
+ }
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/toBeCreatedNetworkInterface",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/toBeCreatedNetworkInterface",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithPasswordAuthentication.json
new file mode 100644
index 000000000000..ed40cee82c48
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithPasswordAuthentication.json
@@ -0,0 +1,153 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithPremiumStorage.json
new file mode 100644
index 000000000000..a776597fbfb8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithPremiumStorage.json
@@ -0,0 +1,153 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "a149cd25-409f-41af-8088-275f5486bc93",
+ "hardwareProfile": {
+ "vmSize": "Standard_DS1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithScheduledEventsProfile.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithScheduledEventsProfile.json
new file mode 100644
index 000000000000..7516bb873652
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithScheduledEventsProfile.json
@@ -0,0 +1,201 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVM.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVM.json
new file mode 100644
index 000000000000..9b9ea96841f4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVM.json
@@ -0,0 +1,181 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DC2as_v5"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "DiskWithVMGuestState"
+ }
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "DiskWithVMGuestState"
+ }
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DC2as_v5"
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "DiskWithVMGuestState"
+ }
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DC2as_v5"
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVMWithCustomerManagedKeys.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVMWithCustomerManagedKeys.json
new file mode 100644
index 000000000000..14c5dcbca898
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVMWithCustomerManagedKeys.json
@@ -0,0 +1,190 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_DC2as_v5"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "DiskWithVMGuestState",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ }
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "DiskWithVMGuestState",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ }
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DC2as_v5"
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "DiskWithVMGuestState",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ }
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_DC2as_v5"
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSshAuthentication.json
new file mode 100644
index 000000000000..bfd7e868be86
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithSshAuthentication.json
@@ -0,0 +1,177 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "{image_sku}",
+ "publisher": "{image_publisher}",
+ "version": "latest",
+ "offer": "{image_offer}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "osType": "Linux",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithUefiSettings.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithUefiSettings.json
new file mode 100644
index 000000000000..7cdf130c68cb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithUefiSettings.json
@@ -0,0 +1,174 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows10-tvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "18363.592.2001092016",
+ "offer": "windowsserver-gen2preview-preview"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ }
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows10-tvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "18363.592.2001092016",
+ "offer": "windowsserver-gen2preview-preview"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myVM",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows10-tvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "18363.592.2001092016",
+ "offer": "windowsserver-gen2preview-preview"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS"
+ },
+ "createOption": "FromImage",
+ "name": "myVMosdisk"
+ },
+ "dataDisks": []
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "provisioningState": "Creating"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithUserData.json
new file mode 100644
index 000000000000..66c0d9a055ee
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithUserData.json
@@ -0,0 +1,172 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "{vm-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "vmOSdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "{vm-name}",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "{vm-name}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "vmOSdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "{vm-name}",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "{vm-name}",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "vmOSdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D1_v2"
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "{vm-name}",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithVMSizeProperties.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithVMSizeProperties.json
new file mode 100644
index 000000000000..2788b9529caa
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Create_WithVMSizeProperties.json
@@ -0,0 +1,184 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D4_v3",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "userData": "U29tZSBDdXN0b20gRGF0YQ=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D4_v3",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "provisioningState": "Updating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": []
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa",
+ "hardwareProfile": {
+ "vmSize": "Standard_D4_v3",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Deallocate_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Deallocate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4ae7c5af5475
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Deallocate_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaa",
+ "hibernate": true,
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Deallocate_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Deallocate_MinimumSet_Gen.json
new file mode 100644
index 000000000000..f4d6975acd44
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Deallocate_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Delete_Force.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Delete_Force.json
new file mode 100644
index 000000000000..1f733290fb1d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Delete_Force.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "forceDeletion": "true",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Generalize.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Generalize.json
new file mode 100644
index 000000000000..5825f491c2d3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Generalize.json
@@ -0,0 +1,11 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "myVMName"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get.json
new file mode 100644
index 000000000000..705538c34013
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get.json
@@ -0,0 +1,135 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "$expand": "userData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "West US",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet"
+ },
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/my-ppg01"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_DS3_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2016-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "myOsDisk",
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"
+ },
+ "diskSizeGB": 30
+ },
+ "dataDisks": [
+ {
+ "lun": 0,
+ "name": "myDataDisk0",
+ "createOption": "Empty",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0"
+ },
+ "diskSizeGB": 30
+ },
+ {
+ "lun": 1,
+ "name": "myDataDisk1",
+ "createOption": "Attach",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1"
+ },
+ "diskSizeGB": 100
+ }
+ ]
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerName": "myVM",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": false
+ },
+ "secrets": []
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}"
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "http://{myStorageAccount}.blob.core.windows.net"
+ }
+ },
+ "extensionsTimeBudget": "PT50M",
+ "provisioningState": "Succeeded",
+ "timeCreated": "2021-06-27T01:02:38.3138469+00:00"
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "west us",
+ "tags": {
+ "displayName": "CustomScriptExtension-DSC"
+ },
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_AutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_AutoPlacedOnDedicatedHostGroup.json
new file mode 100644
index 000000000000..18ae2b95c3a8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_AutoPlacedOnDedicatedHostGroup.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "West US",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1",
+ "hostGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_D2s_v3"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2016-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "myOsDisk",
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"
+ },
+ "diskSizeGB": 30
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "myVM",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": false
+ },
+ "secrets": []
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_InstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_InstanceView.json
new file mode 100644
index 000000000000..95b0ae2b21d2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_InstanceView.json
@@ -0,0 +1,138 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "myVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "platformUpdateDomain": 1,
+ "platformFaultDomain": 1,
+ "computerName": "myVM",
+ "osName": "Windows Server 2016 Datacenter",
+ "osVersion": "Microsoft Windows NT 10.0.14393.0",
+ "vmAgent": {
+ "vmAgentVersion": "2.7.41491.949",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Ready",
+ "message": "GuestAgent is running and accepting new configurations.",
+ "time": "2019-10-14T23:11:22+00:00"
+ }
+ ],
+ "extensionHandlers": [
+ {
+ "type": "Microsoft.Azure.Security.IaaSAntimalware",
+ "typeHandlerVersion": "1.5.5.9",
+ "status": {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Ready"
+ }
+ }
+ ]
+ },
+ "disks": [
+ {
+ "name": "myOsDisk",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2019-10-14T21:29:47.477089+00:00"
+ }
+ ]
+ },
+ {
+ "name": "myDataDisk0",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2019-10-14T21:29:47.461517+00:00"
+ }
+ ]
+ }
+ ],
+ "bootDiagnostics": {
+ "consoleScreenshotBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.screenshot.bmp",
+ "serialConsoleLogBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.serialconsole.log"
+ },
+ "extensions": [
+ {
+ "name": "IaaSAntiMalware-ext0",
+ "type": "Microsoft.Azure.Security.IaaSAntimalware",
+ "typeHandlerVersion": "1.5.5.9",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": "Microsoft Antimalware enabled"
+ }
+ ]
+ }
+ ],
+ "hyperVGeneration": "V1",
+ "patchStatus": {
+ "availablePatchSummary": {
+ "status": "Succeeded",
+ "assessmentActivityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "rebootPending": true,
+ "criticalAndSecurityPatchCount": 1,
+ "otherPatchCount": 2,
+ "startTime": "2020-04-24T21:02:04.2556154Z",
+ "lastModifiedTime": "2020-04-24T21:02:04.2556154Z",
+ "error": null
+ },
+ "lastPatchInstallationSummary": {
+ "status": "Succeeded",
+ "installationActivityId": "68f8b292-dfc2-4646-9981-33cc88631968",
+ "maintenanceWindowExceeded": false,
+ "notSelectedPatchCount": 1,
+ "excludedPatchCount": 1,
+ "pendingPatchCount": 1,
+ "installedPatchCount": 1,
+ "failedPatchCount": 1,
+ "startTime": "2020-04-24T21:02:04.2556154Z",
+ "lastModifiedTime": "2020-04-24T21:02:04.2556154Z",
+ "error": null
+ },
+ "configurationStatuses": [
+ {
+ "code": "PatchModeConfigurationState/Ready",
+ "level": "Info",
+ "displayStatus": "Status_PatchModeConfigurationState_Ready",
+ "time": "2020-04-24T21:02:04.2556154Z"
+ },
+ {
+ "code": "AssessmentModeConfigurationState/Pending",
+ "level": "Info",
+ "displayStatus": "Status_AssessmentModeConfigurationState_Pending",
+ "time": "2020-04-24T21:02:04.2556154Z"
+ }
+ ]
+ },
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2019-10-14T21:30:12.8051917+00:00"
+ },
+ {
+ "code": "PowerState/running",
+ "level": "Info",
+ "displayStatus": "VM running"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json
new file mode 100644
index 000000000000..8935d2c6a9b4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "myVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "computerName": "myVM",
+ "osName": "Windows Server 2016 Datacenter",
+ "osVersion": "Microsoft Windows NT 10.0.14393.0",
+ "vmAgent": {
+ "vmAgentVersion": "2.7.41491.949",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Ready",
+ "message": "GuestAgent is running and accepting new configurations.",
+ "time": "2023-07-01T23:11:22+00:00"
+ }
+ ]
+ },
+ "disks": [
+ {
+ "name": "myOsDisk",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2023-07-01T21:29:47.477089+00:00"
+ }
+ ]
+ }
+ ],
+ "hyperVGeneration": "V1",
+ "assignedHost": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup/hosts/myHost",
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2023-07-01T21:30:12.8051917+00:00"
+ },
+ {
+ "code": "PowerState/running",
+ "level": "Info",
+ "displayStatus": "VM running"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_WithDiskControllerType.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_WithDiskControllerType.json
new file mode 100644
index 000000000000..a7eabb6f3168
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_WithDiskControllerType.json
@@ -0,0 +1,136 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "$expand": "userData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "West US",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_DS3_v2",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2016-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "myOsDisk",
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"
+ },
+ "diskSizeGB": 30
+ },
+ "dataDisks": [
+ {
+ "lun": 0,
+ "name": "myDataDisk0",
+ "createOption": "Empty",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0"
+ },
+ "diskSizeGB": 30
+ },
+ {
+ "lun": 1,
+ "name": "myDataDisk1",
+ "createOption": "Attach",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1"
+ },
+ "diskSizeGB": 100
+ }
+ ],
+ "diskControllerType": "NVMe"
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerName": "myVM",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": false
+ },
+ "secrets": []
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}"
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "http://{myStorageAccount}.blob.core.windows.net"
+ }
+ },
+ "extensionsTimeBudget": "PT50M",
+ "provisioningState": "Succeeded"
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "west us",
+ "tags": {
+ "displayName": "CustomScriptExtension-DSC"
+ },
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_WithVMSizeProperties.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_WithVMSizeProperties.json
new file mode 100644
index 000000000000..1ba001cac222
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Get_WithVMSizeProperties.json
@@ -0,0 +1,135 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "expand": "UserData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVM",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "West US",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_DS3_v2",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2016-Datacenter",
+ "version": "latest"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "myOsDisk",
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"
+ },
+ "diskSizeGB": 30
+ },
+ "dataDisks": [
+ {
+ "lun": 0,
+ "name": "myDataDisk0",
+ "createOption": "Empty",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0"
+ },
+ "diskSizeGB": 30
+ },
+ {
+ "lun": 1,
+ "name": "myDataDisk1",
+ "createOption": "Attach",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1"
+ },
+ "diskSizeGB": 100
+ }
+ ]
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerName": "myVM",
+ "adminUsername": "admin",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": false
+ },
+ "secrets": []
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}"
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "http://{myStorageAccount}.blob.core.windows.net"
+ }
+ },
+ "extensionsTimeBudget": "PT50M",
+ "provisioningState": "Succeeded"
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "west us",
+ "tags": {
+ "displayName": "CustomScriptExtension-DSC"
+ },
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_InstallPatches.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_InstallPatches.json
new file mode 100644
index 000000000000..8b2a42801981
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_InstallPatches.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroupName",
+ "vmName": "myVMName",
+ "api-version": "2023-07-01",
+ "installPatchesInput": {
+ "maximumDuration": "PT4H",
+ "rebootSetting": "IfRequired",
+ "windowsParameters": {
+ "classificationsToInclude": [
+ "Critical",
+ "Security"
+ ],
+ "maxPatchPublishDate": "2020-11-19T02:36:43.0539904+00:00"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "Succeeded",
+ "installationActivityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "rebootStatus": "Completed",
+ "maintenanceWindowExceeded": false,
+ "excludedPatchCount": 0,
+ "notSelectedPatchCount": 0,
+ "pendingPatchCount": 2,
+ "installedPatchCount": 3,
+ "failedPatchCount": 0,
+ "startDateTime": "2020-04-24T21:02:04.2556154Z",
+ "patches": [
+ {
+ "patchId": "35428702-5784-4ba4-a6e0-5222258b5411",
+ "name": "Definition Update for Windows Defender Antivirus - KB2267602 (Definition 1.279.1373.0)",
+ "version": "",
+ "kbId": "2267602",
+ "classifications": [
+ "Definition Updates"
+ ],
+ "installationState": "Installed"
+ },
+ {
+ "patchId": "39f9cdd1-795c-4d0e-8c0a-73ab3f31746d",
+ "name": "Windows Malicious Software Removal Tool x64 - October 2018 (KB890830)",
+ "version": "",
+ "kbId": "890830",
+ "classifications": [
+ "Update Rollups"
+ ],
+ "installationState": "Pending"
+ }
+ ],
+ "error": null
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAll_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAll_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b445e3d0a874
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAll_MaximumSet_Gen.json
@@ -0,0 +1,693 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}",
+ "statusOnly": "aaaaaa",
+ "$filter": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "vmId": "{vmId}",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 7,
+ "vCPUsPerCore": 14
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20170406",
+ "exactVersion": "aaaaaaaaaaaaa",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaa",
+ "communityGalleryImageId": "aaaa",
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "test",
+ "createOption": "FromImage",
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "caching": "None",
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "Test",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "customData": "aaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaaaaaaaaaaaaaaaaaaaaa",
+ "keyData": "aaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "requireGuestProvisionSignal": true
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2022-05-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "disableTcpStateTracking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 23,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaa",
+ "domainNameLabelScope": "TenantReuse"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 26
+ },
+ "host": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaaaaaaa",
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "platformFaultDomain": 8,
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ },
+ "userData": "aaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaa",
+ "order": 4,
+ "packageReferenceId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "configurationReference": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "timeCreated": "2022-01-14T16:43:41.683Z"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "eastus",
+ "tags": {},
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}",
+ "name": "{virtualMachineName}",
+ "plan": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaa"
+ },
+ "resources": [
+ {
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "suppressFailures": true,
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaa",
+ "tags": {
+ "key9428": "aaaaaaa"
+ }
+ }
+ ],
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaaa",
+ "tenantId": "aaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key5688": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "clientId": "aaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaa",
+ "type": "EdgeZone"
+ }
+ },
+ {
+ "properties": {
+ "vmId": "{vmId}",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 7,
+ "vCPUsPerCore": 14
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20170406",
+ "exactVersion": "aa",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "communityGalleryImageId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "test",
+ "createOption": "FromImage",
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "caching": "None",
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "Test",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "customData": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaaaaaaaaaaaaaaaaaaaaa",
+ "keyData": "aaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "requireGuestProvisionSignal": true
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2022-05-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "disableTcpStateTracking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 23,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaa",
+ "domainNameLabelScope": "SubscriptionReuse"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 26
+ },
+ "host": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaaaaaa",
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaa",
+ "platformFaultDomain": 11,
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ },
+ "userData": "aaaaaaaaaaaaaaaaaaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaa",
+ "order": 4,
+ "packageReferenceId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "configurationReference": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "timeCreated": "2022-01-14T16:43:41.685Z"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "eastus",
+ "tags": {},
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}",
+ "name": "{virtualMachineName}",
+ "plan": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaa"
+ },
+ "resources": [
+ {
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "suppressFailures": true,
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaa",
+ "tags": {
+ "key9428": "aaaaaaa"
+ }
+ }
+ ],
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaaa",
+ "tenantId": "aaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key5688": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "clientId": "aaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaa",
+ "type": "EdgeZone"
+ }
+ }
+ ],
+ "nextLink": "a"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAll_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAll_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ffc277233776
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAll_MinimumSet_Gen.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "eastus",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}"
+ },
+ {
+ "location": "eastus",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAvailableVmSizes.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAvailableVmSizes.json
new file mode 100644
index 000000000000..b9c260d90625
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListAvailableVmSizes.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVmName",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Standard_A1_V2",
+ "numberOfCores": 1,
+ "osDiskSizeInMB": 1047552,
+ "resourceDiskSizeInMB": 10240,
+ "memoryInMB": 2048,
+ "maxDataDiskCount": 2
+ },
+ {
+ "name": "Standard_A2_V2",
+ "numberOfCores": 2,
+ "osDiskSizeInMB": 1047552,
+ "resourceDiskSizeInMB": 20480,
+ "memoryInMB": 4096,
+ "maxDataDiskCount": 4
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListBySubscription_ByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListBySubscription_ByLocation.json
new file mode 100644
index 000000000000..cd113a1af6c2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_ListBySubscription_ByLocation.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "location": "eastus",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "vmId": "{vmId}",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_A0"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20170406"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "test",
+ "createOption": "FromImage",
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "caching": "None",
+ "diskSizeGB": 127
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "Test",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "eastus",
+ "tags": {
+ "RG": "rg",
+ "testTag": "1"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}",
+ "name": "{virtualMachineName}"
+ },
+ {
+ "properties": {
+ "vmId": "{vmId}",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_A0"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20170406"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "test",
+ "createOption": "FromImage",
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "caching": "None",
+ "diskSizeGB": 127
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "Test",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}"
+ }
+ ]
+ },
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "eastus",
+ "tags": {
+ "RG": "rg",
+ "testTag": "1"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}",
+ "name": "{virtualMachineName}"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..20f39827718c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_List_MaximumSet_Gen.json
@@ -0,0 +1,930 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "$filter": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "vmId": "{vmId}",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 7,
+ "vCPUsPerCore": 14
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20170406",
+ "exactVersion": "aaaaaaaaaaaaa",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaa",
+ "communityGalleryImageId": "aaaa",
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "test",
+ "createOption": "FromImage",
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "caching": "None",
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "Test",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "customData": "aaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaaaaaaaaaaaaaaaaaaaaa",
+ "keyData": "aaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "requireGuestProvisionSignal": true
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2022-05-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "disableTcpStateTracking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 23,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 26
+ },
+ "host": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaaaaaaa",
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "platformFaultDomain": 8,
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ },
+ "userData": "aaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaa",
+ "order": 4,
+ "packageReferenceId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "configurationReference": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "timeCreated": "2022-01-14T16:43:41.683Z"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "eastus",
+ "tags": {},
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}",
+ "name": "{virtualMachineName}",
+ "plan": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaa"
+ },
+ "resources": [
+ {
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaaa",
+ "substatuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ]
+ },
+ "suppressFailures": true,
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaa",
+ "tags": {
+ "key9428": "aaaaaaa"
+ }
+ }
+ ],
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaaa",
+ "tenantId": "aaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key5688": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "clientId": "aaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaa",
+ "type": "EdgeZone"
+ }
+ },
+ {
+ "properties": {
+ "vmId": "{vmId}",
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hardwareProfile": {
+ "vmSize": "Standard_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 7,
+ "vCPUsPerCore": 14
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20170406",
+ "exactVersion": "aa",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "communityGalleryImageId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "test",
+ "createOption": "FromImage",
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "caching": "None",
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerName": "Test",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "customData": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaaaaaaaaaaaaaaaaaaaaa",
+ "keyData": "aaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "requireGuestProvisionSignal": true
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2022-05-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "disableTcpStateTracking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 23,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "virtualMachineScaleSet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 26
+ },
+ "host": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "instanceView": {
+ "platformUpdateDomain": 1,
+ "platformFaultDomain": 29,
+ "computerName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "osName": "aaaaaaaaaaa",
+ "osVersion": "aaaaaaaaaaaaaa",
+ "hyperVGeneration": "V1",
+ "rdpThumbPrint": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "vmAgent": {
+ "vmAgentVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "extensionHandlers": [
+ {
+ "type": "aaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaa",
+ "status": {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ]
+ },
+ "maintenanceRedeployStatus": {
+ "isCustomerInitiatedMaintenanceAllowed": true,
+ "preMaintenanceWindowStartTime": "2022-01-14T16:43:41.682Z",
+ "preMaintenanceWindowEndTime": "2022-01-14T16:43:41.682Z",
+ "maintenanceWindowStartTime": "2022-01-14T16:43:41.682Z",
+ "maintenanceWindowEndTime": "2022-01-14T16:43:41.682Z",
+ "lastOperationResultCode": "None",
+ "lastOperationMessage": "aa"
+ },
+ "disks": [
+ {
+ "name": "a",
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ]
+ }
+ ],
+ "extensions": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaaa",
+ "substatuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ]
+ }
+ ],
+ "vmHealth": {
+ "status": {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ },
+ "bootDiagnostics": {
+ "consoleScreenshotBlobUri": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "serialConsoleLogBlobUri": "aaaaaaaaaaaaaaaaaaa",
+ "status": {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ },
+ "assignedHost": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "statuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ],
+ "patchStatus": {
+ "availablePatchSummary": {
+ "status": "Unknown",
+ "assessmentActivityId": "aaaaaaaaaaaaaaaaaaa",
+ "rebootPending": true,
+ "criticalAndSecurityPatchCount": 22,
+ "otherPatchCount": 25,
+ "startTime": "2022-01-14T16:43:41.682Z",
+ "lastModifiedTime": "2022-01-14T16:43:41.683Z",
+ "error": {
+ "details": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaa",
+ "target": "aaaaaa",
+ "message": "aaaaaaaaaaaaa"
+ }
+ ],
+ "innererror": {
+ "exceptiontype": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "errordetail": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "code": "aaaaaa",
+ "target": "aaaaaaaaa",
+ "message": "aaa"
+ }
+ },
+ "lastPatchInstallationSummary": {
+ "status": "Unknown",
+ "installationActivityId": "aaaaaa",
+ "maintenanceWindowExceeded": true,
+ "notSelectedPatchCount": 20,
+ "excludedPatchCount": 1,
+ "pendingPatchCount": 2,
+ "installedPatchCount": 28,
+ "failedPatchCount": 30,
+ "startTime": "2022-01-14T16:43:41.683Z",
+ "lastModifiedTime": "2022-01-14T16:43:41.683Z",
+ "error": {
+ "details": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaa",
+ "target": "aaaaaa",
+ "message": "aaaaaaaaaaaaa"
+ }
+ ],
+ "innererror": {
+ "exceptiontype": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "errordetail": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "code": "aaaaaa",
+ "target": "aaaaaaaaa",
+ "message": "aaa"
+ }
+ },
+ "configurationStatuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ]
+ }
+ },
+ "licenseType": "aaaaaaaaaaaaaa",
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaa",
+ "platformFaultDomain": 11,
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ },
+ "osImageNotificationProfile": {
+ "notBeforeTimeout": "PT15M",
+ "enable": true
+ }
+ },
+ "userData": "aaaaaaaaaaaaaaaaaaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaa",
+ "order": 4,
+ "packageReferenceId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "configurationReference": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "timeCreated": "2022-01-14T16:43:41.685Z"
+ },
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "eastus",
+ "tags": {},
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}",
+ "name": "{virtualMachineName}",
+ "plan": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaa"
+ },
+ "resources": [
+ {
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaaa",
+ "substatuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaa",
+ "level": "Info",
+ "displayStatus": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "message": "aaaaaaaaaaaaaaaaaaa",
+ "time": "2022-01-14T16:43:41.657Z"
+ }
+ ]
+ },
+ "suppressFailures": true,
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaa",
+ "tags": {
+ "key9428": "aaaaaaa"
+ }
+ }
+ ],
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaaa",
+ "tenantId": "aaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key5688": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "clientId": "aaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaa",
+ "type": "EdgeZone"
+ }
+ }
+ ],
+ "nextLink": "a"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..3a3a76f22777
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_List_MinimumSet_Gen.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "eastus",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}"
+ },
+ {
+ "location": "eastus",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MaximumSet_Gen.json
new file mode 100644
index 000000000000..17a986eaabee
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b74a988c5bd3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PowerOff_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PowerOff_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7283a51c3e1c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PowerOff_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "skipShutdown": true,
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PowerOff_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PowerOff_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ce3ab01198cd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_PowerOff_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reapply.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reapply.json
new file mode 100644
index 000000000000..68a7a390705c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reapply.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "VMName"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Redeploy_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Redeploy_MaximumSet_Gen.json
new file mode 100644
index 000000000000..224136e0ead4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Redeploy_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "a",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Redeploy_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Redeploy_MinimumSet_Gen.json
new file mode 100644
index 000000000000..22d46dfa156a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Redeploy_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reimage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reimage.json
new file mode 100644
index 000000000000..2e8733347cde
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reimage.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "myVMName",
+ "parameters": {
+ "tempDisk": true
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reimage_NonEphemeralVMs.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reimage_NonEphemeralVMs.json
new file mode 100644
index 000000000000..81f31fb0c55e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Reimage_NonEphemeralVMs.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "myVMName",
+ "parameters": {
+ "tempDisk": true,
+ "exactVersion": "aaaaaa",
+ "osProfile": {
+ "adminPassword": "{your-password}",
+ "customData": "{your-custom-data}"
+ }
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Restart_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Restart_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7ad3d9a42a10
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Restart_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Restart_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Restart_MinimumSet_Gen.json
new file mode 100644
index 000000000000..846a50cb80ab
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Restart_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_RetrieveBootDiagnosticsData.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_RetrieveBootDiagnosticsData.json
new file mode 100644
index 000000000000..50ac8f853b76
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_RetrieveBootDiagnosticsData.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "VMName",
+ "sasUriExpirationTimeInMinutes": 60
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "consoleScreenshotBlobUri": "https://storageuri/vm.screenshot.bmp?{sasKey}",
+ "serialConsoleLogBlobUri": "https://storageuri/vm.serialconsole.log?{sasKey}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_SimulateEviction.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_SimulateEviction.json
new file mode 100644
index 000000000000..66d327290ec2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_SimulateEviction.json
@@ -0,0 +1,11 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ResourceGroup",
+ "api-version": "2023-07-01",
+ "vmName": "VMName"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Start_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Start_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7ad3d9a42a10
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Start_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Start_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Start_MinimumSet_Gen.json
new file mode 100644
index 000000000000..abd8e7fedb50
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Start_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmName": "aaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Update_DetachDataDiskUsingToBeDetachedProperty.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Update_DetachDataDiskUsingToBeDetachedProperty.json
new file mode 100644
index 000000000000..82aa2c2e9309
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Update_DetachDataDiskUsingToBeDetachedProperty.json
@@ -0,0 +1,135 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0,
+ "toBeDetached": true
+ },
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 1,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023,
+ "toBeDetached": true
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "provisioningState": "Updating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Update_ForceDetachDataDisk.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Update_ForceDetachDataDisk.json
new file mode 100644
index 000000000000..9d72fd965697
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExamples/VirtualMachine_Update_ForceDetachDataDisk.json
@@ -0,0 +1,137 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmName": "myVM",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "name": "myVMosdisk",
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0,
+ "toBeDetached": true,
+ "detachOption": "ForceDetach"
+ },
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 1,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "computerName": "myVM",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
+ "type": "Microsoft.Compute/virtualMachines",
+ "properties": {
+ "osProfile": {
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "computerName": "myVM",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic",
+ "properties": {
+ "primary": true
+ }
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "myVMosdisk",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ }
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023,
+ "toBeDetached": true,
+ "detachOption": "ForceDetach"
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0",
+ "hardwareProfile": {
+ "vmSize": "Standard_D2_v2"
+ },
+ "provisioningState": "Updating"
+ },
+ "name": "myVM",
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c035f877daa9
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MaximumSet_Gen.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaa",
+ "version": "aaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "operatingSystem": "aaaaaaaaaaaaaaaaaa",
+ "computeRole": "aaaaaaaaaaaaaaaaa",
+ "handlerSchema": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmScaleSetEnabled": true,
+ "supportsMultipleExtensions": true
+ },
+ "id": "aaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa",
+ "tags": {
+ "key9885": "aaaaaaaaa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MinimumSet_Gen.json
new file mode 100644
index 000000000000..709e657a29c5
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MinimumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "type": "aa",
+ "version": "aaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "aaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MaximumSet_Gen.json
new file mode 100644
index 000000000000..2d029b5dde22
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MaximumSet_Gen.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "properties": {
+ "operatingSystem": "aaaaaaaaaaaaaaaaaa",
+ "computeRole": "aaaaaaaaaaaaaaaaa",
+ "handlerSchema": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmScaleSetEnabled": true,
+ "supportsMultipleExtensions": true
+ },
+ "id": "aaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa",
+ "tags": {
+ "key9885": "aaaaaaaaa"
+ }
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MinimumSet_Gen.json
new file mode 100644
index 000000000000..47ef794b39cf
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MinimumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "location": "aaaa",
+ "publisherName": "aa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7294a29884a9
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MaximumSet_Gen.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaa",
+ "$filter": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "$top": 22,
+ "$orderby": "a",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "properties": {
+ "operatingSystem": "aaaaaaaaaaaaaaaaaa",
+ "computeRole": "aaaaaaaaaaaaaaaaa",
+ "handlerSchema": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmScaleSetEnabled": true,
+ "supportsMultipleExtensions": true
+ },
+ "id": "aaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa",
+ "tags": {
+ "key9885": "aaaaaaaaa"
+ }
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MinimumSet_Gen.json
new file mode 100644
index 000000000000..1658c62d02d2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MinimumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "type": "aaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_Get_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7a0075c19754
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_Get_MaximumSet_Gen.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "location": "aaaaaa",
+ "publisherName": "aaa",
+ "offer": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "skus": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "version": "aaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "plan": {
+ "publisher": "aaaaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaa",
+ "product": "aaaaaaaaaaaaaa"
+ },
+ "osDiskImage": {
+ "operatingSystem": "Windows"
+ },
+ "dataDiskImages": [
+ {
+ "lun": 17
+ }
+ ],
+ "automaticOSUpgradeProperties": {
+ "automaticOSUpgradeSupported": true
+ },
+ "hyperVGeneration": "V1",
+ "disallowed": {
+ "vmDiskType": "None"
+ },
+ "features": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "value": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "imageDeprecationStatus": {
+ "imageState": "ScheduledForDeprecation",
+ "scheduledDeprecationTime": "2023-01-13T00:00:00+00:00",
+ "alternativeOption": {
+ "type": "Offer",
+ "value": "aaaaaaa"
+ }
+ }
+ },
+ "name": "aaaaaaaaa",
+ "location": "aaaaa",
+ "tags": {
+ "key6817": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_Get_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_Get_MinimumSet_Gen.json
new file mode 100644
index 000000000000..35739395bbec
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_Get_MinimumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaa",
+ "offer": "aa",
+ "skus": "aaaaaaaaa",
+ "version": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "aaaaaaaaa",
+ "location": "aaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MaximumSet_Gen.json
new file mode 100644
index 000000000000..0fac384c2085
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MaximumSet_Gen.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "location": "aaaaaaa",
+ "publisherName": "aaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b4a2c5bc9be7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MinimumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4245a813342f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MaximumSet_Gen.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "location": "aaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MinimumSet_Gen.json
new file mode 100644
index 000000000000..9c49e2398542
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MaximumSet_Gen.json
new file mode 100644
index 000000000000..18947bcebb15
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MaximumSet_Gen.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "location": "aaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "offer": "aaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ba4a97ad8f96
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MinimumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "location": "aaaa",
+ "publisherName": "aaaaaaaaaaaaa",
+ "offer": "aaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..87e61ea0ff18
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_List_MaximumSet_Gen.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaa",
+ "offer": "aaaaaaaaaaaaaaaa",
+ "skus": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "$expand": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "$top": 18,
+ "$orderby": "aa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..6ac64aa8a158
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImage_List_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "location": "aaaaaaa",
+ "publisherName": "aaaaaaaaaaa",
+ "offer": "aaaaaaaaaa",
+ "skus": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d97dab0b77c6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MaximumSet_Gen.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "edgeZone": "aaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "offer": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "skus": "aaaaaaaaaa",
+ "version": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "plan": {
+ "publisher": "aaaaaaaaaaaaaaaaaaa",
+ "name": "aaaaaaaaa",
+ "product": "aaaaaaaaaaaaaa"
+ },
+ "osDiskImage": {
+ "operatingSystem": "Windows"
+ },
+ "dataDiskImages": [
+ {
+ "lun": 17
+ }
+ ],
+ "automaticOSUpgradeProperties": {
+ "automaticOSUpgradeSupported": true
+ },
+ "hyperVGeneration": "V1",
+ "disallowed": {
+ "vmDiskType": "None"
+ },
+ "features": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "value": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "name": "aaaaaaaaa",
+ "location": "aaaaa",
+ "tags": {
+ "key6817": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a068ee597685
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "offer": "aaaaaaaaaaa",
+ "skus": "aaaaaaaaaaaaaaaaaa",
+ "version": "aa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "aaaaaaaaa",
+ "location": "aaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MaximumSet_Gen.json
new file mode 100644
index 000000000000..f611a2d5fed8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MaximumSet_Gen.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "location": "WestUS",
+ "edgeZone": "microsoftlosangeles1",
+ "api-version": "2023-07-01",
+ "subscriptionId": "5ece5940-d962-4dad-a98f-ca9ac0f021a5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "18.04.202107200",
+ "location": "WestUS",
+ "extendedLocation": {
+ "name": "microsoftlosangeles1",
+ "type": "EdgeZone"
+ },
+ "id": "/Subscriptions/5ece5940-d962-4dad-a98f-ca9ac0f021a5/Providers/Microsoft.Compute/Locations/westus/Publishers/CANONICAL/ArtifactTypes/VMImage/Offers/UBUNTUSERVER/Skus/18_04-LTS-GEN2/Versions/18.04.202107200"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a55ddbfec102
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MinimumSet_Gen.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "location": "WestUS",
+ "edgeZone": "microsoftlosangeles1",
+ "api-version": "2023-07-01",
+ "subscriptionId": "5ece5940-d962-4dad-a98f-ca9ac0f021a5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": []
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MaximumSet_Gen.json
new file mode 100644
index 000000000000..f95e58e247cd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MaximumSet_Gen.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MinimumSet_Gen.json
new file mode 100644
index 000000000000..508cf941812e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MinimumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a2faa8472f17
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MaximumSet_Gen.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "location": "aaaaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MinimumSet_Gen.json
new file mode 100644
index 000000000000..684be72c307d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MinimumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "location": "aaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MaximumSet_Gen.json
new file mode 100644
index 000000000000..70f74ce7e645
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MaximumSet_Gen.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaa",
+ "edgeZone": "aaaaa",
+ "publisherName": "aaaaaaaaaaaa",
+ "offer": "aaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MinimumSet_Gen.json
new file mode 100644
index 000000000000..d2ff75e32525
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaaaaaaa",
+ "offer": "aaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d415cab71a58
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MaximumSet_Gen.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaa",
+ "edgeZone": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisherName": "aaaa",
+ "offer": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "skus": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "$expand": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "$top": 12,
+ "$orderby": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "tags": {
+ "key7868": "aaaaa"
+ },
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..c1efb38ebe6a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MinimumSet_Gen.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "edgeZone": "aaaaa",
+ "publisherName": "aaaaaaaaaaaaaaaaaaa",
+ "offer": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "skus": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": [
+ {
+ "name": "aaaaaaaa",
+ "location": "aaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaaa"
+ }
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..f0c5529bac5b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaa",
+ "vmssExtensionName": "aaaaaaaaaaaaaaaaaaaaa",
+ "extensionParameters": {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MinimumSet_Gen.json
new file mode 100644
index 000000000000..f60b4beed6a6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaa",
+ "vmssExtensionName": "aaaaaaaaaaa",
+ "extensionParameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..48d3604167bc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmssExtensionName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MinimumSet_Gen.json
new file mode 100644
index 000000000000..bf199088c0bc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaa",
+ "vmssExtensionName": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..82c201e86235
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MaximumSet_Gen.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmssExtensionName": "aaaaaaaaaaaaaaaaaaaa",
+ "$expand": "aaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MinimumSet_Gen.json
new file mode 100644
index 000000000000..def3370ccef8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MinimumSet_Gen.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "a",
+ "vmssExtensionName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a6db49bc68ee
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MaximumSet_Gen.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ }
+ ],
+ "nextLink": "aa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..e6f80417f94d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {}
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_RollingUpgrade.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_RollingUpgrade.json
new file mode 100644
index 000000000000..6dca114b34fa
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_RollingUpgrade.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..22029401c713
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MaximumSet_Gen.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmssExtensionName": "aaaa",
+ "extensionParameters": {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisioningState": "aaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "type": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..6c2ffaeb0e7c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmssExtensionName": "aa",
+ "extensionParameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MaximumSet_Gen.json
new file mode 100644
index 000000000000..aeb1f280760a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MinimumSet_Gen.json
new file mode 100644
index 000000000000..e7ae66a3c644
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MaximumSet_Gen.json
new file mode 100644
index 000000000000..2b986d9f6436
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MaximumSet_Gen.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "policy": {
+ "maxBatchInstancePercent": 49,
+ "maxUnhealthyInstancePercent": 81,
+ "maxUnhealthyUpgradedInstancePercent": 98,
+ "pauseTimeBetweenBatches": "aaaaaaaaaaaaaaa",
+ "enableCrossZoneUpgrade": true,
+ "prioritizeUnhealthyInstances": true,
+ "rollbackFailedInstancesOnPolicyBreach": true,
+ "maxSurge": true
+ },
+ "runningStatus": {
+ "code": "RollingForward",
+ "startTime": "2021-11-30T13:06:23.362Z",
+ "lastAction": "Start",
+ "lastActionTime": "2021-11-30T13:06:23.362Z"
+ },
+ "progress": {
+ "successfulInstanceCount": 6,
+ "failedInstanceCount": 25,
+ "inProgressInstanceCount": 20,
+ "pendingInstanceCount": 27
+ },
+ "error": {
+ "details": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "target": "aaaa",
+ "message": "aa"
+ }
+ ],
+ "innererror": {
+ "exceptiontype": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "errordetail": "aaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "code": "aaaaaaa",
+ "target": "aaaaaaa",
+ "message": "aaaaaaaaa"
+ }
+ },
+ "id": "aaaaaaaaaa",
+ "name": "aaaaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaa",
+ "tags": {
+ "key8533": "aaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a62968359615
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "aaaaaa",
+ "id": "aaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a992890a8424
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MinimumSet_Gen.json
new file mode 100644
index 000000000000..2c931fb0c914
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Create.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Create.json
new file mode 100644
index 000000000000..b8df796522cb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Create.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "vmExtensionName": "myVMExtension",
+ "api-version": "2023-07-01",
+ "extensionParameters": {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Delete.json
new file mode 100644
index 000000000000..5c8395a97322
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Delete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "vmExtensionName": "myVMExtension",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Get.json
new file mode 100644
index 000000000000..625c399ed929
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "vmExtensionName": "myVMExtension",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ },
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_List.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_List.json
new file mode 100644
index 000000000000..3a04851e3cce
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_List.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ },
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension"
+ },
+ {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "extPublisher1",
+ "type": "extType1",
+ "typeHandlerVersion": "1.0",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ },
+ "name": "myVMExtension1",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Update.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Update.json
new file mode 100644
index 000000000000..72719603661e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Update.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "vmExtensionName": "myVMExtension",
+ "api-version": "2023-07-01",
+ "extensionParameters": {
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVMExtension",
+ "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Creating",
+ "publisher": "extPublisher",
+ "type": "extType",
+ "typeHandlerVersion": "1.2",
+ "settings": {
+ "UserName": "xyz@microsoft.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b3cf04540c44
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MinimumSet_Gen.json
new file mode 100644
index 000000000000..09824c467e35
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Delete_Force.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Delete_Force.json
new file mode 100644
index 000000000000..f2aa5bbce2a4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Delete_Force.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "forceDeletion": "true",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json
new file mode 100644
index 000000000000..18f372313bee
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myVirtualMachineScaleSet",
+ "instanceId": "0",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "platformUpdateDomain": 0,
+ "platformFaultDomain": 0,
+ "rdpThumbPrint": null,
+ "vmAgent": {
+ "vmAgentVersion": "Unknown",
+ "statuses": [
+ {
+ "code": "ProvisioningState/Unavailable",
+ "level": "Warning",
+ "displayStatus": "Not Ready",
+ "message": "VM status blob is found but not yet populated.",
+ "time": "2023-07-01T05:00:32+00:00"
+ }
+ ],
+ "extensionHandlers": null
+ },
+ "disks": [
+ {
+ "name": "myOSDisk",
+ "encryptionSettings": null,
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": null,
+ "time": "2023-07-01T04:58:58.0882815+00:00"
+ }
+ ]
+ }
+ ],
+ "extensions": null,
+ "assignedHost": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup/hosts/myHost",
+ "bootDiagnostics": null,
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": null,
+ "time": "2020-06-05T04:59:58.1852966+00:00"
+ },
+ {
+ "code": "PowerState/running",
+ "level": "Info",
+ "displayStatus": "VM running",
+ "message": null,
+ "time": null
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithUserData.json
new file mode 100644
index 000000000000..47fafe1c05c8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithUserData.json
@@ -0,0 +1,133 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "instanceId": "0",
+ "api-version": "2023-07-01",
+ "expand": "UserData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{vmss-vm-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "latestModelApplied": true,
+ "modelDefinitionApplied": "VirtualMachineScaleSet",
+ "networkProfileConfiguration": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": false,
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "enableIPForwarding": false,
+ "ipConfigurations": [
+ {
+ "name": "vmsstestnetconfig9693",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "vmId": "42af9fdf-b906-4ad7-9905-8316209ff619",
+ "hardwareProfile": {},
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20180315",
+ "exactVersion": "4.127.20180315"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "createOption": "FromImage",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc"
+ },
+ "diskSizeGB": 127
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "createOption": "Empty",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"
+ },
+ "diskSizeGB": 128,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "test000000",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415"
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "provisioningState": "Succeeded"
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "westus",
+ "tags": {
+ "displayName": "CustomScriptExtension-DSC"
+ },
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithVMSizeProperties.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithVMSizeProperties.json
new file mode 100644
index 000000000000..75eb87e09290
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithVMSizeProperties.json
@@ -0,0 +1,138 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "instanceId": "0",
+ "api-version": "2023-07-01",
+ "expand": "UserData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{vmss-vm-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "properties": {
+ "latestModelApplied": true,
+ "modelDefinitionApplied": "VirtualMachineScaleSet",
+ "networkProfileConfiguration": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": false,
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "enableIPForwarding": false,
+ "ipConfigurations": [
+ {
+ "name": "vmsstestnetconfig9693",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "vmId": "42af9fdf-b906-4ad7-9905-8316209ff619",
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20180315",
+ "exactVersion": "4.127.20180315"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "createOption": "FromImage",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc"
+ },
+ "diskSizeGB": 127
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "createOption": "Empty",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"
+ },
+ "diskSizeGB": 128,
+ "toBeDetached": false
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "test000000",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415"
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "provisioningState": "Succeeded"
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "westus",
+ "tags": {
+ "displayName": "CustomScriptExtension-DSC"
+ },
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..8445972f15da
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MaximumSet_Gen.json
@@ -0,0 +1,546 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "virtualMachineScaleSetName": "aaaaaaaaaaaaaaaaaaaaaa",
+ "$filter": "aaaaaaaaaaaaaa",
+ "$select": "aaaaaaaaaaaaaaaaaaaaa",
+ "$expand": "aaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{vmss-vm-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "latestModelApplied": true,
+ "modelDefinitionApplied": "VirtualMachineScaleSet",
+ "networkProfileConfiguration": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": true,
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "vmsstestnetconfig9693",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503"
+ },
+ "privateIPAddressVersion": "IPv4",
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "deleteOption": "Delete"
+ }
+ }
+ ]
+ },
+ "vmId": "42af9fdf-b906-4ad7-9905-8316209ff619",
+ "hardwareProfile": {
+ "vmSize": "Basic_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 9,
+ "vCPUsPerCore": 12
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20180315",
+ "exactVersion": "4.127.20180315",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaa",
+ "id": "a"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "createOption": "FromImage",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "createOption": "Empty",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 128,
+ "toBeDetached": true,
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diskIOPSReadWrite": 18,
+ "diskMBpsReadWrite": 29,
+ "detachOption": "ForceDetach",
+ "deleteOption": "Delete"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "test000000",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true,
+ "customData": "aaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2020-11-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 2,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaa"
+ }
+ },
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "platformUpdateDomain": 23,
+ "platformFaultDomain": 14,
+ "rdpThumbPrint": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmAgent": {
+ "vmAgentVersion": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "extensionHandlers": [
+ {
+ "type": "aaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "maintenanceRedeployStatus": {
+ "isCustomerInitiatedMaintenanceAllowed": true,
+ "preMaintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "preMaintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "lastOperationResultCode": "None",
+ "lastOperationMessage": "aaaaaa"
+ },
+ "disks": [
+ {
+ "name": "aaaaaaaaaaa",
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "extensions": [
+ {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "vmHealth": {
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "bootDiagnostics": {
+ "consoleScreenshotBlobUri": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "serialConsoleLogBlobUri": "aaaaaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "assignedHost": "aaaaaaa",
+ "placementGroupId": "aaa"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaa",
+ "protectionPolicy": {
+ "protectFromScaleIn": true,
+ "protectFromScaleSetActions": true
+ },
+ "timeCreated": "2021-06-27T01:02:38.3138469+00:00"
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "suppressFailures": true
+ }
+ }
+ ],
+ "instanceId": "aaaaaaaaaaaa",
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaa",
+ "capacity": 29
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "zones": [
+ "a"
+ ]
+ }
+ ],
+ "nextLink": "aaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..64c9c357c7b3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MinimumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "virtualMachineScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MaximumSet_Gen.json
new file mode 100644
index 000000000000..17598c11a183
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MinimumSet_Gen.json
new file mode 100644
index 000000000000..58e0f0d39805
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaa",
+ "instanceId": "aaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c3d11adfab2a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaa",
+ "instanceId": "aaaaaaaaa",
+ "skipShutdown": true,
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MinimumSet_Gen.json
new file mode 100644
index 000000000000..d0ec6e3a7ba2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MaximumSet_Gen.json
new file mode 100644
index 000000000000..604d418d43f3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MinimumSet_Gen.json
new file mode 100644
index 000000000000..bf954fffff8b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c2a44a9fb4dd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MinimumSet_Gen.json
new file mode 100644
index 000000000000..7dbaab4af34b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MaximumSet_Gen.json
new file mode 100644
index 000000000000..8b2e3deeb056
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MaximumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmScaleSetVMReimageInput": {
+ "tempDisk": true
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a00fdc4bea4f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaa",
+ "instanceId": "aaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MaximumSet_Gen.json
new file mode 100644
index 000000000000..f10b9f0ea8fc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aa",
+ "instanceId": "aaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b3a7b026f6a3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaa",
+ "instanceId": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_RetrieveBootDiagnosticsData.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_RetrieveBootDiagnosticsData.json
new file mode 100644
index 000000000000..a3a6947c9eb0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_RetrieveBootDiagnosticsData.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ResourceGroup",
+ "api-version": "2023-07-01",
+ "vmScaleSetName": "myvmScaleSet",
+ "instanceId": "0",
+ "sasUriExpirationTimeInMinutes": 60
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "consoleScreenshotBlobUri": "https://storageuri/myvmScaleSetinstance.screenshot.bmp?{saskey}",
+ "serialConsoleLogBlobUri": "https://storageuri/myvmScaleSetinstance.serialconsole.log?{saskey}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_SimulateEviction.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_SimulateEviction.json
new file mode 100644
index 000000000000..57d875d683f3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_SimulateEviction.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ResourceGroup",
+ "vmScaleSetName": "VmScaleSetName",
+ "api-version": "2023-07-01",
+ "instanceId": "InstanceId"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c93a34a7be22
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a2849647934f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..6f5722baebf6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MaximumSet_Gen.json
@@ -0,0 +1,1533 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "networkProfileConfiguration": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": true,
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "vmsstestnetconfig9693",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503"
+ },
+ "privateIPAddressVersion": "IPv4",
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "deleteOption": "Delete"
+ }
+ }
+ ]
+ },
+ "hardwareProfile": {
+ "vmSize": "Basic_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 9,
+ "vCPUsPerCore": 12
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20180315",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaa",
+ "id": "a"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "createOption": "FromImage",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "createOption": "Empty",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 128,
+ "toBeDetached": true,
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "detachOption": "ForceDetach",
+ "deleteOption": "Delete"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "test000000",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true,
+ "adminPassword": "aaaaaaaaaaaaaaaa",
+ "customData": "aaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2020-11-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 2,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaa"
+ }
+ },
+ "instanceView": {
+ "platformUpdateDomain": 23,
+ "platformFaultDomain": 14,
+ "rdpThumbPrint": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmAgent": {
+ "vmAgentVersion": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "extensionHandlers": [
+ {
+ "type": "aaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "maintenanceRedeployStatus": {
+ "isCustomerInitiatedMaintenanceAllowed": true,
+ "preMaintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "preMaintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "lastOperationResultCode": "None",
+ "lastOperationMessage": "aaaaaa"
+ },
+ "disks": [
+ {
+ "name": "aaaaaaaaaaa",
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "extensions": [
+ {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "vmHealth": {
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "bootDiagnostics": {
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "placementGroupId": "aaa"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaa",
+ "protectionPolicy": {
+ "protectFromScaleIn": true,
+ "protectFromScaleSetActions": true
+ }
+ },
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaa",
+ "capacity": 29
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{vmss-vm-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "latestModelApplied": true,
+ "modelDefinitionApplied": "VirtualMachineScaleSet",
+ "networkProfileConfiguration": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": true,
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "vmsstestnetconfig9693",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503"
+ },
+ "privateIPAddressVersion": "IPv4",
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "deleteOption": "Delete"
+ }
+ }
+ ]
+ },
+ "vmId": "42af9fdf-b906-4ad7-9905-8316209ff619",
+ "hardwareProfile": {
+ "vmSize": "Basic_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 9,
+ "vCPUsPerCore": 12
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20180315",
+ "exactVersion": "4.127.20180315",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaa",
+ "id": "a"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "createOption": "FromImage",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "createOption": "Empty",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 128,
+ "toBeDetached": true,
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diskIOPSReadWrite": 18,
+ "diskMBpsReadWrite": 29,
+ "detachOption": "ForceDetach",
+ "deleteOption": "Delete"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "test000000",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true,
+ "customData": "aaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2020-11-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 2,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaa"
+ }
+ },
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "platformUpdateDomain": 23,
+ "platformFaultDomain": 14,
+ "rdpThumbPrint": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmAgent": {
+ "vmAgentVersion": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "extensionHandlers": [
+ {
+ "type": "aaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "maintenanceRedeployStatus": {
+ "isCustomerInitiatedMaintenanceAllowed": true,
+ "preMaintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "preMaintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "lastOperationResultCode": "None",
+ "lastOperationMessage": "aaaaaa"
+ },
+ "disks": [
+ {
+ "name": "aaaaaaaaaaa",
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "extensions": [
+ {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "vmHealth": {
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "bootDiagnostics": {
+ "consoleScreenshotBlobUri": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "serialConsoleLogBlobUri": "aaaaaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "assignedHost": "aaaaaaa",
+ "placementGroupId": "aaa"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaa",
+ "protectionPolicy": {
+ "protectFromScaleIn": true,
+ "protectFromScaleSetActions": true
+ }
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "suppressFailures": true
+ }
+ }
+ ],
+ "instanceId": "aaaaaaaaaaaa",
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaa",
+ "capacity": 29
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "zones": [
+ "a"
+ ]
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{vmss-vm-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0",
+ "type": "Microsoft.Compute/virtualMachines",
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "latestModelApplied": true,
+ "modelDefinitionApplied": "VirtualMachineScaleSet",
+ "networkProfileConfiguration": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": true,
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "vmsstestnetconfig9693",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/vn4071/subnets/sn5503"
+ },
+ "privateIPAddressVersion": "IPv4",
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "deleteOption": "Delete"
+ }
+ }
+ ]
+ },
+ "vmId": "42af9fdf-b906-4ad7-9905-8316209ff619",
+ "hardwareProfile": {
+ "vmSize": "Basic_A0",
+ "vmSizeProperties": {
+ "vCPUsAvailable": 9,
+ "vCPUsPerCore": 12
+ }
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "MicrosoftWindowsServer",
+ "offer": "WindowsServer",
+ "sku": "2012-R2-Datacenter",
+ "version": "4.127.20180315",
+ "exactVersion": "4.127.20180315",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaa",
+ "id": "a"
+ },
+ "osDisk": {
+ "osType": "Windows",
+ "name": "vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "createOption": "FromImage",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_OsDisk_1_6d72b805e50e4de6830303c5055077fc",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 127,
+ "encryptionSettings": {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ },
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "deleteOption": "Delete"
+ },
+ "dataDisks": [
+ {
+ "lun": 1,
+ "name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "createOption": "Empty",
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 128,
+ "toBeDetached": true,
+ "vhd": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "writeAcceleratorEnabled": true,
+ "diskIOPSReadWrite": 18,
+ "diskMBpsReadWrite": 29,
+ "detachOption": "ForceDetach",
+ "deleteOption": "Delete"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerName": "test000000",
+ "adminUsername": "Foo12",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [],
+ "allowExtensionOperations": true,
+ "requireGuestProvisionSignal": true,
+ "customData": "aaaa",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0/networkInterfaces/vmsstestnetconfig5415",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2020-11-01",
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaaaaa",
+ "properties": {
+ "primary": true,
+ "deleteOption": "Delete",
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "enableIPForwarding": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaa"
+ ]
+ },
+ "ipConfigurations": [
+ {
+ "name": "aa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 2,
+ "deleteOption": "Delete",
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "publicIPAllocationMethod": "Dynamic"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "dscpConfiguration": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ }
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaa"
+ }
+ },
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "platformUpdateDomain": 23,
+ "platformFaultDomain": 14,
+ "rdpThumbPrint": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmAgent": {
+ "vmAgentVersion": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "extensionHandlers": [
+ {
+ "type": "aaaaaaaaaaaaa",
+ "typeHandlerVersion": "aaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "maintenanceRedeployStatus": {
+ "isCustomerInitiatedMaintenanceAllowed": true,
+ "preMaintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "preMaintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowStartTime": "2021-11-30T12:58:26.531Z",
+ "maintenanceWindowEndTime": "2021-11-30T12:58:26.531Z",
+ "lastOperationResultCode": "None",
+ "lastOperationMessage": "aaaaaa"
+ },
+ "disks": [
+ {
+ "name": "aaaaaaaaaaa",
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "secretUrl": "aaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "keyEncryptionKey": {
+ "keyUrl": "aaaaaaaaaaaaaa",
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "enabled": true
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "extensions": [
+ {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ }
+ ],
+ "vmHealth": {
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "bootDiagnostics": {
+ "consoleScreenshotBlobUri": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "serialConsoleLogBlobUri": "aaaaaaaa",
+ "status": {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ },
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "assignedHost": "aaaaaaa",
+ "placementGroupId": "aaa"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "availabilitySet": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "licenseType": "aaaaaaaaaa",
+ "protectionPolicy": {
+ "protectFromScaleIn": true,
+ "protectFromScaleSetActions": true
+ }
+ },
+ "resources": [
+ {
+ "name": "CustomScriptExtension-DSC",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC",
+ "type": "Microsoft.Compute/virtualMachines/extensions",
+ "location": "westus",
+ "tags": {},
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "provisioningState": "Succeeded",
+ "publisher": "Microsoft.Compute",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.9",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "instanceView": {
+ "name": "aaaaaaaaaaaaaaaaa",
+ "type": "aaaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "substatuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ],
+ "statuses": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "level": "Info",
+ "displayStatus": "aaaaaa",
+ "message": "a",
+ "time": "2021-11-30T12:58:26.522Z"
+ }
+ ]
+ },
+ "suppressFailures": true
+ }
+ }
+ ],
+ "instanceId": "aaaaaaaaaaaa",
+ "sku": {
+ "name": "Classic",
+ "tier": "aaaaaaaaaaaaaa",
+ "capacity": 29
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "zones": [
+ "a"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..2331166fd2b6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MinimumSet_Gen.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaa",
+ "instanceId": "aaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "location": "westus"
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0"
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}/virtualMachines/0"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..16ad0bc4fa6b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MaximumSet_Gen.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "activePlacementGroupId": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MinimumSet_Gen.json
new file mode 100644
index 000000000000..838787ba9885
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_CreateA_WithDiffOsDiskUsingDiffDiskPlacement.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_CreateA_WithDiffOsDiskUsingDiffDiskPlacement.json
new file mode 100644
index 000000000000..d53b5e6aca88
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_CreateA_WithDiffOsDiskUsingDiffDiskPlacement.json
@@ -0,0 +1,242 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "ResourceDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "ResourceDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "ResourceDisk"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_CustomImageFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_CustomImageFromAnUnmanagedGeneralizedOsImage.json
new file mode 100644
index 000000000000..c3d0ceb92933
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_CustomImageFromAnUnmanagedGeneralizedOsImage.json
@@ -0,0 +1,202 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "caching": "ReadWrite",
+ "image": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd"
+ },
+ "createOption": "FromImage",
+ "name": "osDisk"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "image": {
+ "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd"
+ },
+ "createOption": "FromImage",
+ "name": "osDisk"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "osType": "Windows",
+ "caching": "ReadWrite",
+ "image": {
+ "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd"
+ },
+ "createOption": "FromImage",
+ "name": "osDisk"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromACustomImage.json
new file mode 100644
index 000000000000..718a685d0e7a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromACustomImage.json
@@ -0,0 +1,204 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromAGeneralizedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromAGeneralizedSharedImage.json
new file mode 100644
index 000000000000..836848335a2d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromAGeneralizedSharedImage.json
@@ -0,0 +1,204 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromASpecializedSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromASpecializedSharedImage.json
new file mode 100644
index 000000000000..9b7ae40bea73
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromASpecializedSharedImage.json
@@ -0,0 +1,183 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithDisableTcpStateTrackingNetworkInterface.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithDisableTcpStateTrackingNetworkInterface.json
new file mode 100644
index 000000000000..ecce044d1652
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithDisableTcpStateTrackingNetworkInterface.json
@@ -0,0 +1,277 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "disableTcpStateTracking": true,
+ "enableAcceleratedNetworking": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": false,
+ "enableAcceleratedNetworking": false,
+ "enableIPForwarding": false,
+ "disableTcpStateTracking": false,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "disableTcpStateTracking": true,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": true
+ }
+ },
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": false,
+ "enableFpga": false,
+ "disableTcpStateTracking": false,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "disableTcpStateTracking": true,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": true
+ }
+ },
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": false,
+ "enableFpga": false,
+ "disableTcpStateTracking": false,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithFpgaNetworkInterface.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithFpgaNetworkInterface.json
new file mode 100644
index 000000000000..a8ac934ce64b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithFpgaNetworkInterface.json
@@ -0,0 +1,271 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "name": "{fpgaNic-Name}",
+ "properties": {
+ "primary": false,
+ "enableAcceleratedNetworking": false,
+ "enableIPForwarding": false,
+ "enableFpga": true,
+ "ipConfigurations": [
+ {
+ "name": "{fpgaNic-Name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ },
+ {
+ "name": "{fpgaNic-Name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": false,
+ "enableFpga": true,
+ "ipConfigurations": [
+ {
+ "name": "{fpgaNic-Name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ },
+ {
+ "name": "{fpgaNic-Name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": false,
+ "enableFpga": true,
+ "ipConfigurations": [
+ {
+ "name": "{fpgaNic-Name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithNetworkInterfaceWithDnsSettings.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithNetworkInterfaceWithDnsSettings.json
new file mode 100644
index 000000000000..79913c81c4fc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithNetworkInterfaceWithDnsSettings.json
@@ -0,0 +1,303 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "disableTcpStateTracking": true,
+ "enableAcceleratedNetworking": true,
+ "auxiliaryMode": "AcceleratedConnections",
+ "auxiliarySku": "A1",
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": false,
+ "enableAcceleratedNetworking": false,
+ "enableIPForwarding": false,
+ "disableTcpStateTracking": false,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}"
+ },
+ "privateIPAddressVersion": "IPv4",
+ "publicIPAddressConfiguration": {
+ "name": "publicip",
+ "properties": {
+ "idleTimeoutInMinutes": 10,
+ "dnsSettings": {
+ "domainNameLabel": "vmsstestlabel01",
+ "domainNameLabelScope": "NoReuse"
+ }
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "disableTcpStateTracking": true,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4",
+ "publicIPAddressConfiguration": {
+ "name": "publicip",
+ "properties": {
+ "idleTimeoutInMinutes": 10,
+ "dnsSettings": {
+ "domainNameLabel": "vmsstestlabel01",
+ "domainNameLabelScope": "TenantReuse"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": true,
+ "auxiliaryMode": "AcceleratedConnections",
+ "auxiliarySku": "A1"
+ }
+ },
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": false,
+ "enableFpga": false,
+ "disableTcpStateTracking": false,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "disableTcpStateTracking": true,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig1-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": true,
+ "auxiliaryMode": "AcceleratedConnections",
+ "auxiliarySku": "A1"
+ }
+ },
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": false,
+ "enableFpga": false,
+ "disableTcpStateTracking": false,
+ "ipConfigurations": [
+ {
+ "name": "{nicConfig2-name}",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_PlatformImageWithUnmanagedOsDisks.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_PlatformImageWithUnmanagedOsDisks.json
new file mode 100644
index 000000000000..1a292c7b4696
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_PlatformImageWithUnmanagedOsDisks.json
@@ -0,0 +1,222 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "osDisk",
+ "vhdContainers": [
+ "http://{existing-storage-account-name-0}.blob.core.windows.net/vhdContainer",
+ "http://{existing-storage-account-name-1}.blob.core.windows.net/vhdContainer",
+ "http://{existing-storage-account-name-2}.blob.core.windows.net/vhdContainer",
+ "http://{existing-storage-account-name-3}.blob.core.windows.net/vhdContainer",
+ "http://{existing-storage-account-name-4}.blob.core.windows.net/vhdContainer"
+ ]
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "vhdContainers": [
+ "http://{existing-storage-account-name}.blob.core.windows.net/vhds"
+ ],
+ "name": "osDisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "vhdContainers": [
+ "http://{existing-storage-account-name}.blob.core.windows.net/vhds"
+ ],
+ "name": "osDisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAMarketplaceImagePlan.json
new file mode 100644
index 000000000000..1e34e23b218f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAMarketplaceImagePlan.json
@@ -0,0 +1,230 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithApplicationProfile.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithApplicationProfile.json
new file mode 100644
index 000000000000..2f732d7e2ef6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithApplicationProfile.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config",
+ "treatFailureAsDeploymentFailure": true,
+ "enableAutomaticUpgrade": false
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAutomaticRepairs.json
new file mode 100644
index 000000000000..f8bb1d6d5b20
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAutomaticRepairs.json
@@ -0,0 +1,227 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "PT10M"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "PT10M"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "PT10M"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureApplicationGateway.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureApplicationGateway.json
new file mode 100644
index 000000000000..d64902a9b305
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureApplicationGateway.json
@@ -0,0 +1,230 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/{existing-application-gateway-name}/backendAddressPools/{existing-backend-address-pool-name}"
+ }
+ ],
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool"
+ }
+ ],
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool"
+ }
+ ],
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureLoadBalancer.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureLoadBalancer.json
new file mode 100644
index 000000000000..721f2ae54a4d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureLoadBalancer.json
@@ -0,0 +1,251 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ },
+ "publicIPAddressConfiguration": {
+ "name": "{vmss-name}",
+ "properties": {
+ "publicIPAddressVersion": "IPv4"
+ }
+ },
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/inboundNatPools/{existing-nat-pool-name}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/backendAddressPools/{existing-backend-address-pool-name}"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool"
+ }
+ ],
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool"
+ }
+ ],
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithBootDiagnostics.json
new file mode 100644
index 000000000000..4487f19d90d6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithBootDiagnostics.json
@@ -0,0 +1,233 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithCapacityReservation.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithCapacityReservation.json
new file mode 100644
index 000000000000..dde523674518
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithCapacityReservation.json
@@ -0,0 +1,230 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiffOsDisk.json
new file mode 100644
index 000000000000..6962db037b73
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiffOsDisk.json
@@ -0,0 +1,239 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "diffDiskSettings": {
+ "option": "Local"
+ },
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskControllerType.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskControllerType.json
new file mode 100644
index 000000000000..75daf948cc26
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskControllerType.json
@@ -0,0 +1,249 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ },
+ "diskControllerType": "NVMe"
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ },
+ "diskControllerType": "NVMe"
+ },
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ },
+ "diskControllerType": "SCSI"
+ },
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskEncryptionSetResource.json
new file mode 100644
index 000000000000..b5f2b3b7594c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskEncryptionSetResource.json
@@ -0,0 +1,255 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEmptyDataDisksOnEachVm.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEmptyDataDisksOnEachVm.json
new file mode 100644
index 000000000000..c3da9a698761
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEmptyDataDisksOnEachVm.json
@@ -0,0 +1,270 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D2_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "diskSizeGB": 512
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ },
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 1
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D2_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "diskSizeGB": 512
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D2_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "diskSizeGB": 512
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEncryptionAtHost.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEncryptionAtHost.json
new file mode 100644
index 000000000000..b325bbb607ba
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEncryptionAtHost.json
@@ -0,0 +1,239 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows2016",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "windows-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "encryptionAtHost": true
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "encryptionAtHost": true
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "standard-data-science-vm",
+ "name": "standard-data-science-vm"
+ },
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "standard-data-science-vm",
+ "publisher": "microsoft-ads",
+ "version": "latest",
+ "offer": "standard-data-science-vm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "encryptionAtHost": true
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsSuppressFailuresEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsSuppressFailuresEnabled.json
new file mode 100644
index 000000000000..8d5102bee336
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsSuppressFailuresEnabled.json
@@ -0,0 +1,278 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "suppressFailures": true
+ }
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "suppressFailures": true
+ }
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "suppressFailures": true
+ }
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsTimeBudget.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsTimeBudget.json
new file mode 100644
index 000000000000..ed29d206557f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsTimeBudget.json
@@ -0,0 +1,278 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {}
+ }
+ }
+ ],
+ "extensionsTimeBudget": "PT1H20M"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {}
+ }
+ }
+ ],
+ "extensionsTimeBudget": "PT1H20M"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {}
+ }
+ }
+ ],
+ "extensionsTimeBudget": "PT1H20M"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithManagedBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithManagedBootDiagnostics.json
new file mode 100644
index 000000000000..6b5db4b665dc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithManagedBootDiagnostics.json
@@ -0,0 +1,230 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithOSImageScheduledEventEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithOSImageScheduledEventEnabled.json
new file mode 100644
index 000000000000..95da2f5a535c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithOSImageScheduledEventEnabled.json
@@ -0,0 +1,233 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "scheduledEventsProfile": {
+ "osImageNotificationProfile": {
+ "enable": true,
+ "notBeforeTimeout": "PT15M"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "scheduledEventsProfile": {
+ "osImageNotificationProfile": {
+ "enable": true,
+ "notBeforeTimeout": "PT15M"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "scheduledEventsProfile": {
+ "osImageNotificationProfile": {
+ "enable": true,
+ "notBeforeTimeout": "PT15M"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPasswordAuthentication.json
new file mode 100644
index 000000000000..f42d5c8392d7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPasswordAuthentication.json
@@ -0,0 +1,215 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPremiumStorage.json
new file mode 100644
index 000000000000..086932d0d72b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPremiumStorage.json
@@ -0,0 +1,215 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DS1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPriorityMixPolicy.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPriorityMixPolicy.json
new file mode 100644
index 000000000000..a88fa09376cd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPriorityMixPolicy.json
@@ -0,0 +1,234 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 10,
+ "name": "Standard_A8m_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "singlePlacementGroup": false,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "priority": "Spot",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ }
+ },
+ "orchestrationMode": "Flexible",
+ "priorityMixPolicy": {
+ "baseRegularPriorityCount": 4,
+ "regularPriorityPercentageAboveBase": 50
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 10,
+ "name": "Standard_A8m_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": false,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "priority": "Spot",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ }
+ },
+ "orchestrationMode": "Flexible",
+ "priorityMixPolicy": {
+ "baseRegularPriorityCount": 4,
+ "regularPriorityPercentageAboveBase": 50
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 10,
+ "name": "Standard_A8m_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": false,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "priority": "Spot",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ }
+ },
+ "orchestrationMode": "Flexible",
+ "priorityMixPolicy": {
+ "baseRegularPriorityCount": 4,
+ "regularPriorityPercentageAboveBase": 50
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithProtectedSettingsFromKeyVault.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithProtectedSettingsFromKeyVault.json
new file mode 100644
index 000000000000..acfa9edf797e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithProtectedSettingsFromKeyVault.json
@@ -0,0 +1,293 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ }
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ }
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "protectedSettingsFromKeyVault": {
+ "sourceVault": {
+ "id": "/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName"
+ },
+ "secretUrl": "https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e"
+ }
+ }
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithScaleInPolicy.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithScaleInPolicy.json
new file mode 100644
index 000000000000..0842c787060d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithScaleInPolicy.json
@@ -0,0 +1,233 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "OldestVM"
+ ],
+ "forceDeletion": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "OldestVM"
+ ],
+ "forceDeletion": true
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "OldestVM"
+ ],
+ "forceDeletion": true
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityPostureReference.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityPostureReference.json
new file mode 100644
index 000000000000..48dd61abfd2c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityPostureReference.json
@@ -0,0 +1,227 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_A1"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "securityPostureReference": {
+ "id": "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2022-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "osDisk"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_A1"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d12ccb3d-ab15-4794-9836-c4196392e9f2",
+ "virtualMachineProfile": {
+ "securityPostureReference": {
+ "id": "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2022-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "name": "osDisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "eastus2euap",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_A1"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d12ccb3d-ab15-4794-9836-c4196392e9f2",
+ "virtualMachineProfile": {
+ "securityPostureReference": {
+ "id": "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2022-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "name": "osDisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "eastus2euap",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityTypeConfidentialVM.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityTypeConfidentialVM.json
new file mode 100644
index 000000000000..87e2890284a1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityTypeConfidentialVM.json
@@ -0,0 +1,245 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DC2as_v5"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly"
+ }
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DC2as_v5"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly"
+ }
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_DC2as_v5"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows-cvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "17763.2183.2109130127",
+ "offer": "2019-datacenter-cvm"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS",
+ "securityProfile": {
+ "securityEncryptionType": "VMGuestStateOnly"
+ }
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "ConfidentialVM"
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithServiceArtifactReference.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithServiceArtifactReference.json
new file mode 100644
index 000000000000..7dd83a24398d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithServiceArtifactReference.json
@@ -0,0 +1,227 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_A1"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "serviceArtifactReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/serviceArtifacts/serviceArtifactName/vmArtifactsProfiles/vmArtifactsProfilesName"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2022-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "createOption": "FromImage",
+ "name": "osDisk"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_A1"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64",
+ "virtualMachineProfile": {
+ "serviceArtifactReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/serviceArtifacts/serviceArtifactName/vmArtifactsProfiles/vmArtifactsProfilesName"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2022-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "name": "osDisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "eastus2euap",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_A1"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64",
+ "virtualMachineProfile": {
+ "serviceArtifactReference": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/serviceArtifacts/serviceArtifactName/vmArtifactsProfiles/vmArtifactsProfilesName"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2022-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "name": "osDisk",
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true
+ }
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "eastus2euap",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSpotRestorePolicy.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSpotRestorePolicy.json
new file mode 100644
index 000000000000..5d17ec9aa00b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSpotRestorePolicy.json
@@ -0,0 +1,242 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 2,
+ "name": "Standard_A8m_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "priority": "Spot",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "PT1H"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 2,
+ "name": "Standard_A8m_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "priority": "Spot",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "PT1H"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 2,
+ "name": "Standard_A8m_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "priority": "Spot",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "PT1H"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSshAuthentication.json
new file mode 100644
index 000000000000..e2710cb5cec0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSshAuthentication.json
@@ -0,0 +1,239 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "16.04-LTS",
+ "publisher": "Canonical",
+ "version": "latest",
+ "offer": "UbuntuServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithTerminateScheduledEventEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithTerminateScheduledEventEnabled.json
new file mode 100644
index 000000000000..a737de100f68
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithTerminateScheduledEventEnabled.json
@@ -0,0 +1,233 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "enable": true,
+ "notBeforeTimeout": "PT5M"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "enable": true,
+ "notBeforeTimeout": "PT5M"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "enable": true,
+ "notBeforeTimeout": "PT5M"
+ }
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUefiSettings.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUefiSettings.json
new file mode 100644
index 000000000000..5b0abcd7f5d2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUefiSettings.json
@@ -0,0 +1,236 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D2s_v3"
+ },
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows10-tvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "18363.592.2001092016",
+ "offer": "windowsserver-gen2preview-preview"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ }
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D2s_v3"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows10-tvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "18363.592.2001092016",
+ "offer": "windowsserver-gen2preview-preview"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D2s_v3"
+ },
+ "name": "{vmss-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "windows10-tvm",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "18363.592.2001092016",
+ "offer": "windowsserver-gen2preview-preview"
+ },
+ "osDisk": {
+ "caching": "ReadOnly",
+ "managedDisk": {
+ "storageAccountType": "StandardSSD_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUserData.json
new file mode 100644
index 000000000000..0b67b03cc2db
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUserData.json
@@ -0,0 +1,228 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMSizeProperties.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMSizeProperties.json
new file mode 100644
index 000000000000..c9703e1817ff
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMSizeProperties.json
@@ -0,0 +1,246 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": true,
+ "overprovision": true,
+ "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7",
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage"
+ }
+ },
+ "hardwareProfile": {
+ "vmSizeProperties": {
+ "vCPUsAvailable": 1,
+ "vCPUsPerCore": 1
+ }
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://nsgdiagnostic.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual"
+ },
+ "provisioningState": "Creating"
+ },
+ "location": "westus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMsInDifferentZones.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMsInDifferentZones.json
new file mode 100644
index 000000000000..0a3e826f21e2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMsInDifferentZones.json
@@ -0,0 +1,284 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "{vmss-name}",
+ "api-version": "2023-07-01",
+ "parameters": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 2,
+ "name": "Standard_A1_v2"
+ },
+ "location": "centralus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "diskSizeGB": 512
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 0
+ },
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 1
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "adminPassword": "{your-password}"
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic"
+ }
+ },
+ "zones": [
+ "1",
+ "3"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 2,
+ "name": "Standard_A1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": false,
+ "overprovision": true,
+ "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa",
+ "zoneBalance": false,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "diskSizeGB": 512
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "zones": [
+ "1",
+ "3"
+ ],
+ "location": "centralus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ },
+ "201": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 2,
+ "name": "Standard_A1_v2"
+ },
+ "name": "{vmss-name}",
+ "properties": {
+ "singlePlacementGroup": false,
+ "overprovision": true,
+ "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa",
+ "zoneBalance": false,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "FromImage",
+ "diskSizeGB": 512
+ },
+ "dataDisks": [
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 0,
+ "diskSizeGB": 1023
+ },
+ {
+ "caching": "None",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS"
+ },
+ "createOption": "Empty",
+ "lun": 1,
+ "diskSizeGB": 1023
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "secrets": [],
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet"
+ },
+ "privateIPAddressVersion": "IPv4"
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": false
+ }
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Automatic"
+ },
+ "provisioningState": "Creating"
+ },
+ "zones": [
+ "1",
+ "3"
+ ],
+ "location": "centralus",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..f8524e0d766b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MaximumSet_Gen.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "hibernate": true,
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a5f5995184f1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MaximumSet_Gen.json
new file mode 100644
index 000000000000..430e9a069afa
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MaximumSet_Gen.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "forceDeletion": true,
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MinimumSet_Gen.json
new file mode 100644
index 000000000000..50354b23c0e6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Delete_Force.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Delete_Force.json
new file mode 100644
index 000000000000..026f308512e4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Delete_Force.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myvmScaleSet",
+ "forceDeletion": "true",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b715ab824a0b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MaximumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}",
+ "platformUpdateDomain": 30
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "walkPerformed": true,
+ "nextPlatformUpdateDomain": 7
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MinimumSet_Gen.json
new file mode 100644
index 000000000000..45a4d841bf93
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MinimumSet_Gen.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}",
+ "platformUpdateDomain": 9
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get.json
new file mode 100644
index 000000000000..1ccbd06b8aed
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myVirtualMachineScaleSet",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVirtualMachineScaleSet",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVirtualMachineScaleSet",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": false,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": false
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "diskSizeGB": 30
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2"
+ },
+ "dataDisks": []
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerNamePrefix": "myVirtualMachineScaleSet",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ }
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": false,
+ "doNotRunExtensionsOnOverprovisionedVMs": false,
+ "platformFaultDomainCount": 1,
+ "hostGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup"
+ },
+ "timeCreated": "2021-06-27T01:02:38.3138469+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MaximumSet_Gen.json
new file mode 100644
index 000000000000..698de99a7274
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MaximumSet_Gen.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "virtualMachine": {
+ "statusesSummary": [
+ {
+ "code": "aa",
+ "count": 21
+ }
+ ]
+ },
+ "extensions": [
+ {
+ "name": "aaaaaaaaaaa",
+ "statusesSummary": [
+ {
+ "code": "aa",
+ "count": 21
+ }
+ ]
+ }
+ ],
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "message": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "time": "2021-11-30T12:58:26.526Z"
+ }
+ ],
+ "orchestrationServices": [
+ {
+ "serviceName": "AutomaticRepairs",
+ "serviceState": "NotRunning"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MinimumSet_Gen.json
new file mode 100644
index 000000000000..eea57cafda74
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MinimumSet_Gen.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4e36d5289f6d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MaximumSet_Gen.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "runningStatus": {
+ "code": "RollingForward",
+ "startTime": "2021-11-30T13:05:40.442Z",
+ "endTime": "2021-11-30T13:05:40.443Z"
+ },
+ "progress": {
+ "successfulInstanceCount": 6,
+ "failedInstanceCount": 25,
+ "inProgressInstanceCount": 20,
+ "pendingInstanceCount": 27
+ },
+ "error": {
+ "details": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "target": "aaaa",
+ "message": "aa"
+ }
+ ],
+ "innererror": {
+ "exceptiontype": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "errordetail": "aaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "code": "aaaaaaa",
+ "target": "aaaaaaa",
+ "message": "aaaaaaaaa"
+ },
+ "startedBy": "Unknown",
+ "targetImageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer",
+ "exactVersion": "aaaaaaa",
+ "sharedGalleryImageId": "aaaaaa",
+ "id": "aaaaaaaaaaaaaaaaaaa"
+ },
+ "rollbackInfo": {
+ "successfullyRolledbackInstanceCount": 12,
+ "failedRolledbackInstanceCount": 2,
+ "rollbackError": {
+ "details": [
+ {
+ "code": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "target": "aaaa",
+ "message": "aa"
+ }
+ ],
+ "innererror": {
+ "exceptiontype": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "errordetail": "aaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "code": "aaaaaaa",
+ "target": "aaaaaaa",
+ "message": "aaaaaaaaa"
+ }
+ }
+ },
+ "type": "aaaaaaaaaaaaaaaaaaa",
+ "location": "aaaaaaaaaaaaa"
+ }
+ ],
+ "nextLink": "aaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a664572d70b1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {}
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_AutoPlacedOnDedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_AutoPlacedOnDedicatedHostGroup.json
new file mode 100644
index 000000000000..bef9b41b00b2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_AutoPlacedOnDedicatedHostGroup.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myVirtualMachineScaleSet",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVirtualMachineScaleSet",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVirtualMachineScaleSet",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "West US",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": false,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": false
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "diskSizeGB": 30
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerNamePrefix": "myVirtualMachineScaleSet",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ }
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": false,
+ "doNotRunExtensionsOnOverprovisionedVMs": false,
+ "platformFaultDomainCount": 1,
+ "hostGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithDiskControllerType.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithDiskControllerType.json
new file mode 100644
index 000000000000..0fee2e3158dc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithDiskControllerType.json
@@ -0,0 +1,108 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myVirtualMachineScaleSet",
+ "api-version": "2023-07-01",
+ "$expand": "userData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVirtualMachineScaleSet",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVirtualMachineScaleSet",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": false,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": false
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "diskSizeGB": 30
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2"
+ },
+ "dataDisks": [],
+ "diskControllerType": "NVMe"
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerNamePrefix": "myVirtualMachineScaleSet",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ }
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": false,
+ "doNotRunExtensionsOnOverprovisionedVMs": false,
+ "platformFaultDomainCount": 1,
+ "hostGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithUserData.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithUserData.json
new file mode 100644
index 000000000000..007f8cf1a4c8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithUserData.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "vmScaleSetName": "myVirtualMachineScaleSet",
+ "api-version": "2023-07-01",
+ "$expand": "userData"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myVirtualMachineScaleSet",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVirtualMachineScaleSet",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "westus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": false,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": false
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "diskSizeGB": 30
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2"
+ },
+ "dataDisks": []
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "myTag1",
+ "order": 1,
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0",
+ "configurationReference": "https://mystorageaccount.blob.core.windows.net/configurations/settings.config"
+ },
+ {
+ "packageReferenceId": "/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1"
+ }
+ ]
+ },
+ "userData": "RXhhbXBsZSBVc2VyRGF0YQ==",
+ "osProfile": {
+ "computerNamePrefix": "myVirtualMachineScaleSet",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ }
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": false,
+ "doNotRunExtensionsOnOverprovisionedVMs": false,
+ "platformFaultDomainCount": 1,
+ "hostGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/hostGroups/myHostGroup"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MaximumSet_Gen.json
new file mode 100644
index 000000000000..dd2c98c8fe86
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MaximumSet_Gen.json
@@ -0,0 +1,369 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer",
+ "exactVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "id": "a"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "createOption": "FromImage",
+ "name": "aaaaaaaaaaaaaaa",
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "diskSizeGB": 30,
+ "osType": "Windows",
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "vhdContainers": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "dataDisks": [
+ {
+ "name": "aaaaaaaaaaaaaa",
+ "lun": 24,
+ "caching": "None",
+ "writeAcceleratorEnabled": true,
+ "createOption": "FromImage",
+ "diskSizeGB": 11,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskIOPSReadWrite": 11,
+ "diskMBpsReadWrite": 13
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "customData": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "aaaaaaa",
+ "certificateStore": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "{vmss-name}",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa",
+ "domainNameLabelScope": "TenantReuse"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaa"
+ ]
+ },
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "healthProbe": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ },
+ "networkApiVersion": "2020-11-01"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "aa",
+ "type": "aaaaa",
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaaaaaaaaaaaaa",
+ "provisionAfterExtensions": [
+ "aaaaaaaaaaaaaa"
+ ],
+ "suppressFailures": true
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "licenseType": "aaaaaaaaaa",
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 4
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "aa",
+ "enable": true
+ }
+ },
+ "userData": "aaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaaaaaaaa",
+ "order": 29,
+ "packageReferenceId": "aaaaaaaaaa",
+ "configurationReference": "aaaaa"
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual",
+ "rollingUpgradePolicy": {
+ "maxBatchInstancePercent": 49,
+ "maxUnhealthyInstancePercent": 81,
+ "maxUnhealthyUpgradedInstancePercent": 98,
+ "pauseTimeBetweenBatches": "aaaaaaaaaaaaaaa",
+ "enableCrossZoneUpgrade": true,
+ "prioritizeUnhealthyInstances": true,
+ "rollbackFailedInstancesOnPolicyBreach": true,
+ "maxSurge": true
+ },
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true,
+ "disableAutomaticRollback": true
+ }
+ },
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "provisioningState": "succeeded",
+ "doNotRunExtensionsOnOverprovisionedVMs": true,
+ "uniqueId": "aaaaaaaa",
+ "singlePlacementGroup": true,
+ "zoneBalance": true,
+ "platformFaultDomainCount": 1,
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "Default"
+ ],
+ "forceDeletion": true
+ },
+ "orchestrationMode": "Uniform",
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "aaaaaaaaaa"
+ }
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "tenantId": "aaaaaaaaaaaaaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key3951": {
+ "principalId": "aaaa",
+ "clientId": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaaaaaaaaaaaaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}",
+ "name": "{virtualMachineScaleSetName}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "tags": {
+ "key8425": "aaa"
+ }
+ }
+ ],
+ "nextLink": "aaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MinimumSet_Gen.json
new file mode 100644
index 000000000000..fc79677de995
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MinimumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListBySubscription_ByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListBySubscription_ByLocation.json
new file mode 100644
index 000000000000..db94f8c8076a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListBySubscription_ByLocation.json
@@ -0,0 +1,169 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "eastus",
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{virtualMachineScaleSetName}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "eastus",
+ "tags": {
+ "myTag1": "tagValue1"
+ },
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": false,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": false
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "diskSizeGB": 30
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerNamePrefix": "{virtualMachineScaleSetName}",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ }
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": false,
+ "doNotRunExtensionsOnOverprovisionedVMs": false,
+ "platformFaultDomainCount": 1
+ }
+ },
+ {
+ "name": "{virtualMachineScaleSetName}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}1",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "eastus",
+ "tags": {
+ "myTag1": "tagValue2"
+ },
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": false,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": false
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS"
+ },
+ "diskSizeGB": 30
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerNamePrefix": "{virtualMachineScaleSetName}",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": false
+ }
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic1",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ }
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": false,
+ "doNotRunExtensionsOnOverprovisionedVMs": false,
+ "platformFaultDomainCount": 1
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MaximumSet_Gen.json
new file mode 100644
index 000000000000..225883950843
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MaximumSet_Gen.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "resourceType": "aaaaaaaaaaaaaaaaa",
+ "sku": {
+ "name": "DSv3-Type1",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "capacity": {
+ "minimum": 22,
+ "maximum": 27,
+ "defaultCapacity": 20,
+ "scaleType": "Automatic"
+ }
+ }
+ ],
+ "nextLink": "aaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MinimumSet_Gen.json
new file mode 100644
index 000000000000..b189a4195713
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MinimumSet_Gen.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {}
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..5bdf329518b1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MaximumSet_Gen.json
@@ -0,0 +1,685 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{virtualMachineScaleSetName}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "eastus",
+ "tags": {},
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": true,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true,
+ "disableAutomaticRollback": true,
+ "useRollingUpgradePolicy": true
+ },
+ "rollingUpgradePolicy": {
+ "maxBatchInstancePercent": 49,
+ "maxUnhealthyInstancePercent": 81,
+ "maxUnhealthyUpgradedInstancePercent": 98,
+ "pauseTimeBetweenBatches": "aaaaaaaaaaaaaaa",
+ "enableCrossZoneUpgrade": true,
+ "prioritizeUnhealthyInstances": true,
+ "rollbackFailedInstancesOnPolicyBreach": true,
+ "maxSurge": true
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 30,
+ "name": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "osType": "Windows",
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "vhdContainers": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2",
+ "exactVersion": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "sharedGalleryImageId": "aaaaaaaaaaaaaaaaaaaaaa",
+ "id": "aaaaaaaaaa"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerNamePrefix": "{virtualMachineScaleSetName}",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "customData": "aaaaaaaaaaaaaaaaaa",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "aaaaaaa",
+ "certificateStore": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ },
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ },
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaa"
+ ]
+ },
+ "enableIPForwarding": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "healthProbe": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ },
+ "networkApiVersion": "2020-11-01"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "aa",
+ "type": "aaaaa",
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaaaaaaaaaaaaa",
+ "provisionAfterExtensions": [
+ "aaaaaaaaaaaaaa"
+ ],
+ "suppressFailures": true
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "licenseType": "aaaa",
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 4
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "aa",
+ "enable": true
+ }
+ },
+ "userData": "aaaaaaaaaaaaaaaaaaaaaaaaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaaaaaaaa",
+ "order": 29,
+ "packageReferenceId": "aaaaaaaaaa",
+ "configurationReference": "aaaaa"
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": true,
+ "doNotRunExtensionsOnOverprovisionedVMs": true,
+ "platformFaultDomainCount": 1,
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "uniqueId": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "zoneBalance": true,
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "Default"
+ ],
+ "forceDeletion": true
+ },
+ "orchestrationMode": "Uniform",
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "aaaaaaaaaa"
+ }
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "tenantId": "aaaaaaaaaaaaaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key3951": {
+ "principalId": "aaaa",
+ "clientId": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ }
+ },
+ {
+ "name": "{virtualMachineScaleSetName}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}1",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "location": "eastus",
+ "tags": {},
+ "sku": {
+ "name": "Standard_D2s_v3",
+ "tier": "Standard",
+ "capacity": 4
+ },
+ "properties": {
+ "singlePlacementGroup": true,
+ "upgradePolicy": {
+ "mode": "Automatic",
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true,
+ "disableAutomaticRollback": true,
+ "useRollingUpgradePolicy": true
+ },
+ "rollingUpgradePolicy": {
+ "maxBatchInstancePercent": 49,
+ "maxUnhealthyInstancePercent": 81,
+ "maxUnhealthyUpgradedInstancePercent": 98,
+ "pauseTimeBetweenBatches": "aaaaaaaaaaaaaaa",
+ "enableCrossZoneUpgrade": true,
+ "prioritizeUnhealthyInstances": true,
+ "maxSurge": true
+ }
+ },
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "FromImage",
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Premium_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskSizeGB": 30,
+ "name": "a",
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "osType": "Windows",
+ "image": {
+ "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd"
+ },
+ "vhdContainers": [
+ "aaaaaaaaaaaaaaaa"
+ ]
+ },
+ "imageReference": {
+ "publisher": "azuredatabricks",
+ "offer": "databricks",
+ "sku": "databricksworker",
+ "version": "3.15.2",
+ "exactVersion": "aa",
+ "sharedGalleryImageId": "aaaaaaa",
+ "id": "aaa"
+ },
+ "dataDisks": []
+ },
+ "osProfile": {
+ "computerNamePrefix": "{virtualMachineScaleSetName}",
+ "adminUsername": "admin",
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "aaa",
+ "keyData": "aaaaaa"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "customData": "a",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "Manual",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault"
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "aaaaaaa",
+ "certificateStore": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "myNic1",
+ "properties": {
+ "primary": true,
+ "ipConfigurations": [
+ {
+ "name": "myIPConfig",
+ "properties": {
+ "primary": true,
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/myVNet/subnets/mySubnet"
+ },
+ "publicIPAddressConfiguration": {
+ "name": "aaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "idleTimeoutInMinutes": 18,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ ]
+ }
+ }
+ ],
+ "networkSecurityGroup": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup"
+ },
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaa"
+ ]
+ },
+ "enableIPForwarding": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "healthProbe": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpcName/restorePoints/restorePointName/diskRestorePoints/testingexcludedisk_OsDisk_1_74cdaedcea50483d9833c96adefa100f_22b4bdfe-6c54-4f72-84d8-85d8860f0c57"
+ },
+ "networkApiVersion": "2020-11-01"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "aaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "aa",
+ "type": "aaaaa",
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaa",
+ "type": "aaaaaaaa",
+ "typeHandlerVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaaaaaaaaaaaaa",
+ "provisionAfterExtensions": [
+ "aaaaaaaaaaaaaa"
+ ],
+ "suppressFailures": true
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "extensionsTimeBudget": "aaaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "licenseType": "aaaaaaaaaaaaaaaaaaaaaaa",
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": 4
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "aa",
+ "enable": true
+ }
+ },
+ "userData": "aaaaaaaaaaaaaaaaaaaaaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaaaaaaaa",
+ "order": 29,
+ "packageReferenceId": "aaaaaaaaaa",
+ "configurationReference": "aaaaa"
+ }
+ ]
+ }
+ },
+ "provisioningState": "succeeded",
+ "overprovision": true,
+ "doNotRunExtensionsOnOverprovisionedVMs": true,
+ "platformFaultDomainCount": 1,
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ },
+ "uniqueId": "aaaaa",
+ "zoneBalance": true,
+ "proximityPlacementGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "Default"
+ ],
+ "forceDeletion": true
+ },
+ "orchestrationMode": "Uniform",
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "aaaaaaaaaa"
+ }
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "tenantId": "aaaaaaaaaaaaaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key3951": {
+ "principalId": "aaaa",
+ "clientId": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ }
+ }
+ ],
+ "nextLink": "aaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..d9a57e76f3a4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MinimumSet_Gen.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "eastus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}"
+ },
+ {
+ "location": "eastus",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MaximumSet_Gen.json
new file mode 100644
index 000000000000..bd835be8550e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MaximumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MinimumSet_Gen.json
new file mode 100644
index 000000000000..d0668540d3f3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MaximumSet_Gen.json
new file mode 100644
index 000000000000..90ac77a586f8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MaximumSet_Gen.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "skipShutdown": true,
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ee411b9e60b7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "a",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MaximumSet_Gen.json
new file mode 100644
index 000000000000..bbd10ca29d86
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MaximumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "VirtualMachineScaleSetReapplyTestRG",
+ "vmScaleSetName": "VMSSReapply-Test-ScaleSet",
+ "api-version": "2023-07-01",
+ "subscriptionId": "b4f1213b-cacc-4816-8bfb-f30f90643de8"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/b4f1213b-cacc-4816-8bfb-f30f90643de8/providers/Microsoft.Compute/locations/eastus/operationResults/c57dff56-0cd2-4e24-8d11-4e18d77f7e85?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MinimumSet_Gen.json
new file mode 100644
index 000000000000..bbd10ca29d86
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "VirtualMachineScaleSetReapplyTestRG",
+ "vmScaleSetName": "VMSSReapply-Test-ScaleSet",
+ "api-version": "2023-07-01",
+ "subscriptionId": "b4f1213b-cacc-4816-8bfb-f30f90643de8"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/b4f1213b-cacc-4816-8bfb-f30f90643de8/providers/Microsoft.Compute/locations/eastus/operationResults/c57dff56-0cd2-4e24-8d11-4e18d77f7e85?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MaximumSet_Gen.json
new file mode 100644
index 000000000000..47112104702d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MaximumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MinimumSet_Gen.json
new file mode 100644
index 000000000000..e51674312dc3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d0eb40d82d43
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MaximumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MinimumSet_Gen.json
new file mode 100644
index 000000000000..e51674312dc3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b748e8e6653e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MaximumSet_Gen.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmScaleSetReimageInput": {
+ "instanceIds": [
+ "aaaaaaaaaa"
+ ],
+ "tempDisk": true
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MinimumSet_Gen.json
new file mode 100644
index 000000000000..cf0e08636478
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MaximumSet_Gen.json
new file mode 100644
index 000000000000..298fcbc8d32d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MaximumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MinimumSet_Gen.json
new file mode 100644
index 000000000000..a992890a8424
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4d2fd2a9e59e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MaximumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaa",
+ "parameters": {
+ "serviceName": "AutomaticRepairs",
+ "action": "Resume"
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MinimumSet_Gen.json
new file mode 100644
index 000000000000..68c4cfb5bb89
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MinimumSet_Gen.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "parameters": {
+ "serviceName": "AutomaticRepairs",
+ "action": "Resume"
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MaximumSet_Gen.json
new file mode 100644
index 000000000000..e4dd5f4d26f1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MaximumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MinimumSet_Gen.json
new file mode 100644
index 000000000000..ade66517d363
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaa",
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a07eec771ddf
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MaximumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MinimumSet_Gen.json
new file mode 100644
index 000000000000..18718b247564
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MinimumSet_Gen.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "vmInstanceIDs": {
+ "instanceIds": [
+ "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ ]
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MaximumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..e0e6eb47fd43
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MaximumSet_Gen.json
@@ -0,0 +1,649 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaa",
+ "parameters": {
+ "sku": {
+ "name": "DSv3-Type1",
+ "tier": "aaa",
+ "capacity": 7
+ },
+ "plan": {
+ "publisher": "microsoft-ads",
+ "product": "windows-data-science-vm",
+ "name": "windows2016",
+ "promotionCode": "aaaaaaaaaa"
+ },
+ "properties": {
+ "upgradePolicy": {
+ "mode": "Manual",
+ "rollingUpgradePolicy": {
+ "maxBatchInstancePercent": 49,
+ "maxUnhealthyInstancePercent": 81,
+ "maxUnhealthyUpgradedInstancePercent": 98,
+ "pauseTimeBetweenBatches": "aaaaaaaaaaaaaaa",
+ "enableCrossZoneUpgrade": true,
+ "prioritizeUnhealthyInstances": true,
+ "rollbackFailedInstancesOnPolicyBreach": true,
+ "maxSurge": true
+ },
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true,
+ "disableAutomaticRollback": true
+ }
+ },
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "PT30M"
+ },
+ "virtualMachineProfile": {
+ "osProfile": {
+ "customData": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never"
+ }
+ },
+ "timeZone": "aaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "linuxConfiguration": {
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "disablePasswordAuthentication": true,
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "aaaaaaa",
+ "certificateStore": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ ]
+ },
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer",
+ "sharedGalleryImageId": "aaaaaa",
+ "id": "aaaaaaaaaaaaaaaaaaa"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "writeAcceleratorEnabled": true,
+ "diskSizeGB": 6,
+ "image": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd"
+ },
+ "vhdContainers": [
+ "aa"
+ ],
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ }
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": 1023,
+ "createOption": "Empty",
+ "lun": 26,
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "caching": "None",
+ "writeAcceleratorEnabled": true,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskIOPSReadWrite": 28,
+ "diskMBpsReadWrite": 15
+ }
+ ]
+ },
+ "networkProfile": {
+ "healthProbe": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/disk123"
+ },
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "primary": true,
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "dnsSettings": {
+ "dnsServers": []
+ },
+ "ipConfigurations": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/disk123"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "a",
+ "properties": {
+ "idleTimeoutInMinutes": 3,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "deleteOption": "Delete"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ]
+ }
+ }
+ ],
+ "enableIPForwarding": true,
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "networkApiVersion": "2020-11-01"
+ },
+ "securityProfile": {
+ "encryptionAtHost": true,
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net",
+ "enabled": true
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "properties": {
+ "autoUpgradeMinorVersion": true,
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "settings": {},
+ "forceUpdateTag": "aaaaaaaaa",
+ "enableAutomaticUpgrade": true,
+ "protectedSettings": {},
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ }
+ }
+ ],
+ "extensionsTimeBudget": "PT1H20M"
+ },
+ "licenseType": "aaaaaaaaaaaa",
+ "billingProfile": {
+ "maxPrice": -1
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ }
+ },
+ "userData": "aaaaaaaaaaaaa"
+ },
+ "overprovision": true,
+ "doNotRunExtensionsOnOverprovisionedVMs": true,
+ "singlePlacementGroup": true,
+ "additionalCapabilities": {
+ "hibernationEnabled": true,
+ "ultraSSDEnabled": true
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "OldestVM"
+ ],
+ "forceDeletion": true
+ },
+ "proximityPlacementGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key3951": {}
+ }
+ },
+ "tags": {
+ "key246": "aaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ },
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "sku": {
+ "tier": "Standard",
+ "capacity": 3,
+ "name": "Standard_D1_v2"
+ },
+ "location": "westus",
+ "properties": {
+ "overprovision": true,
+ "virtualMachineProfile": {
+ "storageProfile": {
+ "imageReference": {
+ "sku": "2016-Datacenter",
+ "publisher": "MicrosoftWindowsServer",
+ "version": "latest",
+ "offer": "WindowsServer",
+ "exactVersion": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "sharedGalleryImageId": "aaaaaa",
+ "id": "aaaaaaaaaaaaaaaaaaa"
+ },
+ "osDisk": {
+ "caching": "ReadWrite",
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "createOption": "FromImage",
+ "name": "aaaaaaaaaaaaaaa",
+ "writeAcceleratorEnabled": true,
+ "diffDiskSettings": {
+ "option": "Local",
+ "placement": "CacheDisk"
+ },
+ "diskSizeGB": 6,
+ "osType": "Windows",
+ "image": {
+ "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd"
+ },
+ "vhdContainers": [
+ "aa"
+ ]
+ },
+ "dataDisks": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "lun": 26,
+ "caching": "None",
+ "writeAcceleratorEnabled": true,
+ "createOption": "Empty",
+ "diskSizeGB": 1023,
+ "managedDisk": {
+ "storageAccountType": "Standard_LRS",
+ "diskEncryptionSet": {
+ "id": "aaaaaaaaaaaa"
+ }
+ },
+ "diskIOPSReadWrite": 28,
+ "diskMBpsReadWrite": 15
+ }
+ ]
+ },
+ "osProfile": {
+ "computerNamePrefix": "{vmss-name}",
+ "adminUsername": "{your-username}",
+ "customData": "aaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "windowsConfiguration": {
+ "provisionVMAgent": true,
+ "enableAutomaticUpdates": true,
+ "timeZone": "aaaaaaaaaaaaaaaa",
+ "additionalUnattendContent": [
+ {
+ "passName": "OobeSystem",
+ "componentName": "Microsoft-Windows-Shell-Setup",
+ "settingName": "AutoLogon",
+ "content": "aaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "patchSettings": {
+ "patchMode": "AutomaticByPlatform",
+ "enableHotpatching": true,
+ "assessmentMode": "ImageDefault",
+ "automaticByPlatformSettings": {
+ "rebootSetting": "Never"
+ }
+ },
+ "winRM": {
+ "listeners": [
+ {
+ "protocol": "Http",
+ "certificateUrl": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ },
+ "linuxConfiguration": {
+ "disablePasswordAuthentication": true,
+ "ssh": {
+ "publicKeys": [
+ {
+ "path": "/home/{your-username}/.ssh/authorized_keys",
+ "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1"
+ }
+ ]
+ },
+ "provisionVMAgent": true,
+ "patchSettings": {
+ "patchMode": "ImageDefault",
+ "assessmentMode": "ImageDefault"
+ }
+ },
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "aaaaaaa",
+ "certificateStore": "aaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaceConfigurations": [
+ {
+ "name": "aaaaaaaa",
+ "properties": {
+ "primary": true,
+ "enableIPForwarding": true,
+ "ipConfigurations": [
+ {
+ "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "properties": {
+ "subnet": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/disk123"
+ },
+ "primary": true,
+ "publicIPAddressConfiguration": {
+ "name": "a",
+ "properties": {
+ "idleTimeoutInMinutes": 3,
+ "dnsSettings": {
+ "domainNameLabel": "aaaaaaaaaaaaaaaaaa"
+ },
+ "ipTags": [
+ {
+ "ipTagType": "aaaaaaa",
+ "tag": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "publicIPPrefix": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "publicIPAddressVersion": "IPv4",
+ "deleteOption": "Delete"
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Regional"
+ }
+ },
+ "privateIPAddressVersion": "IPv4",
+ "applicationGatewayBackendAddressPools": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ],
+ "applicationSecurityGroups": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ],
+ "loadBalancerBackendAddressPools": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ],
+ "loadBalancerInboundNatPools": [
+ {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ ]
+ }
+ }
+ ],
+ "enableAcceleratedNetworking": true,
+ "enableFpga": true,
+ "networkSecurityGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "dnsSettings": {
+ "dnsServers": [
+ "aaaaaaaaaaaa"
+ ]
+ },
+ "deleteOption": "Delete"
+ }
+ }
+ ],
+ "healthProbe": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/disk123"
+ },
+ "networkApiVersion": "2020-11-01"
+ },
+ "securityProfile": {
+ "uefiSettings": {
+ "secureBootEnabled": true,
+ "vTpmEnabled": true
+ },
+ "encryptionAtHost": true,
+ "securityType": "TrustedLaunch"
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": true,
+ "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net"
+ }
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "{extension-name}",
+ "type": "aaaaa",
+ "properties": {
+ "forceUpdateTag": "aaaaaaaaa",
+ "publisher": "{extension-Publisher}",
+ "type": "{extension-Type}",
+ "typeHandlerVersion": "{handler-version}",
+ "autoUpgradeMinorVersion": true,
+ "enableAutomaticUpgrade": true,
+ "settings": {},
+ "protectedSettings": {},
+ "provisioningState": "aaaaaaaaaaaaaa",
+ "provisionAfterExtensions": [
+ "aa"
+ ],
+ "suppressFailures": true
+ },
+ "id": "aaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ],
+ "extensionsTimeBudget": "PT1H20M"
+ },
+ "licenseType": "aaaaaaaaaaaa",
+ "priority": "Regular",
+ "evictionPolicy": "Deallocate",
+ "billingProfile": {
+ "maxPrice": -1
+ },
+ "scheduledEventsProfile": {
+ "terminateNotificationProfile": {
+ "notBeforeTimeout": "PT10M",
+ "enable": true
+ }
+ },
+ "userData": "aaaaaaaaaaaaa",
+ "capacityReservation": {
+ "capacityReservationGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ }
+ },
+ "applicationProfile": {
+ "galleryApplications": [
+ {
+ "tags": "aaaaaaaaaaa",
+ "order": 29,
+ "packageReferenceId": "aaaaaaaaaa",
+ "configurationReference": "aaaaa"
+ }
+ ]
+ }
+ },
+ "upgradePolicy": {
+ "mode": "Manual",
+ "rollingUpgradePolicy": {
+ "maxBatchInstancePercent": 49,
+ "maxUnhealthyInstancePercent": 81,
+ "maxUnhealthyUpgradedInstancePercent": 98,
+ "pauseTimeBetweenBatches": "aaaaaaaaaaaaaaa",
+ "enableCrossZoneUpgrade": true,
+ "prioritizeUnhealthyInstances": true,
+ "maxSurge": true
+ },
+ "automaticOSUpgradePolicy": {
+ "enableAutomaticOSUpgrade": true,
+ "disableAutomaticRollback": true
+ }
+ },
+ "automaticRepairsPolicy": {
+ "enabled": true,
+ "gracePeriod": "PT30M"
+ },
+ "provisioningState": "succeeded",
+ "doNotRunExtensionsOnOverprovisionedVMs": true,
+ "uniqueId": "aaaaaaaa",
+ "singlePlacementGroup": true,
+ "zoneBalance": true,
+ "platformFaultDomainCount": 1,
+ "proximityPlacementGroup": {
+ "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "hostGroup": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
+ },
+ "additionalCapabilities": {
+ "ultraSSDEnabled": true,
+ "hibernationEnabled": true
+ },
+ "scaleInPolicy": {
+ "rules": [
+ "OldestVM"
+ ],
+ "forceDeletion": true
+ },
+ "orchestrationMode": "Uniform",
+ "spotRestorePolicy": {
+ "enabled": true,
+ "restoreTimeout": "aaaaaaaaaa"
+ }
+ },
+ "plan": {
+ "name": "aaaaaaaaaa",
+ "publisher": "aaaaaaaaaaaaaaaaaaaaaa",
+ "product": "aaaaaaaaaaaaaaaaaaaa",
+ "promotionCode": "aaaaaaaaaaaaaaaaaaaa"
+ },
+ "identity": {
+ "principalId": "aaaaaaaaaaaaaaa",
+ "tenantId": "aaaaaaaaaaaaaaaa",
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {
+ "key3951": {
+ "principalId": "aaaa",
+ "clientId": "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ }
+ },
+ "zones": [
+ "aaaaaaaaaaaaaaaaaaaa"
+ ],
+ "extendedLocation": {
+ "name": "aaaaaaaaaaaaaaaaaaaaa",
+ "type": "EdgeZone"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}",
+ "name": "{virtualMachineScaleSetName}",
+ "type": "Microsoft.Compute/virtualMachineScaleSets",
+ "tags": {
+ "key8425": "aaa"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MinimumSet_Gen.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MinimumSet_Gen.json
new file mode 100644
index 000000000000..431d2f02e02f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MinimumSet_Gen.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "rgcompute",
+ "vmScaleSetName": "aaaaaaaaaaaaaa",
+ "parameters": {},
+ "api-version": "2023-07-01",
+ "subscriptionId": "{subscription-id}"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/image.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/image.json
new file mode 100644
index 000000000000..a99599dc9623
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/image.json
@@ -0,0 +1,597 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}": {
+ "put": {
+ "tags": [
+ "Images"
+ ],
+ "operationId": "Images_CreateOrUpdate",
+ "description": "Create or update an image.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "imageName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the image."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Image"
+ },
+ "description": "Parameters supplied to the Create Image operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Image"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Image"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a virtual machine image from a blob.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromABlob.json"
+ },
+ "Create a virtual machine image from a snapshot.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromASnapshot.json"
+ },
+ "Create a virtual machine image from a managed disk.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromAManagedDisk.json"
+ },
+ "Create a virtual machine image from an existing virtual machine.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromAVM.json"
+ },
+ "Create a virtual machine image that includes a data disk from a blob.": {
+ "$ref": "./examples/imageExamples/Image_Create_DataDiskFromABlobIncluded.json"
+ },
+ "Create a virtual machine image that includes a data disk from a snapshot.": {
+ "$ref": "./examples/imageExamples/Image_Create_DataDiskFromASnapshotIncluded.json"
+ },
+ "Create a virtual machine image that includes a data disk from a managed disk.": {
+ "$ref": "./examples/imageExamples/Image_Create_DataDiskFromAManagedDiskIncluded.json"
+ },
+ "Create a virtual machine image from a blob with DiskEncryptionSet resource.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromABlobWithDiskEncryptionSet.json"
+ },
+ "Create a virtual machine image from a snapshot with DiskEncryptionSet resource.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromASnapshotWithDiskEncryptionSet.json"
+ },
+ "Create a virtual machine image from a managed disk with DiskEncryptionSet resource.": {
+ "$ref": "./examples/imageExamples/Image_CreateFromAManagedDiskWithDiskEncryptionSet.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "Images"
+ ],
+ "operationId": "Images_Update",
+ "description": "Update an image.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "imageName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the image."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImageUpdate"
+ },
+ "description": "Parameters supplied to the Update Image operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Image"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Image"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Updates tags of an Image.": {
+ "$ref": "./examples/imageExamples/Image_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Images"
+ ],
+ "operationId": "Images_Delete",
+ "description": "Deletes an Image.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "imageName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the image."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Image_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/imageExamples/Images_Delete_MaximumSet_Gen.json"
+ },
+ "Image_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/imageExamples/Images_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Images"
+ ],
+ "operationId": "Images_Get",
+ "description": "Gets an image.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "imageName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the image."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Image"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a virtual machine image.": {
+ "$ref": "./examples/imageExamples/Image_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images": {
+ "get": {
+ "tags": [
+ "Images"
+ ],
+ "operationId": "Images_ListByResourceGroup",
+ "description": "Gets the list of images under a resource group. Use nextLink property in the response to get the next page of Images. Do this till nextLink is null to fetch all the Images.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ImageListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all virtual machine images in a resource group.": {
+ "$ref": "./examples/imageExamples/Image_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images": {
+ "get": {
+ "tags": [
+ "Images"
+ ],
+ "operationId": "Images_List",
+ "description": "Gets the list of Images in the subscription. Use nextLink property in the response to get the next page of Images. Do this till nextLink is null to fetch all the Images.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ImageListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all virtual machine images in a subscription.": {
+ "$ref": "./examples/imageExamples/Image_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ImageOSDisk": {
+ "properties": {
+ "osType": {
+ "type": "string",
+ "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image. Possible values are: **Windows,** **Linux.**",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "osState": {
+ "type": "string",
+ "description": "The OS State. For managed images, use Generalized.",
+ "enum": [
+ "Generalized",
+ "Specialized"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemStateTypes",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "Generalized",
+ "description": "Generalized image. Needs to be provisioned during deployment time."
+ },
+ {
+ "value": "Specialized",
+ "description": "Specialized image. Contains already provisioned OS Disk."
+ }
+ ]
+ }
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ImageDisk"
+ }
+ ],
+ "required": [
+ "osType",
+ "osState"
+ ],
+ "description": "Describes an Operating System disk."
+ },
+ "ImageDataDisk": {
+ "properties": {
+ "lun": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ImageDisk"
+ }
+ ],
+ "required": [
+ "lun"
+ ],
+ "description": "Describes a data disk."
+ },
+ "ImageDisk": {
+ "properties": {
+ "snapshot": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The snapshot."
+ },
+ "managedDisk": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The managedDisk."
+ },
+ "blobUri": {
+ "type": "string",
+ "description": "The Virtual Hard Disk."
+ },
+ "caching": {
+ "type": "string",
+ "description": "Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The default values are: **None for Standard storage. ReadOnly for Premium storage.**",
+ "enum": [
+ "None",
+ "ReadOnly",
+ "ReadWrite"
+ ],
+ "x-ms-enum": {
+ "name": "CachingTypes",
+ "modelAsString": false
+ }
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image. This value cannot be larger than 1023 GB."
+ },
+ "storageAccountType": {
+ "$ref": "./computeRPCommon.json#/definitions/StorageAccountType",
+ "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk."
+ },
+ "diskEncryptionSet": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskEncryptionSetParameters",
+ "description": "Specifies the customer managed disk encryption set resource id for the managed image disk."
+ }
+ },
+ "description": "Describes a image disk."
+ },
+ "ImageStorageProfile": {
+ "properties": {
+ "osDisk": {
+ "$ref": "#/definitions/ImageOSDisk",
+ "description": "Specifies information about the operating system disk used by the virtual machine.
For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImageDataDisk"
+ },
+ "x-ms-identifiers": [
+ "lun"
+ ],
+ "description": "Specifies the parameters that are used to add a data disk to a virtual machine.
For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "zoneResilient": {
+ "type": "boolean",
+ "description": "Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS)."
+ }
+ },
+ "description": "Describes a storage profile."
+ },
+ "ImageProperties": {
+ "properties": {
+ "sourceVirtualMachine": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The source virtual machine from which Image is created."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/ImageStorageProfile",
+ "description": "Specifies the storage settings for the virtual machine disks."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state."
+ },
+ "hyperVGeneration": {
+ "$ref": "./computeRPCommon.json#/definitions/HyperVGenerationType",
+ "description": "Specifies the HyperVGenerationType of the VirtualMachine created from the image. From API Version 2019-03-01 if the image source is a blob, then we need the user to specify the value, if the source is managed resource like disk or snapshot, we may require the user to specify the property if we cannot deduce it from the source managed resource."
+ }
+ },
+ "description": "Describes the properties of an Image."
+ },
+ "Image": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ImageProperties"
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location of the Image."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist."
+ },
+ "ImageUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ImageProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "The source user image virtual hard disk. Only tags may be updated."
+ },
+ "ImageListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Image"
+ },
+ "description": "The list of Images."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of Images. Call ListNext() with this to fetch the next page of Images."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Image operation response."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/logAnalytic.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/logAnalytic.json
new file mode 100644
index 000000000000..90ccd427dae7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/logAnalytic.json
@@ -0,0 +1,259 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": {
+ "post": {
+ "tags": [
+ "LogAnalytics"
+ ],
+ "operationId": "LogAnalytics_ExportRequestRateByInterval",
+ "x-ms-examples": {
+ "Export logs which contain all Api requests made to Compute Resource Provider within the given time period broken down by intervals.": {
+ "$ref": "./examples/logAnalyticExamples/LogAnalytics_RequestRateByInterval.json"
+ }
+ },
+ "description": "Export logs that show Api requests made by this subscription in the given time window to show throttling activities.",
+ "parameters": [
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RequestRateByIntervalInput"
+ },
+ "description": "Parameters supplied to the LogAnalytics getRequestRateByInterval Api."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location upon which virtual-machine-sizes is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/LogAnalyticsOperationResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getThrottledRequests": {
+ "post": {
+ "tags": [
+ "LogAnalytics"
+ ],
+ "operationId": "LogAnalytics_ExportThrottledRequests",
+ "x-ms-examples": {
+ "Export logs which contain all throttled Api requests made to Compute Resource Provider within the given time period.": {
+ "$ref": "./examples/logAnalyticExamples/LogAnalytics_ThrottledRequests.json"
+ }
+ },
+ "description": "Export logs that show total throttled Api requests for this subscription in the given time window.",
+ "parameters": [
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ThrottledRequestsInput"
+ },
+ "description": "Parameters supplied to the LogAnalytics getThrottledRequests Api."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location upon which virtual-machine-sizes is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/LogAnalyticsOperationResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "RequestRateByIntervalInput": {
+ "properties": {
+ "intervalLength": {
+ "type": "string",
+ "description": "Interval value in minutes used to create LogAnalytics call rate logs.",
+ "enum": [
+ "ThreeMins",
+ "FiveMins",
+ "ThirtyMins",
+ "SixtyMins"
+ ],
+ "x-ms-enum": {
+ "name": "IntervalInMins",
+ "modelAsString": false
+ }
+ }
+ },
+ "required": [
+ "intervalLength"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/LogAnalyticsInputBase"
+ }
+ ],
+ "description": "Api request input for LogAnalytics getRequestRateByInterval Api."
+ },
+ "ThrottledRequestsInput": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/LogAnalyticsInputBase"
+ }
+ ],
+ "description": "Api request input for LogAnalytics getThrottledRequests Api."
+ },
+ "LogAnalyticsInputBase": {
+ "properties": {
+ "blobContainerSasUri": {
+ "type": "string",
+ "description": "SAS Uri of the logging blob container to which LogAnalytics Api writes output logs to."
+ },
+ "fromTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "From time of the query"
+ },
+ "toTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "To time of the query"
+ },
+ "groupByThrottlePolicy": {
+ "type": "boolean",
+ "description": "Group query result by Throttle Policy applied."
+ },
+ "groupByOperationName": {
+ "type": "boolean",
+ "description": "Group query result by Operation Name."
+ },
+ "groupByResourceName": {
+ "type": "boolean",
+ "description": "Group query result by Resource Name."
+ },
+ "groupByClientApplicationId": {
+ "type": "boolean",
+ "description": "Group query result by Client Application ID."
+ },
+ "groupByUserAgent": {
+ "type": "boolean",
+ "description": "Group query result by User Agent."
+ }
+ },
+ "required": [
+ "blobContainerSasUri",
+ "fromTime",
+ "toTime"
+ ],
+ "description": "Api input base class for LogAnalytics Api."
+ },
+ "LogAnalyticsOperationResult": {
+ "properties": {
+ "properties": {
+ "readOnly": true,
+ "$ref": "#/definitions/LogAnalyticsOutput",
+ "description": "LogAnalyticsOutput"
+ }
+ },
+ "description": "LogAnalytics operation status response"
+ },
+ "LogAnalyticsOutput": {
+ "properties": {
+ "output": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Output file Uri path to blob container."
+ }
+ },
+ "description": "LogAnalytics output properties"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/proximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/proximityPlacementGroup.json
new file mode 100644
index 000000000000..d801f56de622
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/proximityPlacementGroup.json
@@ -0,0 +1,455 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}": {
+ "put": {
+ "tags": [
+ "ProximityPlacementGroups"
+ ],
+ "operationId": "ProximityPlacementGroups_CreateOrUpdate",
+ "description": "Create or update a proximity placement group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "proximityPlacementGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the proximity placement group."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroup"
+ },
+ "description": "Parameters supplied to the Create Proximity Placement Group operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroup"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update a proximity placement group.": {
+ "$ref": "./examples/proximityPlacementGroupExamples/ProximityPlacementGroup_CreateOrUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ProximityPlacementGroups"
+ ],
+ "operationId": "ProximityPlacementGroups_Update",
+ "description": "Update a proximity placement group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "proximityPlacementGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the proximity placement group."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroupUpdate"
+ },
+ "description": "Parameters supplied to the Update Proximity Placement Group operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a proximity placement group.": {
+ "$ref": "./examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Patch.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ProximityPlacementGroups"
+ ],
+ "operationId": "ProximityPlacementGroups_Delete",
+ "description": "Delete a proximity placement group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "proximityPlacementGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the proximity placement group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a proximity placement group.": {
+ "$ref": "./examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ProximityPlacementGroups"
+ ],
+ "operationId": "ProximityPlacementGroups_Get",
+ "description": "Retrieves information about a proximity placement group .",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "proximityPlacementGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the proximity placement group."
+ },
+ {
+ "name": "includeColocationStatus",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "includeColocationStatus=true enables fetching the colocation status of all the resources in the proximity placement group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get proximity placement groups.": {
+ "$ref": "./examples/proximityPlacementGroupExamples/ProximityPlacementGroup_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups": {
+ "get": {
+ "tags": [
+ "ProximityPlacementGroups"
+ ],
+ "operationId": "ProximityPlacementGroups_ListBySubscription",
+ "description": "Lists all proximity placement groups in a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List proximity placement groups.": {
+ "$ref": "./examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups": {
+ "get": {
+ "tags": [
+ "ProximityPlacementGroups"
+ ],
+ "operationId": "ProximityPlacementGroups_ListByResourceGroup",
+ "description": "Lists all proximity placement groups in a resource group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ProximityPlacementGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List proximity placement group.": {
+ "$ref": "./examples/proximityPlacementGroupExamples/ProximityPlacementGroup_ListByResourceGroup.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ProximityPlacementGroupProperties": {
+ "properties": {
+ "proximityPlacementGroupType": {
+ "type": "string",
+ "description": "Specifies the type of the proximity placement group. Possible values are: **Standard** : Co-locate resources within an Azure region or Availability Zone. **Ultra** : For future use.",
+ "enum": [
+ "Standard",
+ "Ultra"
+ ],
+ "x-ms-enum": {
+ "name": "ProximityPlacementGroupType",
+ "modelAsString": true
+ }
+ },
+ "virtualMachines": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/SubResourceWithColocationStatus"
+ },
+ "description": "A list of references to all virtual machines in the proximity placement group."
+ },
+ "virtualMachineScaleSets": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/SubResourceWithColocationStatus"
+ },
+ "description": "A list of references to all virtual machine scale sets in the proximity placement group."
+ },
+ "availabilitySets": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/SubResourceWithColocationStatus"
+ },
+ "description": "A list of references to all availability sets in the proximity placement group."
+ },
+ "colocationStatus": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus",
+ "description": "Describes colocation status of the Proximity Placement Group."
+ },
+ "intent": {
+ "type": "object",
+ "properties": {
+ "vmSizes": {
+ "type": "array",
+ "description": "Specifies possible sizes of virtual machines that can be created in the proximity placement group.",
+ "items": {
+ "type": "string",
+ "description": "Specifies the size of the virtual machine. Recommended way to get the list of available sizes is using these APIs: [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes), [List all available virtual machine sizes in a region]( https://docs.microsoft.com/rest/api/compute/resourceskus/list), [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/sizes). The available VM sizes depend on region and availability set."
+ }
+ }
+ },
+ "description": "Specifies the user intent of the proximity placement group."
+ }
+ },
+ "description": "Describes the properties of a Proximity Placement Group."
+ },
+ "ProximityPlacementGroup": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ProximityPlacementGroupProperties",
+ "description": "Describes the properties of a Proximity Placement Group."
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Specifies the Availability Zone where virtual machine, virtual machine scale set or availability set associated with the proximity placement group can be created."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Specifies information about the proximity placement group."
+ },
+ "ProximityPlacementGroupUpdate": {
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the proximity placement group."
+ },
+ "ProximityPlacementGroupListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProximityPlacementGroup"
+ },
+ "description": "The list of proximity placement groups"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of proximity placement groups."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Proximity Placement Group operation response."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/restorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/restorePoint.json
new file mode 100644
index 000000000000..f90ae5d2f08a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/restorePoint.json
@@ -0,0 +1,987 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}": {
+ "put": {
+ "tags": [
+ "RestorePointCollections"
+ ],
+ "operationId": "RestorePointCollections_CreateOrUpdate",
+ "description": "The operation to create or update the restore point collection. Please refer to https://aka.ms/RestorePoints for more details. When updating a restore point collection, only tags may be modified.",
+ "x-ms-examples": {
+ "Create or update a restore point collection.": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_CreateOrUpdate.json"
+ },
+ "Create or update a restore point collection for cross region copy.": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_CreateOrUpdate_ForCrossRegionCopy.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point collection."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollection"
+ },
+ "description": "Parameters supplied to the Create or Update restore point collection operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollection"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "RestorePointCollections"
+ ],
+ "operationId": "RestorePointCollections_Update",
+ "description": "The operation to update the restore point collection.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point collection."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollectionUpdate"
+ },
+ "description": "Parameters supplied to the Update restore point collection operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RestorePointCollection_Update_MaximumSet_Gen": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_Update_MaximumSet_Gen.json"
+ },
+ "RestorePointCollection_Update_MinimumSet_Gen": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "RestorePointCollections"
+ ],
+ "operationId": "RestorePointCollections_Delete",
+ "description": "The operation to delete the restore point collection. This operation will also delete all the contained restore points.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Restore Point Collection."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "RestorePointCollection_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_Delete_MaximumSet_Gen.json"
+ },
+ "RestorePointCollection_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "RestorePointCollections"
+ ],
+ "operationId": "RestorePointCollections_Get",
+ "description": "The operation to get the restore point collection.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point collection."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. If expand=restorePoints, server will return all contained restore points in the restorePointCollection.",
+ "enum": [
+ "restorePoints"
+ ],
+ "x-ms-enum": {
+ "name": "RestorePointCollectionExpandOptions",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "x-ms-examples": {
+ "Get a restore point collection (but not the restore points contained in the restore point collection)": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_Get.json"
+ },
+ "Get a restore point collection, including the restore points contained in the restore point collection": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_Get_WithContainedRestorePoints.json"
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections": {
+ "get": {
+ "tags": [
+ "RestorePointCollections"
+ ],
+ "operationId": "RestorePointCollections_List",
+ "description": "Gets the list of restore point collections in a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "x-ms-examples": {
+ "Gets the list of restore point collections in a resource group.": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_ListByResourceGroup.json"
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/restorePointCollections": {
+ "get": {
+ "tags": [
+ "RestorePointCollections"
+ ],
+ "operationId": "RestorePointCollections_ListAll",
+ "description": "Gets the list of restore point collections in the subscription. Use nextLink property in the response to get the next page of restore point collections. Do this till nextLink is not null to fetch all the restore point collections.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RestorePointCollectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Gets the list of restore point collections in a subscription": {
+ "$ref": "./examples/restorePointExamples/RestorePointCollection_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{restorePointName}": {
+ "put": {
+ "operationId": "RestorePoints_Create",
+ "description": "The operation to create the restore point. Updating properties of an existing restore point is not allowed",
+ "x-ms-examples": {
+ "Create a restore point": {
+ "$ref": "./examples/restorePointExamples/RestorePoint_Create.json"
+ },
+ "Copy a restore point to a different region": {
+ "$ref": "./examples/restorePointExamples/RestorePoint_Copy_BetweenRegions.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point collection."
+ },
+ {
+ "name": "restorePointName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RestorePoint"
+ },
+ "description": "Parameters supplied to the Create restore point operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/RestorePoint"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "RestorePoints_Delete",
+ "description": "The operation to delete the restore point.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Restore Point Collection."
+ },
+ {
+ "name": "restorePointName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "RestorePoint_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/restorePointExamples/RestorePoint_Delete_MaximumSet_Gen.json"
+ },
+ "RestorePoint_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/restorePointExamples/RestorePoint_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "operationId": "RestorePoints_Get",
+ "description": "The operation to get the restore point.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point collection."
+ },
+ {
+ "name": "restorePointName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' retrieves information about the run-time state of a restore point.",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "RestorePointExpandOptions",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "x-ms-examples": {
+ "Get a restore point": {
+ "$ref": "./examples/restorePointExamples/RestorePoint_Get.json"
+ },
+ "Get restore point with instance view": {
+ "$ref": "./examples/restorePointExamples/RestorePoint_Get_WithInstanceView.json"
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RestorePoint"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "RestorePointCollectionSourceProperties": {
+ "properties": {
+ "location": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Location of the source resource used to create this restore point collection."
+ },
+ "id": {
+ "type": "string",
+ "description": "Resource Id of the source resource used to create this restore point collection"
+ }
+ },
+ "description": "The properties of the source resource that this restore point collection is created from."
+ },
+ "RestorePointCollectionProperties": {
+ "properties": {
+ "source": {
+ "$ref": "#/definitions/RestorePointCollectionSourceProperties"
+ },
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The provisioning state of the restore point collection."
+ },
+ "restorePointCollectionId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The unique id of the restore point collection."
+ },
+ "restorePoints": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/RestorePoint"
+ },
+ "description": "A list containing all restore points created under this restore point collection."
+ }
+ },
+ "description": "The restore point collection properties."
+ },
+ "RestorePointCollection": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/RestorePointCollectionProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Create or update Restore Point collection parameters."
+ },
+ "RestorePointCollectionUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/RestorePointCollectionProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Update Restore Point collection parameters."
+ },
+ "RestorePointCollectionListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RestorePointCollection"
+ },
+ "description": "Gets the list of restore point collections."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of RestorePointCollections. Call ListNext() with this to fetch the next page of RestorePointCollections"
+ }
+ },
+ "description": "The List restore point collection operation response."
+ },
+ "RestorePointSourceMetadata": {
+ "properties": {
+ "hardwareProfile": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/HardwareProfile",
+ "description": "Gets the hardware profile."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/RestorePointSourceVMStorageProfile",
+ "description": "Gets the storage profile."
+ },
+ "osProfile": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/OSProfile",
+ "description": "Gets the OS profile."
+ },
+ "diagnosticsProfile": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/DiagnosticsProfile",
+ "description": "Gets the diagnostics profile."
+ },
+ "licenseType": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Gets the license type, which is for bring your own license scenario."
+ },
+ "vmId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Gets the virtual machine unique id."
+ },
+ "securityProfile": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/SecurityProfile",
+ "description": "Gets the security profile."
+ },
+ "location": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Location of the VM from which the restore point was created."
+ },
+ "userData": {
+ "type": "string",
+ "readOnly": true,
+ "description": "UserData associated with the source VM for which restore point is captured, which is a base-64 encoded value."
+ },
+ "hyperVGeneration": {
+ "$ref": "./computeRPCommon.json#/definitions/HyperVGenerationType",
+ "readOnly": true,
+ "description": "HyperVGeneration of the source VM for which restore point is captured."
+ }
+ },
+ "description": "Describes the properties of the Virtual Machine for which the restore point was created. The properties provided are a subset and the snapshot of the overall Virtual Machine properties captured at the time of the restore point creation."
+ },
+ "RestorePointSourceVMStorageProfile": {
+ "properties": {
+ "osDisk": {
+ "$ref": "#/definitions/RestorePointSourceVMOSDisk",
+ "description": "Gets the OS disk of the VM captured at the time of the restore point creation."
+ },
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RestorePointSourceVMDataDisk"
+ },
+ "x-ms-identifiers": [
+ "lun"
+ ],
+ "description": "Gets the data disks of the VM captured at the time of the restore point creation."
+ }
+ },
+ "description": "Describes the storage profile."
+ },
+ "RestorePointSourceVMOSDisk": {
+ "properties": {
+ "osType": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Gets the Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemType",
+ "modelAsString": true
+ }
+ },
+ "encryptionSettings": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/DiskEncryptionSettings",
+ "description": "Gets the disk encryption settings."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Gets the disk name."
+ },
+ "caching": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/Caching",
+ "description": "Gets the caching type."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "Gets the disk size in GB."
+ },
+ "managedDisk": {
+ "$ref": "./computeRPCommon.json#/definitions/ManagedDiskParameters",
+ "description": "Gets the managed disk details"
+ },
+ "diskRestorePoint": {
+ "$ref": "#/definitions/DiskRestorePointAttributes",
+ "description": "Contains Disk Restore Point properties."
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "Shows true if the disk is write-accelerator enabled."
+ }
+ },
+ "description": "Describes an Operating System disk."
+ },
+ "RestorePointSourceVMDataDisk": {
+ "properties": {
+ "lun": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "Gets the logical unit number."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Gets the disk name."
+ },
+ "caching": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/Caching",
+ "description": "Gets the caching type."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "Gets the initial disk size in GB for blank data disks, and the new desired size for existing OS and Data disks."
+ },
+ "managedDisk": {
+ "$ref": "./computeRPCommon.json#/definitions/ManagedDiskParameters",
+ "description": "Contains the managed disk details."
+ },
+ "diskRestorePoint": {
+ "$ref": "#/definitions/DiskRestorePointAttributes",
+ "description": "Contains Disk Restore Point properties."
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "Shows true if the disk is write-accelerator enabled."
+ }
+ },
+ "description": "Describes a data disk."
+ },
+ "DiskRestorePointAttributes": {
+ "type": "object",
+ "properties": {
+ "encryption": {
+ "$ref": "#/definitions/RestorePointEncryption"
+ },
+ "sourceDiskRestorePoint": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference",
+ "description": "Resource Id of the source disk restore point."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ }
+ ],
+ "description": "Disk Restore Point details."
+ },
+ "RestorePointEncryption": {
+ "type": "object",
+ "properties": {
+ "diskEncryptionSet": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskEncryptionSetParameters"
+ },
+ "type": {
+ "$ref": "#/definitions/RestorePointEncryptionType"
+ }
+ },
+ "description": "Encryption at rest settings for disk restore point. It is an optional property that can be specified in the input while creating a restore point."
+ },
+ "RestorePointEncryptionType": {
+ "type": "string",
+ "description": "The type of key used to encrypt the data of the disk restore point.",
+ "enum": [
+ "EncryptionAtRestWithPlatformKey",
+ "EncryptionAtRestWithCustomerKey",
+ "EncryptionAtRestWithPlatformAndCustomerKeys"
+ ],
+ "x-ms-enum": {
+ "name": "RestorePointEncryptionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "EncryptionAtRestWithPlatformKey",
+ "description": "Disk Restore Point is encrypted at rest with Platform managed key. "
+ },
+ {
+ "value": "EncryptionAtRestWithCustomerKey",
+ "description": "Disk Restore Point is encrypted at rest with Customer managed key that can be changed and revoked by a customer."
+ },
+ {
+ "value": "EncryptionAtRestWithPlatformAndCustomerKeys",
+ "description": "Disk Restore Point is encrypted at rest with 2 layers of encryption. One of the keys is Customer managed and the other key is Platform managed."
+ }
+ ]
+ }
+ },
+ "RestorePoint": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/RestorePointProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/ProxyResource"
+ }
+ ],
+ "description": "Restore Point details."
+ },
+ "RestorePointInstanceView": {
+ "type": "object",
+ "properties": {
+ "diskRestorePoints": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiskRestorePointInstanceView"
+ },
+ "description": "The disk restore points information."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of a restore point."
+ },
+ "DiskRestorePointInstanceView": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Disk restore point Id."
+ },
+ "replicationStatus": {
+ "$ref": "#/definitions/DiskRestorePointReplicationStatus",
+ "description": "The disk restore point replication status information."
+ }
+ },
+ "description": "The instance view of a disk restore point."
+ },
+ "DiskRestorePointReplicationStatus": {
+ "type": "object",
+ "properties": {
+ "status": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus",
+ "description": "The resource status information."
+ },
+ "completionPercent": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Replication completion percentage."
+ }
+ },
+ "description": "The instance view of a disk restore point."
+ },
+ "RestorePointProperties": {
+ "type": "object",
+ "properties": {
+ "excludeDisks": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference"
+ },
+ "description": "List of disk resource ids that the customer wishes to exclude from the restore point. If no disks are specified, all disks will be included."
+ },
+ "sourceMetadata": {
+ "$ref": "#/definitions/RestorePointSourceMetadata",
+ "description": "Gets the details of the VM captured at the time of the restore point creation."
+ },
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Gets the provisioning state of the restore point."
+ },
+ "consistencyMode": {
+ "type": "string",
+ "enum": [
+ "CrashConsistent",
+ "FileSystemConsistent",
+ "ApplicationConsistent"
+ ],
+ "x-ms-enum": {
+ "name": "ConsistencyModeTypes",
+ "modelAsString": true
+ },
+ "description": "ConsistencyMode of the RestorePoint. Can be specified in the input while creating a restore point. For now, only CrashConsistent is accepted as a valid input. Please refer to https://aka.ms/RestorePoints for more details."
+ },
+ "timeCreated": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Gets the creation time of the restore point."
+ },
+ "sourceRestorePoint": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference",
+ "description": "Resource Id of the source restore point from which a copy needs to be created."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/RestorePointInstanceView",
+ "readOnly": true,
+ "description": "The restore point instance view."
+ }
+ },
+ "description": "The restore point properties."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/runCommand.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/runCommand.json
new file mode 100644
index 000000000000..3e84c763daf8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/runCommand.json
@@ -0,0 +1,1332 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "RunCommandsClient",
+ "description": "The Run Commands Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json",
+ "text/json"
+ ],
+ "produces": [
+ "application/json",
+ "text/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands": {
+ "get": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_List",
+ "x-ms-examples": {
+ "VirtualMachineRunCommandList": {
+ "$ref": "./examples/runCommandExamples/RunCommand_List.json"
+ }
+ },
+ "description": "Lists all available run commands for a subscription in a location.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location upon which run commands is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RunCommandListResult"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}": {
+ "get": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_Get",
+ "x-ms-examples": {
+ "VirtualMachineRunCommandGet": {
+ "$ref": "./examples/runCommandExamples/RunCommand_Get.json"
+ }
+ },
+ "description": "Gets specific run command for a subscription in a location.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location upon which run commands is queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "name": "commandId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The command id."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RunCommandDocument"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommand": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_RunCommand",
+ "x-ms-examples": {
+ "VirtualMachineRunCommand": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineRunCommand.json"
+ }
+ },
+ "description": "Run command on the VM.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RunCommandInput"
+ },
+ "description": "Parameters supplied to the Run command operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_RunCommand",
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVMs_RunCommand": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand.json"
+ }
+ },
+ "description": "Run command on a virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RunCommandInput"
+ },
+ "description": "Parameters supplied to the Run command operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_CreateOrUpdate",
+ "description": "The operation to create or update the run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine where the run command should be created or updated."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "name": "runCommand",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ },
+ "description": "Parameters supplied to the Create Virtual Machine RunCommand operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create or update a run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineRunCommand_CreateOrUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_Update",
+ "description": "The operation to update the run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine where the run command should be updated."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "name": "runCommand",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommandUpdate"
+ },
+ "description": "Parameters supplied to the Update Virtual Machine RunCommand operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update a run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineRunCommand_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_Delete",
+ "description": "The operation to delete the run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine where the run command should be deleted."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete a run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineRunCommand_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_GetByVirtualMachine",
+ "description": "The operation to get the run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine containing the run command."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineRunCommand_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands": {
+ "get": {
+ "tags": [
+ "VirtualMachineRunCommands"
+ ],
+ "operationId": "VirtualMachineRunCommands_ListByVirtualMachine",
+ "description": "The operation to get all run commands of a Virtual Machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine containing the run command."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommandsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List run commands in a Virtual Machine.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineRunCommand_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineScaleSetVMRunCommands"
+ ],
+ "operationId": "VirtualMachineScaleSetVMRunCommands_CreateOrUpdate",
+ "description": "The operation to create or update the VMSS VM run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "name": "runCommand",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ },
+ "description": "Parameters supplied to the Create Virtual Machine RunCommand operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create VirtualMachineScaleSet VM run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_CreateOrUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineScaleSetVMRunCommands"
+ ],
+ "operationId": "VirtualMachineScaleSetVMRunCommands_Update",
+ "description": "The operation to update the VMSS VM run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "name": "runCommand",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommandUpdate"
+ },
+ "description": "Parameters supplied to the Update Virtual Machine RunCommand operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update VirtualMachineScaleSet VM run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineScaleSetVMRunCommands"
+ ],
+ "operationId": "VirtualMachineScaleSetVMRunCommands_Delete",
+ "description": "The operation to delete the VMSS VM run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete VirtualMachineScaleSet VM run command.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMRunCommands"
+ ],
+ "operationId": "VirtualMachineScaleSetVMRunCommands_Get",
+ "description": "The operation to get the VMSS VM run command.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "runCommandName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine run command."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get VirtualMachineScaleSet VM run commands.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMRunCommands"
+ ],
+ "operationId": "VirtualMachineScaleSetVMRunCommands_List",
+ "description": "The operation to get all run commands of an instance in Virtual Machine Scaleset.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineRunCommandsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List run commands in Vmss instance.": {
+ "$ref": "./examples/runCommandExamples/VirtualMachineScaleSetVMRunCommand_List.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "RunCommandInputParameter": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The run command parameter name."
+ },
+ "value": {
+ "type": "string",
+ "description": "The run command parameter value."
+ }
+ },
+ "required": [
+ "name",
+ "value"
+ ],
+ "type": "object",
+ "description": "Describes the properties of a run command parameter."
+ },
+ "RunCommandInput": {
+ "properties": {
+ "commandId": {
+ "type": "string",
+ "description": "The run command id."
+ },
+ "script": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Optional. The script to be executed. When this value is given, the given script will override the default script of the command."
+ },
+ "parameters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RunCommandInputParameter"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The run command parameters."
+ }
+ },
+ "required": [
+ "commandId"
+ ],
+ "type": "object",
+ "description": "Capture Virtual Machine parameters."
+ },
+ "RunCommandParameterDefinition": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The run command parameter name."
+ },
+ "type": {
+ "type": "string",
+ "description": "The run command parameter type."
+ },
+ "defaultValue": {
+ "type": "string",
+ "description": "The run command parameter default value."
+ },
+ "required": {
+ "type": "boolean",
+ "description": "The run command parameter required.",
+ "default": false
+ }
+ },
+ "required": [
+ "name",
+ "type"
+ ],
+ "type": "object",
+ "description": "Describes the properties of a run command parameter."
+ },
+ "RunCommandDocumentBase": {
+ "properties": {
+ "$schema": {
+ "type": "string",
+ "description": "The VM run command schema."
+ },
+ "id": {
+ "type": "string",
+ "description": "The VM run command id."
+ },
+ "osType": {
+ "type": "string",
+ "description": "The Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "label": {
+ "type": "string",
+ "description": "The VM run command label."
+ },
+ "description": {
+ "type": "string",
+ "description": "The VM run command description."
+ }
+ },
+ "required": [
+ "$schema",
+ "id",
+ "osType",
+ "label",
+ "description"
+ ],
+ "type": "object",
+ "description": "Describes the properties of a Run Command metadata."
+ },
+ "RunCommandDocument": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/RunCommandDocumentBase"
+ }
+ ],
+ "properties": {
+ "script": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The script to be executed."
+ },
+ "parameters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RunCommandParameterDefinition"
+ },
+ "x-ms-identifiers": [
+ "name",
+ "type"
+ ],
+ "description": "The parameters used by the script."
+ }
+ },
+ "required": [
+ "script"
+ ],
+ "type": "object",
+ "description": "Describes the properties of a Run Command."
+ },
+ "RunCommandListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RunCommandDocumentBase"
+ },
+ "description": "The list of virtual machine run commands."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of run commands. Call ListNext() with this to fetch the next page of run commands."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "description": "The List Virtual Machine operation response."
+ },
+ "RunCommandManagedIdentity": {
+ "properties": {
+ "clientId": {
+ "type": "string",
+ "description": "Client Id (GUID value) of the user-assigned managed identity. ObjectId should not be used if this is provided."
+ },
+ "objectId": {
+ "type": "string",
+ "description": "Object Id (GUID value) of the user-assigned managed identity. ClientId should not be used if this is provided."
+ }
+ },
+ "type": "object",
+ "description": " Contains clientId or objectId (use only one, not both) of a user-assigned managed identity that has access to storage blob used in Run Command. Use an empty RunCommandManagedIdentity object in case of system-assigned identity. Make sure the Azure storage blob exists in case of scriptUri, and managed identity has been given access to blob's container with 'Storage Blob Data Reader' role assignment with scriptUri blob and 'Storage Blob Data Contributor' for Append blobs(outputBlobUri, errorBlobUri). In case of user assigned identity, make sure you add it under VM's identity. For more info on managed identity and Run Command, refer https://aka.ms/ManagedIdentity and https://aka.ms/RunCommandManaged."
+ },
+ "RunCommandResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "Run command operation response."
+ }
+ },
+ "type": "object"
+ },
+ "VirtualMachineRunCommandInstanceView": {
+ "properties": {
+ "executionState": {
+ "type": "string",
+ "description": "Script execution status.",
+ "enum": [
+ "Unknown",
+ "Pending",
+ "Running",
+ "Failed",
+ "Succeeded",
+ "TimedOut",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ExecutionState",
+ "modelAsString": true
+ }
+ },
+ "executionMessage": {
+ "type": "string",
+ "description": "Communicate script configuration errors or execution messages."
+ },
+ "exitCode": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Exit code returned from script execution."
+ },
+ "output": {
+ "type": "string",
+ "description": "Script output stream."
+ },
+ "error": {
+ "type": "string",
+ "description": "Script error stream."
+ },
+ "startTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Script start time."
+ },
+ "endTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Script end time."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "type": "object",
+ "description": "The instance view of a virtual machine run command."
+ },
+ "VirtualMachineRunCommandScriptSource": {
+ "properties": {
+ "script": {
+ "type": "string",
+ "description": "Specifies the script content to be executed on the VM."
+ },
+ "scriptUri": {
+ "type": "string",
+ "description": "Specifies the script download location. It can be either SAS URI of an Azure storage blob with read access or public URI."
+ },
+ "commandId": {
+ "type": "string",
+ "description": "Specifies a commandId of predefined built-in script."
+ },
+ "scriptUriManagedIdentity": {
+ "$ref": "#/definitions/RunCommandManagedIdentity",
+ "description": "User-assigned managed identity that has access to scriptUri in case of Azure storage blob. Use an empty object in case of system-assigned identity. Make sure the Azure storage blob exists, and managed identity has been given access to blob's container with 'Storage Blob Data Reader' role assignment. In case of user-assigned identity, make sure you add it under VM's identity. For more info on managed identity and Run Command, refer https://aka.ms/ManagedIdentity and https://aka.ms/RunCommandManaged."
+ }
+ },
+ "type": "object",
+ "description": "Describes the script sources for run command. Use only one of script, scriptUri, commandId."
+ },
+ "VirtualMachineRunCommandProperties": {
+ "properties": {
+ "source": {
+ "$ref": "#/definitions/VirtualMachineRunCommandScriptSource",
+ "description": "The source of the run command script."
+ },
+ "parameters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RunCommandInputParameter"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The parameters used by the script."
+ },
+ "protectedParameters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RunCommandInputParameter"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The parameters used by the script."
+ },
+ "asyncExecution": {
+ "type": "boolean",
+ "description": "Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.",
+ "default": false
+ },
+ "runAsUser": {
+ "type": "string",
+ "description": "Specifies the user account on the VM when executing the run command."
+ },
+ "runAsPassword": {
+ "type": "string",
+ "description": "Specifies the user account password on the VM when executing the run command."
+ },
+ "timeoutInSeconds": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The timeout in seconds to execute the run command."
+ },
+ "outputBlobUri": {
+ "type": "string",
+ "description": "Specifies the Azure storage blob where script output stream will be uploaded. Use a SAS URI with read, append, create, write access OR use managed identity to provide the VM access to the blob. Refer outputBlobManagedIdentity parameter. "
+ },
+ "errorBlobUri": {
+ "type": "string",
+ "description": "Specifies the Azure storage blob where script error stream will be uploaded. Use a SAS URI with read, append, create, write access OR use managed identity to provide the VM access to the blob. Refer errorBlobManagedIdentity parameter."
+ },
+ "outputBlobManagedIdentity": {
+ "$ref": "#/definitions/RunCommandManagedIdentity",
+ "description": "User-assigned managed identity that has access to outputBlobUri storage blob. Use an empty object in case of system-assigned identity. Make sure managed identity has been given access to blob's container with 'Storage Blob Data Contributor' role assignment. In case of user-assigned identity, make sure you add it under VM's identity. For more info on managed identity and Run Command, refer https://aka.ms/ManagedIdentity and https://aka.ms/RunCommandManaged "
+ },
+ "errorBlobManagedIdentity": {
+ "$ref": "#/definitions/RunCommandManagedIdentity",
+ "description": "User-assigned managed identity that has access to errorBlobUri storage blob. Use an empty object in case of system-assigned identity. Make sure managed identity has been given access to blob's container with 'Storage Blob Data Contributor' role assignment. In case of user-assigned identity, make sure you add it under VM's identity. For more info on managed identity and Run Command, refer https://aka.ms/ManagedIdentity and https://aka.ms/RunCommandManaged "
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response. If treatFailureAsDeploymentFailure set to true, any failure in the script will fail the deployment and ProvisioningState will be marked as Failed. If treatFailureAsDeploymentFailure set to false, ProvisioningState would only reflect whether the run command was run or not by the extensions platform, it would not indicate whether script failed in case of script failures. See instance view of run command in case of script failures to see executionMessage, output, error: https://aka.ms/runcommandmanaged#get-execution-status-and-results "
+ },
+ "instanceView": {
+ "readOnly": true,
+ "$ref": "#/definitions/VirtualMachineRunCommandInstanceView",
+ "description": "The virtual machine run command instance view."
+ },
+ "treatFailureAsDeploymentFailure": {
+ "type": "boolean",
+ "description": "Optional. If set to true, any failure in the script will fail the deployment and ProvisioningState will be marked as Failed. If set to false, ProvisioningState would only reflect whether the run command was run or not by the extensions platform, it would not indicate whether script failed in case of script failures. See instance view of run command in case of script failures to see executionMessage, output, error: https://aka.ms/runcommandmanaged#get-execution-status-and-results ",
+ "default": false
+ }
+ },
+ "type": "object",
+ "description": "Describes the properties of a Virtual Machine run command."
+ },
+ "VirtualMachineRunCommand": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineRunCommandProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "type": "object",
+ "description": "Describes a Virtual Machine run command."
+ },
+ "VirtualMachineRunCommandUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineRunCommandProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "type": "object",
+ "description": "Describes a Virtual Machine run command."
+ },
+ "VirtualMachineRunCommandsListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineRunCommand"
+ },
+ "description": "The list of run commands"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of run commands."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "description": "The List run command operation response"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/sshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/sshPublicKey.json
new file mode 100644
index 000000000000..6299b8fa1c9f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/sshPublicKey.json
@@ -0,0 +1,485 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sshPublicKeys": {
+ "get": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_ListBySubscription",
+ "description": "Lists all of the SSH public keys in the subscription. Use the nextLink property in the response to get the next page of SSH public keys.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeysGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SshPublicKey_ListBySubscription_MaximumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MaximumSet_Gen.json"
+ },
+ "SshPublicKey_ListBySubscription_MinimumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_ListBySubscription_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys": {
+ "get": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_ListByResourceGroup",
+ "description": "Lists all of the SSH public keys in the specified resource group. Use the nextLink property in the response to get the next page of SSH public keys.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeysGroupListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SshPublicKey_ListByResourceGroup_MaximumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MaximumSet_Gen.json"
+ },
+ "SshPublicKey_ListByResourceGroup_MinimumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_ListByResourceGroup_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}": {
+ "put": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_Create",
+ "description": "Creates a new SSH public key resource.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "sshPublicKeyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the SSH public key."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyResource"
+ },
+ "description": "Parameters supplied to create the SSH public key."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyResource"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a new SSH public key resource.": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_Update",
+ "description": "Updates a new SSH public key resource.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "sshPublicKeyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the SSH public key."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyUpdateResource"
+ },
+ "description": "Parameters supplied to update the SSH public key."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SshPublicKey_Update_MaximumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_Update_MaximumSet_Gen.json"
+ },
+ "SshPublicKey_Update_MinimumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_Delete",
+ "description": "Delete an SSH public key.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "sshPublicKeyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the SSH public key."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SshPublicKey_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_Delete_MaximumSet_Gen.json"
+ },
+ "SshPublicKey_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_Get",
+ "description": "Retrieves information about an SSH public key.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "sshPublicKeyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the SSH public key."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get an ssh public key.": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}/generateKeyPair": {
+ "post": {
+ "tags": [
+ "SshPublicKeys"
+ ],
+ "operationId": "SshPublicKeys_GenerateKeyPair",
+ "description": "Generates and returns a public/private key pair and populates the SSH public key resource with the public key. The length of the key will be 3072 bits. This operation can only be performed once per SSH public key resource.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "sshPublicKeyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the SSH public key."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SshPublicKeyGenerateKeyPairResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Generate an SSH key pair.": {
+ "$ref": "./examples/sshPublicKeyExamples/SshPublicKey_GenerateKeyPair.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "SshPublicKeyGenerateKeyPairResult": {
+ "properties": {
+ "privateKey": {
+ "type": "string",
+ "description": "Private key portion of the key pair used to authenticate to a virtual machine through ssh. The private key is returned in RFC3447 format and should be treated as a secret."
+ },
+ "publicKey": {
+ "type": "string",
+ "description": "Public key portion of the key pair used to authenticate to a virtual machine through ssh. The public key is in ssh-rsa format."
+ },
+ "id": {
+ "type": "string",
+ "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{SshPublicKeyName}"
+ }
+ },
+ "required": [
+ "privateKey",
+ "publicKey",
+ "id"
+ ],
+ "description": "Response from generation of an SSH key pair."
+ },
+ "SshPublicKeyResourceProperties": {
+ "properties": {
+ "publicKey": {
+ "type": "string",
+ "description": "SSH public key used to authenticate to a virtual machine through ssh. If this property is not initially provided when the resource is created, the publicKey property will be populated when generateKeyPair is called. If the public key is provided upon resource creation, the provided public key needs to be at least 2048-bit and in ssh-rsa format."
+ }
+ },
+ "description": "Properties of the SSH public key."
+ },
+ "SshPublicKeyResource": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/SshPublicKeyResourceProperties",
+ "description": "Properties of the SSH public key."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Specifies information about the SSH public key."
+ },
+ "SshPublicKeyUpdateResource": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/SshPublicKeyResourceProperties",
+ "description": "Properties of the SSH public key."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Specifies information about the SSH public key."
+ },
+ "SshPublicKeysGroupListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKeyResource"
+ },
+ "description": "The list of SSH public keys"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of SSH public keys. Call ListNext() with this URI to fetch the next page of SSH public keys."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The list SSH public keys operation response."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachine.json
new file mode 100644
index 000000000000..e80f91654621
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachine.json
@@ -0,0 +1,3451 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineExtensions"
+ ],
+ "operationId": "VirtualMachineExtensions_CreateOrUpdate",
+ "description": "The operation to create or update the extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine where the extension should be created or updated."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ },
+ "description": "Parameters supplied to the Create Virtual Machine Extension operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineExtension_CreateOrUpdate_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtension_CreateOrUpdate_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_CreateOrUpdate_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineExtensions"
+ ],
+ "operationId": "VirtualMachineExtensions_Update",
+ "description": "The operation to update the extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine where the extension should be updated."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtensionUpdate"
+ },
+ "description": "Parameters supplied to the Update Virtual Machine Extension operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update VM extension.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineExtensions"
+ ],
+ "operationId": "VirtualMachineExtensions_Delete",
+ "description": "The operation to delete the extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine where the extension should be deleted."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineExtension_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_Delete_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtension_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineExtensions"
+ ],
+ "operationId": "VirtualMachineExtensions_Get",
+ "description": "The operation to get the extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine containing the extension."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineExtension_Get_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_Get_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtension_Get_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_Get_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions": {
+ "get": {
+ "tags": [
+ "VirtualMachineExtensions"
+ ],
+ "operationId": "VirtualMachineExtensions_List",
+ "description": "The operation to get all extensions of a Virtual Machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine containing the extension."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtensionsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineExtension_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtension_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachineExtension_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_ListByLocation",
+ "description": "Gets all the virtual machines under the specified subscription for the specified location.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location for which virtual machines under the subscription are queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Lists all the virtual machines under the specified subscription for the specified location.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_ListBySubscription_ByLocation.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Capture",
+ "description": "Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineCaptureParameters"
+ },
+ "description": "Parameters supplied to the Capture Virtual Machine operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineCaptureResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "VirtualMachine_Capture_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Capture_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_Capture_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Capture_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}": {
+ "put": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_CreateOrUpdate",
+ "description": "The operation to create or update a virtual machine. Please note some properties can be set only during virtual machine creation.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ },
+ "description": "Parameters supplied to the Create Virtual Machine operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create a vm with password authentication.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithPasswordAuthentication.json"
+ },
+ "Create a vm with ssh authentication.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithSshAuthentication.json"
+ },
+ "Create a vm with premium storage.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithPremiumStorage.json"
+ },
+ "Create a vm in a Virtual Machine Scale Set with customer assigned platformFaultDomain.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_InAVmssWithCustomerAssignedPlatformFaultDomain.json"
+ },
+ "Create a vm in an availability set.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_InAnAvailabilitySet.json"
+ },
+ "Create a vm with Scheduled Events Profile": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithScheduledEventsProfile.json"
+ },
+ "Create a vm with boot diagnostics.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithBootDiagnostics.json"
+ },
+ "Create a vm with managed boot diagnostics.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithManagedBootDiagnostics.json"
+ },
+ "Create a vm with empty data disks.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithEmptyDataDisks.json"
+ },
+ "Create a vm with a marketplace image plan.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithAMarketplaceImagePlan.json"
+ },
+ "Create a vm from a custom image.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_FromACustomImage.json"
+ },
+ "Create a platform-image vm with unmanaged os and data disks.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_PlatformImageVmWithUnmanagedOsAndDataDisks.json"
+ },
+ "Create a custom-image vm from an unmanaged generalized os image.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_CustomImageVmFromAnUnmanagedGeneralizedOsImage.json"
+ },
+ "Create a vm with ephemeral os disk.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDisk.json"
+ },
+ "Create a vm with DiskEncryptionSet resource id in the os disk and data disk.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithDiskEncryptionSetResource.json"
+ },
+ "Create a vm with ephemeral os disk provisioning in Resource disk using placement property.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json"
+ },
+ "Create a vm with ephemeral os disk provisioning in Cache disk using placement property.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json"
+ },
+ "Create a vm with Host Encryption using encryptionAtHost property.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithEncryptionAtHost.json"
+ },
+ "Create a Windows vm with a patch setting patchMode of AutomaticByOS.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByOS.json"
+ },
+ "Create a Windows vm with a patch setting patchMode of AutomaticByPlatform and AutomaticByPlatformSettings.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithAutomaticByPlatformSettings.json"
+ },
+ "Create a Windows vm with patch settings patchMode and assessmentMode set to AutomaticByPlatform.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModesOfAutomaticByPlatform.json"
+ },
+ "Create a Windows vm with a patch setting patchMode of Manual.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfManual.json"
+ },
+ "Create a Windows vm with a patch setting assessmentMode of ImageDefault.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingAssessmentModeOfImageDefault.json"
+ },
+ "Create a Windows vm with a patch setting patchMode of AutomaticByPlatform and enableHotpatching set to true.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WindowsVmWithPatchSettingModeOfAutomaticByPlatformAndEnableHotPatchingTrue.json"
+ },
+ "Create a Linux vm with a patch settings patchMode and assessmentMode set to AutomaticByPlatform.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModesOfAutomaticByPlatform.json"
+ },
+ "Create a Linux vm with a patch setting patchMode of ImageDefault.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingModeOfImageDefault.json"
+ },
+ "Create a Linux vm with a patch setting patchMode of AutomaticByPlatform and AutomaticByPlatformSettings.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithAutomaticByPlatformSettings.json"
+ },
+ "Create a Linux vm with a patch setting assessmentMode of ImageDefault.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_LinuxVmWithPatchSettingAssessmentModeOfImageDefault.json"
+ },
+ "Create a vm with an extensions time budget.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithExtensionsTimeBudget.json"
+ },
+ "Create a VM with Uefi Settings of secureBoot and vTPM.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithUefiSettings.json"
+ },
+ "Create a vm from a generalized shared image.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_FromAGeneralizedSharedImage.json"
+ },
+ "Create a vm from a specialized shared image.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_FromASpecializedSharedImage.json"
+ },
+ "Create a VM with network interface configuration": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfiguration.json"
+ },
+ "Create a VM with network interface configuration with public ip address dns settings": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithNetworkInterfaceConfigurationDnsSettings.json"
+ },
+ "Create a VM with UserData": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithUserData.json"
+ },
+ "Create a vm with Application Profile.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithApplicationProfile.json"
+ },
+ "Create a VM with HibernationEnabled": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithHibernationEnabled.json"
+ },
+ "Create a VM with VM Size Properties": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithVMSizeProperties.json"
+ },
+ "Create or update a VM with capacity reservation": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithCapacityReservation.json"
+ },
+ "Create a VM from a shared gallery image": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_FromASharedGalleryImage.json"
+ },
+ "Create a VM from a community gallery image": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_FromACommunityGalleryImage.json"
+ },
+ "Create a VM with securityType ConfidentialVM with Platform Managed Keys": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVM.json"
+ },
+ "Create a VM with securityType ConfidentialVM with Customer Managed Keys": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithSecurityTypeConfidentialVMWithCustomerManagedKeys.json"
+ },
+ "Create a VM with Disk Controller Type": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Create_WithDiskControllerType.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Update",
+ "description": "The operation to update a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineUpdate"
+ },
+ "description": "Parameters supplied to the Update Virtual Machine operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update a VM by detaching data disk": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Update_DetachDataDiskUsingToBeDetachedProperty.json"
+ },
+ "Update a VM by force-detaching data disk": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Update_ForceDetachDataDisk.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Delete",
+ "description": "The operation to delete a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "forceDeletion",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "description": "Optional parameter to force delete virtual machines."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Force delete a VM": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Delete_Force.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Get",
+ "description": "Retrieves information about the model view or the instance view of a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' retrieves a snapshot of the runtime properties of the virtual machine that is managed by the platform and can change outside of control plane operations. 'UserData' retrieves the UserData property as part of the VM model view that was provided by the user during the VM Create/Update operation.",
+ "enum": [
+ "instanceView",
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Virtual Machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Get.json"
+ },
+ "Get a virtual machine placed on a dedicated host group through automatic placement": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Get_AutoPlacedOnDedicatedHostGroup.json"
+ },
+ "Get a virtual machine with VM Size Properties": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Get_WithVMSizeProperties.json"
+ },
+ "Get a virtual machine with Disk Controller Type Properties": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Get_WithDiskControllerType.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_InstanceView",
+ "description": "Retrieves information about the run-time state of a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstanceView"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Virtual Machine Instance View.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Get_InstanceView.json"
+ },
+ "Get instance view of a virtual machine placed on a dedicated host group through automatic placement.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_ConvertToManagedDisks",
+ "description": "Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_ConvertToManagedDisks_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_ConvertToManagedDisks_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_ConvertToManagedDisks_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Deallocate",
+ "description": "Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "hibernate",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "description": "Optional parameter to hibernate a virtual machine. (Feature in Preview)"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_Deallocate_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Deallocate_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_Deallocate_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Deallocate_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Generalize",
+ "description": "Sets the OS state of the virtual machine to generalized. It is recommended to sysprep the virtual machine before performing this operation. For Windows, please refer to [Create a managed image of a generalized VM in Azure](https://docs.microsoft.com/azure/virtual-machines/windows/capture-image-resource). For Linux, please refer to [How to create an image of a virtual machine or VHD](https://docs.microsoft.com/azure/virtual-machines/linux/capture-image).",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Generalize a Virtual Machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Generalize.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_List",
+ "description": "Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The system query option to filter VMs returned in the response. Allowed value is 'virtualMachineScaleSet/id' eq /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}'"
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on operation. 'instanceView' enables fetching run time status of all Virtual Machines, this can only be specified if a valid $filter option is specified",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "ExpandTypeForListVMs",
+ "modelAsString": true
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachine_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_ListAll",
+ "description": "Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "statusOnly",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "statusOnly=true enables fetching run time status of all Virtual Machines in the subscription."
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The system query option to filter VMs returned in the response. Allowed value is 'virtualMachineScaleSet/id' eq /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}'"
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on operation. 'instanceView' enables fetching run time status of all Virtual Machines, this can only be specified if a valid $filter option is specified",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "ExpandTypesForListVMs",
+ "modelAsString": true
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachine_ListAll_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_ListAll_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_ListAll_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_ListAll_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_ListAvailableSizes",
+ "description": "Lists all available virtual machine sizes to which the specified virtual machine can be resized.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./computeRPCommon.json#/definitions/VirtualMachineSizeListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "Lists all available virtual machine sizes to which the specified virtual machine can be resized": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_ListAvailableVmSizes.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_PowerOff",
+ "description": "The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "skipShutdown",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "default": false,
+ "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_PowerOff_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_PowerOff_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_PowerOff_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_PowerOff_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reapply": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Reapply",
+ "description": "The operation to reapply a virtual machine's state.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Reapply the state of a virtual machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Reapply.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Restart",
+ "description": "The operation to restart a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_Restart_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Restart_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_Restart_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Restart_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Start",
+ "description": "The operation to start a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_Start_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Start_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_Start_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Start_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Redeploy",
+ "description": "Shuts down the virtual machine, moves it to a new node, and powers it back on.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_Redeploy_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Redeploy_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_Redeploy_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Redeploy_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reimage": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Reimage",
+ "description": "Reimages (upgrade the operating system) a virtual machine which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state. NOTE: The retaining of old OS disk depends on the value of deleteOption of OS disk. If deleteOption is detach, the old OS disk will be preserved after reimage. If deleteOption is delete, the old OS disk will be deleted after reimage. The deleteOption of the OS disk should be updated accordingly before performing the reimage.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineReimageParameters"
+ },
+ "description": "Parameters supplied to the Reimage Virtual Machine operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Reimage a Virtual Machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Reimage.json"
+ },
+ "Reimage a Non-Ephemeral Virtual Machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_Reimage_NonEphemeralVMs.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/retrieveBootDiagnosticsData": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_RetrieveBootDiagnosticsData",
+ "description": "The operation to retrieve SAS URIs for a virtual machine's boot diagnostic logs.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "sasUriExpirationTimeInMinutes",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "description": "Expiration duration in minutes for the SAS URIs with a value between 1 to 1440 minutes. **Note:** If not specified, SAS URIs will be generated with a default expiration duration of 120 minutes."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RetrieveBootDiagnosticsDataResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "RetrieveBootDiagnosticsData of a virtual machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_RetrieveBootDiagnosticsData.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_PerformMaintenance",
+ "description": "The operation to perform maintenance on a virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachine_PerformMaintenance_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MaximumSet_Gen.json"
+ },
+ "VirtualMachine_PerformMaintenance_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_PerformMaintenance_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/simulateEviction": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_SimulateEviction",
+ "description": "The operation to simulate the eviction of spot virtual machine.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Simulate Eviction a virtual machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_SimulateEviction.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/assessPatches": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_AssessPatches",
+ "x-ms-examples": {
+ "Assess patch state of a virtual machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_AssessPatches.json"
+ }
+ },
+ "description": "Assess patches on the VM.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineAssessPatchesResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/installPatches": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_InstallPatches",
+ "description": "Installs patches on the VM.",
+ "x-ms-examples": {
+ "Install patch state of a virtual machine.": {
+ "$ref": "./examples/virtualMachineExamples/VirtualMachine_InstallPatches.json"
+ }
+ },
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine."
+ },
+ {
+ "name": "installPatchesInput",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstallPatchesParameters"
+ },
+ "description": "Input for InstallPatches as directly received by the API"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstallPatchesResult"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "RetrieveBootDiagnosticsDataResult": {
+ "properties": {
+ "consoleScreenshotBlobUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The console screenshot blob URI"
+ },
+ "serialConsoleLogBlobUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The serial console log blob URI."
+ }
+ },
+ "description": "The SAS URIs of the console screenshot and serial log blobs."
+ },
+ "VirtualMachineExtensionInstanceView": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The virtual machine extension name."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "substatuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of a virtual machine extension."
+ },
+ "VirtualMachineExtensionProperties": {
+ "properties": {
+ "forceUpdateTag": {
+ "type": "string",
+ "description": "How the extension handler should be forced to update even if the extension configuration has not changed."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The name of the extension handler publisher."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "autoUpgradeMinorVersion": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true."
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available."
+ },
+ "settings": {
+ "type": "object",
+ "description": "Json formatted public settings for the extension."
+ },
+ "protectedSettings": {
+ "type": "object",
+ "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/VirtualMachineExtensionInstanceView",
+ "description": "The virtual machine extension instance view."
+ },
+ "suppressFailures": {
+ "type": "boolean",
+ "description": "Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false."
+ },
+ "protectedSettingsFromKeyVault": {
+ "$ref": "./computeRPCommon.json#/definitions/KeyVaultSecretReference",
+ "description": "The extensions protected settings that are passed by reference, and consumed from key vault"
+ },
+ "provisionAfterExtensions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Collection of extension names after which this extension needs to be provisioned."
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine Extension."
+ },
+ "VirtualMachineExtensionUpdateProperties": {
+ "properties": {
+ "forceUpdateTag": {
+ "type": "string",
+ "description": "How the extension handler should be forced to update even if the extension configuration has not changed."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The name of the extension handler publisher."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "autoUpgradeMinorVersion": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true."
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available."
+ },
+ "settings": {
+ "type": "object",
+ "description": "Json formatted public settings for the extension."
+ },
+ "protectedSettings": {
+ "type": "object",
+ "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all."
+ },
+ "suppressFailures": {
+ "type": "boolean",
+ "description": "Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false."
+ },
+ "protectedSettingsFromKeyVault": {
+ "$ref": "./computeRPCommon.json#/definitions/KeyVaultSecretReference",
+ "description": "The extensions protected settings that are passed by reference, and consumed from key vault"
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine Extension."
+ },
+ "VirtualMachineExtension": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineExtensionProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ResourceWithOptionalLocation"
+ }
+ ],
+ "description": "Describes a Virtual Machine Extension."
+ },
+ "VirtualMachineExtensionUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineExtensionUpdateProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Describes a Virtual Machine Extension."
+ },
+ "VirtualMachineExtensionsListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ },
+ "description": "The list of extensions"
+ }
+ },
+ "description": "The List Extension operation response"
+ },
+ "VirtualMachineSoftwarePatchProperties": {
+ "properties": {
+ "patchId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "A unique identifier for the patch."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The friendly name of the patch."
+ },
+ "version": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The version number of the patch. This property applies only to Linux patches."
+ },
+ "kbId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The KBID of the patch. Only applies to Windows patches."
+ },
+ "classifications": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "The classification(s) of the patch as provided by the patch publisher."
+ },
+ "rebootBehavior": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Describes the reboot requirements of the patch.",
+ "enum": [
+ "Unknown",
+ "NeverReboots",
+ "AlwaysRequiresReboot",
+ "CanRequestReboot"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchRebootBehavior",
+ "modelAsString": true
+ }
+ },
+ "activityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs."
+ },
+ "publishedDate": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the repository published this patch."
+ },
+ "lastModifiedDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp of the last update to this patch record."
+ },
+ "assessmentState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Describes the availability of a given patch.",
+ "enum": [
+ "Unknown",
+ "Available"
+ ],
+ "x-ms-enum": {
+ "name": "PatchAssessmentState",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine software patch."
+ },
+ "VirtualMachineAssessPatchesResult": {
+ "properties": {
+ "status": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Failed",
+ "Succeeded",
+ "CompletedWithWarnings"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStatus",
+ "modelAsString": true
+ }
+ },
+ "assessmentActivityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs."
+ },
+ "rebootPending": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "The overall reboot status of the VM. It will be true when partially installed patches require a reboot to complete installation but the reboot has not yet occurred."
+ },
+ "criticalAndSecurityPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of critical or security patches that have been detected as available and not yet installed."
+ },
+ "otherPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of all available patches excluding critical and security."
+ },
+ "startDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "availablePatches": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineSoftwarePatchProperties"
+ },
+ "x-ms-identifiers": [
+ "patchId"
+ ],
+ "description": "The list of patches that have been detected as available for installation."
+ },
+ "error": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "readOnly": true,
+ "description": "The errors that were encountered during execution of the operation. The details array contains the list of them."
+ }
+ },
+ "description": "Describes the properties of an AssessPatches result."
+ },
+ "VirtualMachineInstallPatchesParameters": {
+ "properties": {
+ "maximumDuration": {
+ "type": "string",
+ "description": "Specifies the maximum amount of time that the operation will run. It must be an ISO 8601-compliant duration string such as PT4H (4 hours)"
+ },
+ "rebootSetting": {
+ "type": "string",
+ "description": "Defines when it is acceptable to reboot a VM during a software update operation.",
+ "enum": [
+ "IfRequired",
+ "Never",
+ "Always"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchRebootSetting",
+ "modelAsString": true
+ }
+ },
+ "windowsParameters": {
+ "$ref": "#/definitions/WindowsParameters",
+ "description": "Input for InstallPatches on a Windows VM, as directly received by the API"
+ },
+ "linuxParameters": {
+ "$ref": "#/definitions/LinuxParameters",
+ "description": "Input for InstallPatches on a Linux VM, as directly received by the API"
+ }
+ },
+ "required": [
+ "rebootSetting"
+ ],
+ "description": "Input for InstallPatches as directly received by the API"
+ },
+ "WindowsParameters": {
+ "properties": {
+ "classificationsToInclude": {
+ "type": "array",
+ "description": "The update classifications to select when installing patches for Windows.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Critical",
+ "Security",
+ "UpdateRollUp",
+ "FeaturePack",
+ "ServicePack",
+ "Definition",
+ "Tools",
+ "Updates"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchClassification_Windows",
+ "modelAsString": true
+ }
+ }
+ },
+ "kbNumbersToInclude": {
+ "type": "array",
+ "description": "Kbs to include in the patch operation",
+ "items": {
+ "type": "string"
+ }
+ },
+ "kbNumbersToExclude": {
+ "type": "array",
+ "description": "Kbs to exclude in the patch operation",
+ "items": {
+ "type": "string"
+ }
+ },
+ "excludeKbsRequiringReboot": {
+ "type": "boolean",
+ "description": "Filters out Kbs that don't have an InstallationRebootBehavior of 'NeverReboots' when this is set to true."
+ },
+ "maxPatchPublishDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "This is used to install patches that were published on or before this given max published date."
+ }
+ },
+ "description": "Input for InstallPatches on a Windows VM, as directly received by the API"
+ },
+ "LinuxParameters": {
+ "properties": {
+ "classificationsToInclude": {
+ "type": "array",
+ "description": "The update classifications to select when installing patches for Linux.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Critical",
+ "Security",
+ "Other"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchClassification_Linux",
+ "modelAsString": true
+ }
+ }
+ },
+ "packageNameMasksToInclude": {
+ "type": "array",
+ "description": "packages to include in the patch operation. Format: packageName_packageVersion",
+ "items": {
+ "type": "string"
+ }
+ },
+ "packageNameMasksToExclude": {
+ "type": "array",
+ "description": "packages to exclude in the patch operation. Format: packageName_packageVersion",
+ "items": {
+ "type": "string"
+ }
+ },
+ "maintenanceRunId": {
+ "type": "string",
+ "description": "This is used as a maintenance run identifier for Auto VM Guest Patching in Linux."
+ }
+ },
+ "description": "Input for InstallPatches on a Linux VM, as directly received by the API"
+ },
+ "VirtualMachineInstallPatchesResult": {
+ "properties": {
+ "status": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Failed\", \"Succeeded\", \"Unknown\" or \"CompletedWithWarnings.\"",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Failed",
+ "Succeeded",
+ "CompletedWithWarnings"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStatus",
+ "modelAsString": true
+ }
+ },
+ "installationActivityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs."
+ },
+ "rebootStatus": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The reboot state of the VM following completion of the operation.",
+ "enum": [
+ "Unknown",
+ "NotNeeded",
+ "Required",
+ "Started",
+ "Failed",
+ "Completed"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchRebootStatus",
+ "modelAsString": true
+ }
+ },
+ "maintenanceWindowExceeded": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "Whether the operation ran out of time before it completed all its intended actions."
+ },
+ "excludedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that were not installed due to the user blocking their installation."
+ },
+ "notSelectedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that were detected as available for install, but did not meet the operation's criteria."
+ },
+ "pendingPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that were identified as meeting the installation criteria, but were not able to be installed. Typically this happens when maintenanceWindowExceeded == true."
+ },
+ "installedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches successfully installed."
+ },
+ "failedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that could not be installed due to some issue. See errors for details."
+ },
+ "patches": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/PatchInstallationDetail"
+ },
+ "x-ms-identifiers": [
+ "patchId"
+ ],
+ "description": "The patches that were installed during the operation."
+ },
+ "startDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "error": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "readOnly": true,
+ "description": "The errors that were encountered during execution of the operation. The details array contains the list of them."
+ }
+ },
+ "description": "The result summary of an installation operation."
+ },
+ "PatchInstallationDetail": {
+ "properties": {
+ "patchId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "A unique identifier for the patch."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The friendly name of the patch."
+ },
+ "version": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The version string of the package. It may conform to Semantic Versioning. Only applies to Linux."
+ },
+ "kbId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The KBID of the patch. Only applies to Windows patches."
+ },
+ "classifications": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "The classification(s) of the patch as provided by the patch publisher."
+ },
+ "installationState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The state of the patch after the installation operation completed.",
+ "enum": [
+ "Unknown",
+ "Installed",
+ "Failed",
+ "Excluded",
+ "NotSelected",
+ "Pending"
+ ],
+ "x-ms-enum": {
+ "name": "PatchInstallationState",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Information about a specific patch that was encountered during an installation action."
+ },
+ "VirtualMachineReimageParameters": {
+ "properties": {
+ "tempDisk": {
+ "type": "boolean",
+ "description": "Specifies whether to reimage temp disk. Default value: false. Note: This temp disk reimage parameter is only supported for VM/VMSS with Ephemeral OS disk."
+ },
+ "exactVersion": {
+ "type": "string",
+ "description": "Specifies in decimal number, the version the OS disk should be reimaged to. If exact version is not provided, the OS disk is reimaged to the existing version of OS Disk."
+ },
+ "osProfile": {
+ "$ref": "#/definitions/OSProfileProvisioningData",
+ "description": "Specifies information required for reimaging the non-ephemeral OS disk."
+ }
+ },
+ "description": "Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged"
+ },
+ "OSProfileProvisioningData": {
+ "type": "object",
+ "properties": {
+ "adminPassword": {
+ "type": "string",
+ "description": "Specifies the password of the administrator account.
**Minimum-length (Windows):** 8 characters
**Minimum-length (Linux):** 6 characters
**Max-length (Windows):** 123 characters
**Max-length (Linux):** 72 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"
For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)
For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "x-ms-secret": true
+ },
+ "customData": {
+ "type": "string",
+ "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. **Note: Do not pass any secrets or passwords in customData property.** This property cannot be updated after the VM is created. The property customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/). If using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)."
+ }
+ },
+ "description": "Additional parameters for Reimaging Non-Ephemeral Virtual Machine."
+ },
+ "VirtualMachineCaptureParameters": {
+ "properties": {
+ "vhdPrefix": {
+ "type": "string",
+ "description": "The captured virtual hard disk's name prefix."
+ },
+ "destinationContainerName": {
+ "type": "string",
+ "description": "The destination container name."
+ },
+ "overwriteVhds": {
+ "type": "boolean",
+ "description": "Specifies whether to overwrite the destination virtual hard disk, in case of conflict."
+ }
+ },
+ "required": [
+ "vhdPrefix",
+ "destinationContainerName",
+ "overwriteVhds"
+ ],
+ "description": "Capture Virtual Machine parameters."
+ },
+ "VirtualMachineCaptureResult": {
+ "properties": {
+ "$schema": {
+ "readOnly": true,
+ "type": "string",
+ "description": "the schema of the captured virtual machine"
+ },
+ "contentVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "the version of the content"
+ },
+ "parameters": {
+ "readOnly": true,
+ "type": "object",
+ "description": "parameters of the captured virtual machine"
+ },
+ "resources": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "type": "object",
+ "description": "resource item"
+ },
+ "x-ms-identifiers": [],
+ "description": "a list of resource items of the captured virtual machine"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "description": "Output of virtual machine capture operation.",
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineIpTag": {
+ "properties": {
+ "ipTagType": {
+ "type": "string",
+ "description": "IP tag type. Example: FirstPartyUsage."
+ },
+ "tag": {
+ "type": "string",
+ "description": "IP tag associated with the public IP. Example: SQL, Storage etc."
+ }
+ },
+ "description": "Contains the IP tag associated with the public IP address."
+ },
+ "VirtualMachinePublicIPAddressDnsSettingsConfiguration": {
+ "properties": {
+ "domainNameLabel": {
+ "type": "string",
+ "description": "The Domain name label prefix of the PublicIPAddress resources that will be created. The generated name label is the concatenation of the domain name label and vm network profile unique ID."
+ },
+ "domainNameLabelScope": {
+ "type": "string",
+ "description": "The Domain name label scope of the PublicIPAddress resources that will be created. The generated name label is the concatenation of the hashed domain name label with policy according to the domain name label scope and vm network profile unique ID.",
+ "enum": [
+ "TenantReuse",
+ "SubscriptionReuse",
+ "ResourceGroupReuse",
+ "NoReuse"
+ ],
+ "x-ms-enum": {
+ "name": "DomainNameLabelScopeTypes",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "domainNameLabel"
+ ],
+ "description": "Describes a virtual machines network configuration's DNS settings."
+ },
+ "VirtualMachinePublicIPAddressConfigurationProperties": {
+ "properties": {
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The idle timeout of the public IP address."
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the public IP address when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/VirtualMachinePublicIPAddressDnsSettingsConfiguration",
+ "description": "The dns settings to be applied on the publicIP addresses ."
+ },
+ "ipTags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineIpTag"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of IP tags associated with the public IP address."
+ },
+ "publicIPPrefix": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The PublicIPPrefix from which to allocate publicIP addresses."
+ },
+ "publicIPAddressVersion": {
+ "type": "string",
+ "description": "Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "IPVersions",
+ "modelAsString": true
+ }
+ },
+ "publicIPAllocationMethod": {
+ "type": "string",
+ "description": "Specify the public IP allocation type",
+ "enum": [
+ "Dynamic",
+ "Static"
+ ],
+ "x-ms-enum": {
+ "name": "PublicIPAllocationMethod",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a virtual machines IP Configuration's PublicIPAddress configuration"
+ },
+ "VirtualMachinePublicIPAddressConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The publicIP address configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachinePublicIPAddressConfigurationProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/PublicIPAddressSku"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Describes a virtual machines IP Configuration's PublicIPAddress configuration"
+ },
+ "VirtualMachineNetworkInterfaceIPConfigurationProperties": {
+ "properties": {
+ "subnet": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies the identifier of the subnet."
+ },
+ "primary": {
+ "type": "boolean",
+ "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface."
+ },
+ "publicIPAddressConfiguration": {
+ "$ref": "#/definitions/VirtualMachinePublicIPAddressConfiguration",
+ "description": "The publicIPAddressConfiguration."
+ },
+ "privateIPAddressVersion": {
+ "type": "string",
+ "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "IPVersions",
+ "modelAsString": true
+ }
+ },
+ "applicationSecurityGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to application security group."
+ },
+ "applicationGatewayBackendAddressPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to backend address pools of application gateways. A virtual machine can reference backend address pools of multiple application gateways. Multiple virtual machines cannot use the same application gateway."
+ },
+ "loadBalancerBackendAddressPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to backend address pools of load balancers. A virtual machine can reference backend address pools of one public and one internal load balancer. [Multiple virtual machines cannot use the same basic sku load balancer]."
+ }
+ },
+ "description": "Describes a virtual machine network interface IP configuration properties."
+ },
+ "VirtualMachineNetworkInterfaceIPConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The IP configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineNetworkInterfaceIPConfigurationProperties"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Describes a virtual machine network profile's IP configuration."
+ },
+ "VirtualMachineNetworkInterfaceDnsSettingsConfiguration": {
+ "properties": {
+ "dnsServers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of DNS servers IP addresses"
+ }
+ },
+ "description": "Describes a virtual machines network configuration's DNS settings."
+ },
+ "VirtualMachineNetworkInterfaceConfigurationProperties": {
+ "properties": {
+ "primary": {
+ "type": "boolean",
+ "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface."
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the network interface when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ },
+ "enableAcceleratedNetworking": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is accelerated networking-enabled."
+ },
+ "disableTcpStateTracking": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is disabled for tcp state tracking."
+ },
+ "enableFpga": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is FPGA networking-enabled."
+ },
+ "enableIPForwarding": {
+ "type": "boolean",
+ "description": "Whether IP forwarding enabled on this NIC."
+ },
+ "networkSecurityGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The network security group."
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/VirtualMachineNetworkInterfaceDnsSettingsConfiguration",
+ "description": "The dns settings to be applied on the network interfaces."
+ },
+ "ipConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineNetworkInterfaceIPConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "Specifies the IP configurations of the network interface."
+ },
+ "dscpConfiguration": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "auxiliaryMode": {
+ "type": "string",
+ "description": "Specifies whether the Auxiliary mode is enabled for the Network Interface resource.",
+ "enum": [
+ "None",
+ "AcceleratedConnections",
+ "Floating"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkInterfaceAuxiliaryMode",
+ "modelAsString": true
+ }
+ },
+ "auxiliarySku": {
+ "type": "string",
+ "description": "Specifies whether the Auxiliary sku is enabled for the Network Interface resource.",
+ "enum": [
+ "None",
+ "A1",
+ "A2",
+ "A4",
+ "A8"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkInterfaceAuxiliarySku",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "ipConfigurations"
+ ],
+ "description": "Describes a virtual machine network profile's IP configuration."
+ },
+ "VirtualMachineNetworkInterfaceConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The network interface configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineNetworkInterfaceConfigurationProperties"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Describes a virtual machine network interface configurations."
+ },
+ "VirtualMachineExtensionHandlerInstanceView": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "status": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus",
+ "description": "The extension handler status."
+ }
+ },
+ "description": "The instance view of a virtual machine extension handler."
+ },
+ "VirtualMachineAgentInstanceView": {
+ "properties": {
+ "vmAgentVersion": {
+ "type": "string",
+ "description": "The VM Agent full version."
+ },
+ "extensionHandlers": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineExtensionHandlerInstanceView"
+ },
+ "x-ms-identifiers": [],
+ "description": "The virtual machine extension handler instance view."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ }
+ },
+ "description": "The instance view of the VM Agent running on the virtual machine."
+ },
+ "VirtualMachineIdentity": {
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal id of virtual machine identity. This property will only be provided for a system assigned identity."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant id associated with the virtual machine. This property will only be provided for a system assigned identity."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of identity used for the virtual machine. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "SystemAssigned, UserAssigned",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false
+ }
+ },
+ "userAssignedIdentities": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/UserAssignedIdentities",
+ "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."
+ }
+ },
+ "description": "Identity for the virtual machine."
+ },
+ "VirtualMachineInstanceView": {
+ "properties": {
+ "platformUpdateDomain": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the update domain of the virtual machine."
+ },
+ "platformFaultDomain": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the fault domain of the virtual machine."
+ },
+ "computerName": {
+ "type": "string",
+ "description": "The computer name assigned to the virtual machine."
+ },
+ "osName": {
+ "type": "string",
+ "description": "The Operating System running on the virtual machine."
+ },
+ "osVersion": {
+ "type": "string",
+ "description": "The version of Operating System running on the virtual machine."
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "Specifies the HyperVGeneration Type associated with a resource",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGenerationType",
+ "modelAsString": true
+ }
+ },
+ "rdpThumbPrint": {
+ "type": "string",
+ "description": "The Remote desktop certificate thumbprint."
+ },
+ "vmAgent": {
+ "$ref": "#/definitions/VirtualMachineAgentInstanceView",
+ "description": "The VM Agent running on the virtual machine."
+ },
+ "maintenanceRedeployStatus": {
+ "$ref": "./computeRPCommon.json#/definitions/MaintenanceRedeployStatus",
+ "description": "The Maintenance Operation status on the virtual machine."
+ },
+ "disks": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskInstanceView"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The virtual machine disk information."
+ },
+ "extensions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineExtensionInstanceView"
+ },
+ "x-ms-identifiers": [
+ "name",
+ "type"
+ ],
+ "description": "The extensions information."
+ },
+ "vmHealth": {
+ "readOnly": true,
+ "$ref": "#/definitions/VirtualMachineHealthStatus",
+ "description": "The health status for the VM."
+ },
+ "bootDiagnostics": {
+ "$ref": "./computeRPCommon.json#/definitions/BootDiagnosticsInstanceView",
+ "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor."
+ },
+ "assignedHost": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Resource id of the dedicated host, on which the virtual machine is allocated through automatic placement, when the virtual machine is associated with a dedicated host group that has automatic placement enabled. Minimum api-version: 2020-06-01."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ },
+ "patchStatus": {
+ "$ref": "#/definitions/VirtualMachinePatchStatus",
+ "description": "[Preview Feature] The status of virtual machine patch operations."
+ }
+ },
+ "description": "The instance view of a virtual machine."
+ },
+ "VirtualMachineProperties": {
+ "properties": {
+ "hardwareProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/HardwareProfile",
+ "description": "Specifies the hardware settings for the virtual machine."
+ },
+ "storageProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/StorageProfile",
+ "description": "Specifies the storage settings for the virtual machine disks."
+ },
+ "additionalCapabilities": {
+ "$ref": "./computeRPCommon.json#/definitions/AdditionalCapabilities",
+ "description": "Specifies additional capabilities enabled or disabled on the virtual machine."
+ },
+ "osProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/OSProfile",
+ "description": "Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned."
+ },
+ "networkProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/NetworkProfile",
+ "description": "Specifies the network interfaces of the virtual machine."
+ },
+ "securityProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/SecurityProfile",
+ "description": "Specifies the Security related profile settings for the virtual machine."
+ },
+ "diagnosticsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/DiagnosticsProfile",
+ "description": "Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15."
+ },
+ "availabilitySet": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview). For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates). Currently, a VM can only be added to availability set at creation time. The availability set to which the VM is being added should be under the same resource group as the availability set resource. An existing VM cannot be added to an availability set. This property cannot exist along with a non-null properties.virtualMachineScaleSet reference."
+ },
+ "virtualMachineScaleSet": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the virtual machine scale set that the virtual machine should be assigned to. Virtual machines specified in the same virtual machine scale set are allocated to different nodes to maximize availability. Currently, a VM can only be added to virtual machine scale set at creation time. An existing VM cannot be added to a virtual machine scale set. This property cannot exist along with a non-null properties.availabilitySet reference. Minimum api‐version: 2019‐03‐01."
+ },
+ "proximityPlacementGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the proximity placement group that the virtual machine should be assigned to. Minimum api-version: 2018-04-01."
+ },
+ "priority": {
+ "$ref": "./computeRPCommon.json#/definitions/priority",
+ "description": "Specifies the priority for the virtual machine. Minimum api-version: 2019-03-01"
+ },
+ "evictionPolicy": {
+ "$ref": "./computeRPCommon.json#/definitions/evictionPolicy",
+ "description": "Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set. For Azure Spot virtual machines, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2019-03-01. For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview."
+ },
+ "billingProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/BillingProfile",
+ "description": "Specifies the billing related details of a Azure Spot virtual machine. Minimum api-version: 2019-03-01."
+ },
+ "host": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the dedicated host that the virtual machine resides in. Minimum api-version: 2018-10-01."
+ },
+ "hostGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the dedicated host group that the virtual machine resides in. **Note:** User cannot specify both host and hostGroup properties. Minimum api-version: 2020-06-01."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/VirtualMachineInstanceView",
+ "readOnly": true,
+ "description": "The virtual machine instance view."
+ },
+ "licenseType": {
+ "type": "string",
+ "description": "Specifies that the image or disk that is being used was licensed on-premises.
Possible values for Windows Server operating system are:
Windows_Client
Windows_Server
Possible values for Linux Server operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS (for SUSE)
For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)
[Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
Minimum api-version: 2015-06-15"
+ },
+ "vmId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands."
+ },
+ "extensionsTimeBudget": {
+ "type": "string",
+ "description": "Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). Minimum api-version: 2020-06-01."
+ },
+ "platformFaultDomain": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the scale set logical fault domain into which the Virtual Machine will be created. By default, the Virtual Machine will by automatically assigned to a fault domain that best maintains balance across available fault domains. This is applicable only if the 'virtualMachineScaleSet' property of this Virtual Machine is set. The Virtual Machine Scale Set that is referenced, must have 'platformFaultDomainCount' greater than 1. This property cannot be updated once the Virtual Machine is created. Fault domain assignment can be viewed in the Virtual Machine Instance View. Minimum api‐version: 2020‐12‐01."
+ },
+ "scheduledEventsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/ScheduledEventsProfile",
+ "description": "Specifies Scheduled Event related configurations."
+ },
+ "userData": {
+ "type": "string",
+ "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum api-version: 2021-03-01."
+ },
+ "capacityReservation": {
+ "$ref": "./computeRPCommon.json#/definitions/CapacityReservationProfile",
+ "description": "Specifies information about the capacity reservation that is used to allocate virtual machine. Minimum api-version: 2021-04-01."
+ },
+ "applicationProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/ApplicationProfile",
+ "description": "Specifies the gallery applications that should be made available to the VM/VMSS."
+ },
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Specifies the time at which the Virtual Machine resource was created. Minimum api-version: 2021-11-01."
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine."
+ },
+ "VirtualMachine": {
+ "properties": {
+ "plan": {
+ "$ref": "./computeRPCommon.json#/definitions/Plan",
+ "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineProperties"
+ },
+ "resources": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineExtension"
+ },
+ "description": "The virtual machine child extension resources."
+ },
+ "identity": {
+ "$ref": "#/definitions/VirtualMachineIdentity",
+ "description": "The identity of the virtual machine, if configured."
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine zones."
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location of the Virtual Machine."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Describes a Virtual Machine."
+ },
+ "VirtualMachineUpdate": {
+ "properties": {
+ "plan": {
+ "$ref": "./computeRPCommon.json#/definitions/Plan",
+ "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineProperties"
+ },
+ "identity": {
+ "$ref": "#/definitions/VirtualMachineIdentity",
+ "description": "The identity of the virtual machine, if configured."
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine zones."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Describes a Virtual Machine Update."
+ },
+ "VirtualMachineListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachine"
+ },
+ "description": "The list of virtual machines."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of Virtual Machines."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Virtual Machine operation response."
+ },
+ "VirtualMachineHealthStatus": {
+ "properties": {
+ "status": {
+ "readOnly": true,
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus",
+ "description": "The health status information for the VM."
+ }
+ },
+ "description": "The health status of the VM."
+ },
+ "VirtualMachinePatchStatus": {
+ "properties": {
+ "availablePatchSummary": {
+ "$ref": "#/definitions/AvailablePatchSummary",
+ "description": "The available patch summary of the latest assessment operation for the virtual machine."
+ },
+ "lastPatchInstallationSummary": {
+ "$ref": "#/definitions/LastPatchInstallationSummary",
+ "description": "The installation summary of the latest installation operation for the virtual machine."
+ },
+ "configurationStatuses": {
+ "description": "The enablement status of the specified patchMode",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "description": "The status of virtual machine patch operations."
+ },
+ "AvailablePatchSummary": {
+ "properties": {
+ "status": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Failed",
+ "Succeeded",
+ "CompletedWithWarnings"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStatus",
+ "modelAsString": true
+ }
+ },
+ "assessmentActivityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs."
+ },
+ "rebootPending": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "The overall reboot status of the VM. It will be true when partially installed patches require a reboot to complete installation but the reboot has not yet occurred."
+ },
+ "criticalAndSecurityPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of critical or security patches that have been detected as available and not yet installed."
+ },
+ "otherPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of all available patches excluding critical and security."
+ },
+ "startTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "lastModifiedTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "error": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "readOnly": true,
+ "description": "The errors that were encountered during execution of the operation. The details array contains the list of them."
+ }
+ },
+ "description": "Describes the properties of an virtual machine instance view for available patch summary."
+ },
+ "LastPatchInstallationSummary": {
+ "properties": {
+ "status": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Failed",
+ "Succeeded",
+ "CompletedWithWarnings"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStatus",
+ "modelAsString": true
+ }
+ },
+ "installationActivityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result. It is used to correlate across CRP and extension logs."
+ },
+ "maintenanceWindowExceeded": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "Describes whether the operation ran out of time before it completed all its intended actions"
+ },
+ "notSelectedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of all available patches but not going to be installed because it didn't match a classification or inclusion list entry."
+ },
+ "excludedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of all available patches but excluded explicitly by a customer-specified exclusion list match."
+ },
+ "pendingPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of all available patches expected to be installed over the course of the patch installation operation."
+ },
+ "installedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The count of patches that successfully installed."
+ },
+ "failedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The count of patches that failed installation."
+ },
+ "startTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "lastModifiedTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "error": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "readOnly": true,
+ "description": "The errors that were encountered during execution of the operation. The details array contains the list of them."
+ }
+ },
+ "description": "Describes the properties of the last installed patch summary."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineExtensionImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineExtensionImage.json
new file mode 100644
index 000000000000..3c6b2c428828
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineExtensionImage.json
@@ -0,0 +1,289 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}": {
+ "get": {
+ "tags": [
+ "VirtualMachineExtensionImages"
+ ],
+ "operationId": "VirtualMachineExtensionImages_Get",
+ "description": "Gets a virtual machine extension image.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "type",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "version",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineExtensionImage"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineExtensionImage_Get_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtensionImage_Get_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_Get_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types": {
+ "get": {
+ "tags": [
+ "VirtualMachineExtensionImages"
+ ],
+ "operationId": "VirtualMachineExtensionImages_ListTypes",
+ "description": "Gets a list of virtual machine extension image types.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineExtensionImage"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineExtensionImage_ListTypes_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtensionImage_ListTypes_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListTypes_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions": {
+ "get": {
+ "tags": [
+ "VirtualMachineExtensionImages"
+ ],
+ "operationId": "VirtualMachineExtensionImages_ListVersions",
+ "description": "Gets a list of virtual machine extension image versions.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "type",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The filter to apply on the operation."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "name": "$orderby",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineExtensionImage"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-odata": "#/definitions/VirtualMachineExtensionImage",
+ "x-ms-examples": {
+ "VirtualMachineExtensionImage_ListVersions_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MaximumSet_Gen.json"
+ },
+ "VirtualMachineExtensionImage_ListVersions_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineExtensionImageExamples/VirtualMachineExtensionImage_ListVersions_MinimumSet_Gen.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "VirtualMachineExtensionImageProperties": {
+ "properties": {
+ "operatingSystem": {
+ "type": "string",
+ "description": "The operating system this extension supports."
+ },
+ "computeRole": {
+ "type": "string",
+ "description": "The type of role (IaaS or PaaS) this extension supports."
+ },
+ "handlerSchema": {
+ "type": "string",
+ "description": "The schema defined by publisher, where extension consumers should provide settings in a matching schema."
+ },
+ "vmScaleSetEnabled": {
+ "type": "boolean",
+ "description": "Whether the extension can be used on xRP VMScaleSets. By default existing extensions are usable on scalesets, but there might be cases where a publisher wants to explicitly indicate the extension is only enabled for CRP VMs but not VMSS."
+ },
+ "supportsMultipleExtensions": {
+ "type": "boolean",
+ "description": "Whether the handler can support multiple extensions."
+ }
+ },
+ "required": [
+ "operatingSystem",
+ "computeRole",
+ "handlerSchema"
+ ],
+ "description": "Describes the properties of a Virtual Machine Extension Image."
+ },
+ "VirtualMachineExtensionImage": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineExtensionImageProperties"
+ }
+ },
+ "required": [
+ "name",
+ "location"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Describes a Virtual Machine Extension Image."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineImage.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineImage.json
new file mode 100644
index 000000000000..12cd61578f24
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineImage.json
@@ -0,0 +1,1064 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImages_Get",
+ "description": "Gets a virtual machine image.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "name": "offer",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher offer."
+ },
+ {
+ "name": "skus",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image SKU."
+ },
+ {
+ "name": "version",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image SKU version."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineImage"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImage_Get_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_Get_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImage_Get_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_Get_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImages_List",
+ "description": "Gets a list of all virtual machine image versions for the specified location, publisher, offer, and SKU.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "name": "offer",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher offer."
+ },
+ {
+ "name": "skus",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image SKU."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "name": "$orderby",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImage_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImage_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImages_ListOffers",
+ "description": "Gets a list of virtual machine image offers for the specified location and publisher.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImage_ListOffers_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImage_ListOffers_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_ListOffers_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImages_ListPublishers",
+ "description": "Gets a list of virtual machine image publishers for the specified Azure location.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImage_ListPublishers_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImage_ListPublishers_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_ListPublishers_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImages_ListSkus",
+ "description": "Gets a list of virtual machine image SKUs for the specified location, publisher, and offer.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "name": "offer",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher offer."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImage_ListSkus_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImage_ListSkus_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImage_ListSkus_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImagesEdgeZone_Get",
+ "description": "Gets a virtual machine image in an edge zone.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "edgeZone",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the edge zone."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "name": "offer",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher offer."
+ },
+ {
+ "name": "skus",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image SKU."
+ },
+ {
+ "name": "version",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image SKU version."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineImage"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImagesEdgeZone_Get_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImagesEdgeZone_Get_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_Get_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImagesEdgeZone_List",
+ "description": "Gets a list of all virtual machine image versions for the specified location, edge zone, publisher, offer, and SKU.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "edgeZone",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the edge zone."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "name": "offer",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher offer."
+ },
+ {
+ "name": "skus",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image SKU."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "description": "An integer value specifying the number of images to return that matches supplied values."
+ },
+ {
+ "name": "$orderby",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "Specifies the order of the results returned. Formatted as an OData query."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImagesEdgeZone_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImagesEdgeZone_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImagesEdgeZone_ListOffers",
+ "description": "Gets a list of virtual machine image offers for the specified location, edge zone and publisher.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "edgeZone",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the edge zone."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImagesEdgeZone_ListOffers_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImagesEdgeZone_ListOffers_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListOffers_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImagesEdgeZone_ListPublishers",
+ "description": "Gets a list of virtual machine image publishers for the specified Azure location and edge zone.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "edgeZone",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the edge zone."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImagesEdgeZone_ListPublishers_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImagesEdgeZone_ListPublishers_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListPublishers_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/vmimages": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImages_ListByEdgeZone",
+ "description": "Gets a list of all virtual machine image versions for the specified edge zone",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "edgeZone",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the edge zone."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VmImagesInEdgeZoneListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImagesEdgeZone_ListByEdgeZone_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImagesEdgeZone_ListByEdgeZone_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListByEdgeZone_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/edgeZones/{edgeZone}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": {
+ "get": {
+ "tags": [
+ "VirtualMachineImages"
+ ],
+ "operationId": "VirtualMachineImagesEdgeZone_ListSkus",
+ "description": "Gets a list of virtual machine image SKUs for the specified location, edge zone, publisher, and offer.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of a supported Azure region."
+ },
+ {
+ "name": "edgeZone",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the edge zone."
+ },
+ {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher."
+ },
+ {
+ "name": "offer",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "A valid image publisher offer."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineImagesEdgeZone_ListSkus_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MaximumSet_Gen.json"
+ },
+ "VirtualMachineImagesEdgeZone_ListSkus_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineImageExamples/VirtualMachineImagesEdgeZone_ListSkus_MinimumSet_Gen.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DisallowedConfiguration": {
+ "properties": {
+ "vmDiskType": {
+ "type": "string",
+ "description": "VM disk types which are disallowed.",
+ "enum": [
+ "None",
+ "Unmanaged"
+ ],
+ "x-ms-enum": {
+ "name": "VmDiskTypes",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Specifies the disallowed configuration for a virtual machine image."
+ },
+ "VirtualMachineImageResource": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the resource."
+ },
+ "location": {
+ "type": "string",
+ "description": "The supported Azure location of the resource."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Specifies the tags that are assigned to the virtual machine. For more information about using tags, see [Using tags to organize your Azure resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md)."
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location of the Virtual Machine."
+ }
+ },
+ "required": [
+ "name",
+ "location"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ }
+ ],
+ "description": "Virtual machine image resource information."
+ },
+ "PurchasePlan": {
+ "properties": {
+ "publisher": {
+ "type": "string",
+ "description": "The publisher ID."
+ },
+ "name": {
+ "type": "string",
+ "description": "The plan ID."
+ },
+ "product": {
+ "type": "string",
+ "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element."
+ }
+ },
+ "required": [
+ "publisher",
+ "name",
+ "product"
+ ],
+ "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace."
+ },
+ "OSDiskImage": {
+ "properties": {
+ "operatingSystem": {
+ "type": "string",
+ "description": "The operating system of the osDiskImage.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ }
+ },
+ "required": [
+ "operatingSystem"
+ ],
+ "description": "Contains the os disk image information."
+ },
+ "DataDiskImage": {
+ "properties": {
+ "lun": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM."
+ }
+ },
+ "description": "Contains the data disk images information."
+ },
+ "AutomaticOSUpgradeProperties": {
+ "properties": {
+ "automaticOSUpgradeSupported": {
+ "type": "boolean",
+ "description": "Specifies whether automatic OS upgrade is supported on the image."
+ }
+ },
+ "required": [
+ "automaticOSUpgradeSupported"
+ ],
+ "description": "Describes automatic OS upgrade properties on the image."
+ },
+ "ImageDeprecationStatus": {
+ "type": "object",
+ "properties": {
+ "imageState": {
+ "type": "string",
+ "description": "Describes the state of the image.",
+ "enum": [
+ "Active",
+ "ScheduledForDeprecation",
+ "Deprecated"
+ ],
+ "x-ms-enum": {
+ "name": "ImageState",
+ "modelAsString": true
+ }
+ },
+ "scheduledDeprecationTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The time, in future, at which this image will be marked as deprecated. This scheduled time is chosen by the Publisher."
+ },
+ "alternativeOption": {
+ "$ref": "#/definitions/AlternativeOption"
+ }
+ },
+ "description": "Describes image deprecation status properties on the image."
+ },
+ "AlternativeOption": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Describes the type of the alternative option.",
+ "enum": [
+ "None",
+ "Offer",
+ "Plan"
+ ],
+ "x-ms-enum": {
+ "name": "AlternativeType",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "type": "string",
+ "description": "Indicates the alternative option value specified by the Publisher. This is the Offer name when the type is Offer or the Plan name when the type is Plan."
+ }
+ },
+ "description": "Describes the alternative option specified by the Publisher for this image when this image is deprecated."
+ },
+ "VirtualMachineImageFeature": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the feature."
+ },
+ "value": {
+ "type": "string",
+ "description": "The corresponding value for the feature."
+ }
+ },
+ "description": "Specifies additional capabilities supported by the image"
+ },
+ "VirtualMachineImageProperties": {
+ "properties": {
+ "plan": {
+ "$ref": "#/definitions/PurchasePlan"
+ },
+ "osDiskImage": {
+ "$ref": "#/definitions/OSDiskImage"
+ },
+ "dataDiskImages": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DataDiskImage"
+ },
+ "x-ms-identifiers": [
+ "lun"
+ ]
+ },
+ "automaticOSUpgradeProperties": {
+ "$ref": "#/definitions/AutomaticOSUpgradeProperties"
+ },
+ "hyperVGeneration": {
+ "$ref": "./computeRPCommon.json#/definitions/HyperVGenerationType"
+ },
+ "disallowed": {
+ "$ref": "#/definitions/DisallowedConfiguration",
+ "description": "Specifies disallowed configuration for the VirtualMachine created from the image"
+ },
+ "features": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageFeature"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "architecture": {
+ "$ref": "#/definitions/ArchitectureType"
+ },
+ "imageDeprecationStatus": {
+ "$ref": "#/definitions/ImageDeprecationStatus"
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine Image."
+ },
+ "VirtualMachineImage": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineImageProperties"
+ }
+ },
+ "required": [
+ "name",
+ "location"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ }
+ ],
+ "description": "Describes a Virtual Machine Image."
+ },
+ "VmImagesInEdgeZoneListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineImageResource"
+ },
+ "description": "The list of VMImages in EdgeZone"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URI to fetch the next page of VMImages in EdgeZone. Call ListNext() with this URI to fetch the next page of VmImages."
+ }
+ },
+ "description": "The List VmImages in EdgeZone operation response."
+ },
+ "ArchitectureType": {
+ "type": "string",
+ "description": "Specifies the Architecture Type",
+ "enum": [
+ "x64",
+ "Arm64"
+ ],
+ "x-ms-enum": {
+ "name": "ArchitectureTypes",
+ "modelAsString": true
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json
new file mode 100644
index 000000000000..97b51a7a6a65
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json
@@ -0,0 +1,6009 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ComputeManagementClient",
+ "description": "The Compute Management Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachineScaleSets": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_ListByLocation",
+ "description": "Gets all the VM scale sets under the specified subscription for the specified location.",
+ "parameters": [
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location for which VM scale sets under the subscription are queried.",
+ "pattern": "^[-\\w\\._]+$"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Lists all the VM scale sets under the specified subscription for the specified location.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListBySubscription_ByLocation.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_CreateOrUpdate",
+ "description": "Create or update a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set to create or update."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ },
+ "description": "The scale set object."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create a scale set with password authentication.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPasswordAuthentication.json"
+ },
+ "Create a scale set with ssh authentication.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSshAuthentication.json"
+ },
+ "Create a scale set with premium storage.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPremiumStorage.json"
+ },
+ "Create a scale set with empty data disks on each vm.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEmptyDataDisksOnEachVm.json"
+ },
+ "Create a scale set with an azure load balancer.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureLoadBalancer.json"
+ },
+ "Create a scale set with an azure application gateway.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAzureApplicationGateway.json"
+ },
+ "Create a scale set with boot diagnostics.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithBootDiagnostics.json"
+ },
+ "Create a scale set with managed boot diagnostics.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithManagedBootDiagnostics.json"
+ },
+ "Create a scale set with a marketplace image plan.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAMarketplaceImagePlan.json"
+ },
+ "Create a scale set from a custom image.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromACustomImage.json"
+ },
+ "Create a platform-image scale set with unmanaged os disks.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_PlatformImageWithUnmanagedOsDisks.json"
+ },
+ "Create a custom-image scale set from an unmanaged generalized os image.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_CustomImageFromAnUnmanagedGeneralizedOsImage.json"
+ },
+ "Create a scale set with virtual machines in different zones.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMsInDifferentZones.json"
+ },
+ "Create a scale set with ephemeral os disks.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiffOsDisk.json"
+ },
+ "Create a scale set with terminate scheduled events enabled.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithTerminateScheduledEventEnabled.json"
+ },
+ "Create a scale set with OS image scheduled events enabled.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithOSImageScheduledEventEnabled.json"
+ },
+ "Create a scale set with automatic repairs enabled": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithAutomaticRepairs.json"
+ },
+ "Create a scale set with DiskEncryptionSet resource in os disk and data disk.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskEncryptionSetResource.json"
+ },
+ "Create a scale set with ephemeral os disks using placement property.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_CreateA_WithDiffOsDiskUsingDiffDiskPlacement.json"
+ },
+ "Create a scale set with extension time budget.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsTimeBudget.json"
+ },
+ "Create a scale set with Host Encryption using encryptionAtHost property.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithEncryptionAtHost.json"
+ },
+ "Create a scale set with Fpga Network Interfaces.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithFpgaNetworkInterface.json"
+ },
+ "Create a scale set with Network Interfaces with public ip address dns settings.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithNetworkInterfaceWithDnsSettings.json"
+ },
+ "Create a scale set with Uefi Settings of secureBoot and vTPM.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUefiSettings.json"
+ },
+ "Create a scale set from a generalized shared image.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromAGeneralizedSharedImage.json"
+ },
+ "Create a scale set from a specialized shared image.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromASpecializedSharedImage.json"
+ },
+ "Create a scale set with userData.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithUserData.json"
+ },
+ "Create a scale set with Application Profile": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithApplicationProfile.json"
+ },
+ "Create a scale set with scaleInPolicy.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithScaleInPolicy.json"
+ },
+ "Create a VMSS with an extension that has suppressFailures enabled": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithExtensionsSuppressFailuresEnabled.json"
+ },
+ "Create or update a scale set with capacity reservation.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithCapacityReservation.json"
+ },
+ "Create a scale set with spot restore policy": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSpotRestorePolicy.json"
+ },
+ "Create a scale set with priority mix policy": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithPriorityMixPolicy.json"
+ },
+ "Create a VMSS with an extension with protectedSettingsFromKeyVault": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithProtectedSettingsFromKeyVault.json"
+ },
+ "Create a scale set with vm size properties": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithVMSizeProperties.json"
+ },
+ "Create a scale set with SecurityType as ConfidentialVM": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityTypeConfidentialVM.json"
+ },
+ "Create a scale set with Disk Controller Type": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithDiskControllerType.json"
+ },
+ "Create a scale set where nic config has DisableTcpStateTracking property": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_FromWithDisableTcpStateTrackingNetworkInterface.json"
+ },
+ "Create a scale set with Service Artifact Reference": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithServiceArtifactReference.json"
+ },
+ "Create a scale set with Security Posture Reference": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_WithSecurityPostureReference.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Update",
+ "description": "Update a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set to create or update."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdate"
+ },
+ "description": "The scale set object."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_Update_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_Update_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Delete",
+ "description": "Deletes a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "forceDeletion",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "description": "Optional parameter to force delete a VM scale set. (Feature in Preview)"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Force Delete a VM scale set.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Delete_Force.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Get",
+ "description": "Display information about a virtual machine scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'UserData' retrieves the UserData property of the VM scale set that was provided by the user during the VM scale set Create/Update operation",
+ "enum": [
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "ExpandTypesForGetVMScaleSets",
+ "modelAsString": true
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a virtual machine scale set placed on a dedicated host group through automatic placement.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_AutoPlacedOnDedicatedHostGroup.json"
+ },
+ "Get a virtual machine scale set with UserData": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithUserData.json"
+ },
+ "Get a virtual machine scale set": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get.json"
+ },
+ "Get VM scale set VM with Disk Controller Type": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Get_WithDiskControllerType.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/deallocate": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Deallocate",
+ "description": "Deallocates specific virtual machines in a VM scale set. Shuts down the virtual machines and releases the compute resources. You are not billed for the compute resources that this virtual machine scale set deallocates.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "name": "hibernate",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "description": "Optional parameter to hibernate a virtual machine from the VM scale set. (This feature is available for VMSS with Flexible OrchestrationMode only)"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_Deallocate_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_Deallocate_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Deallocate_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/delete": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_DeleteInstances",
+ "description": "Deletes virtual machines in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "name": "forceDeletion",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "description": "Optional parameter to force delete virtual machines from the VM scale set. (Feature in Preview)"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_DeleteInstances_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_DeleteInstances_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_DeleteInstances_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_GetInstanceView",
+ "description": "Gets the status of a VM scale set instance.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetInstanceView"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_GetInstanceView_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_GetInstanceView_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetInstanceView_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_List",
+ "description": "Gets a list of all VM scale sets under a resource group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineScaleSetExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetExtensions_CreateOrUpdate",
+ "description": "The operation to create or update an extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set where the extension should be create or updated."
+ },
+ {
+ "name": "vmssExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ },
+ "description": "Parameters supplied to the Create VM scale set Extension operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetExtension_CreateOrUpdate_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetExtension_CreateOrUpdate_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_CreateOrUpdate_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineScaleSetExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetExtensions_Update",
+ "description": "The operation to update an extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set where the extension should be updated."
+ },
+ {
+ "name": "vmssExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtensionUpdate"
+ },
+ "description": "Parameters supplied to the Update VM scale set Extension operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetExtension_Update_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetExtension_Update_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineScaleSetExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetExtensions_Delete",
+ "description": "The operation to delete the extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set where the extension should be deleted."
+ },
+ {
+ "name": "vmssExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set extension."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetExtension_Delete_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetExtension_Delete_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Delete_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetExtensions_Get",
+ "description": "The operation to get the extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set containing the extension."
+ },
+ {
+ "name": "vmssExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set extension."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSetExtension_Get_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetExtension_Get_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_Get_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetExtensions_List",
+ "description": "Gets a list of all extensions in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set containing the extension."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtensionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSetExtension_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetExtension_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_ListAll",
+ "description": "Gets a list of all VM Scale Sets in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of VM Scale Sets. Do this till nextLink is null to fetch all the VM Scale Sets.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetListWithLinkResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_ListAll_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_ListAll_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListAll_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_ListSkus",
+ "description": "Gets a list of SKUs available for your VM scale set, including the minimum and maximum VM instances allowed for each SKU.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetListSkusResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_ListSkus_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_ListSkus_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ListSkus_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_GetOSUpgradeHistory",
+ "description": "Gets list of OS upgrades on a VM scale set instance.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetListOSUpgradeHistory"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_GetOSUpgradeHistory_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_GetOSUpgradeHistory_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_GetOSUpgradeHistory_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/poweroff": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_PowerOff",
+ "description": "Power off (stop) one or more virtual machines in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "name": "skipShutdown",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "default": false,
+ "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_PowerOff_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_PowerOff_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PowerOff_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/restart": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Restart",
+ "description": "Restarts one or more virtual machines in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_Restart_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_Restart_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Restart_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/start": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Start",
+ "description": "Starts one or more virtual machines in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_Start_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_Start_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Start_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reapply": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Reapply",
+ "description": "Reapplies the Virtual Machine Scale Set Virtual Machine Profile to the Virtual Machine Instances",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSets_Reapply_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSets_Reapply_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reapply_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Redeploy",
+ "description": "Shuts down all the virtual machines in the virtual machine scale set, moves them to a new node, and powers them back on.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_Redeploy_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_Redeploy_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Redeploy_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_PerformMaintenance",
+ "description": "Perform maintenance on one or more virtual machines in a VM scale set. Operation on instances which are not eligible for perform maintenance will be failed. Please refer to best practices for more details: https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_PerformMaintenance_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_PerformMaintenance_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_PerformMaintenance_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_UpdateInstances",
+ "description": "Upgrades one or more virtual machines to the latest SKU set in the VM scale set model.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_UpdateInstances_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_UpdateInstances_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_UpdateInstances_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimage": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_Reimage",
+ "description": "Reimages (upgrade the operating system) one or more virtual machines in a VM scale set which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmScaleSetReimageInput",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetReimageParameters"
+ },
+ "description": "Parameters for Reimaging VM ScaleSet."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_Reimage_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_Reimage_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Reimage_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimageall": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_ReimageAll",
+ "description": "Reimages all the disks ( including data disks ) in the virtual machines in a VM scale set. This operation is only supported for managed disks.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "vmInstanceIDs",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs"
+ },
+ "description": "A list of virtual machine instance IDs from the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_ReimageAll_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_ReimageAll_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ReimageAll_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/cancel": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetRollingUpgrades"
+ ],
+ "operationId": "VirtualMachineScaleSetRollingUpgrades_Cancel",
+ "description": "Cancels the current virtual machine scale set rolling upgrade.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetRollingUpgrade_Cancel_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetRollingUpgrade_Cancel_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_Cancel_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetRollingUpgrades"
+ ],
+ "operationId": "VirtualMachineScaleSetRollingUpgrades_StartOSUpgrade",
+ "description": "Starts a rolling upgrade to move all virtual machine scale set instances to the latest available Platform Image OS version. Instances which are already running the latest available OS version are not affected.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_StartOSUpgrade_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetRollingUpgrades"
+ ],
+ "operationId": "VirtualMachineScaleSetRollingUpgrades_StartExtensionUpgrade",
+ "description": "Starts a rolling upgrade to move all extensions for all virtual machine scale set instances to the latest available extension version. Instances which are already running the latest extension versions are not affected.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Start an extension rolling upgrade.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetExtension_RollingUpgrade.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetRollingUpgrades"
+ ],
+ "operationId": "VirtualMachineScaleSetRollingUpgrades_GetLatest",
+ "description": "Gets the status of the latest virtual machine scale set rolling upgrade.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RollingUpgradeStatusInfo"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSetRollingUpgrade_GetLatest_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetRollingUpgrade_GetLatest_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetRollingUpgrade_GetLatest_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/forceRecoveryServiceFabricPlatformUpdateDomainWalk": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_ForceRecoveryServiceFabricPlatformUpdateDomainWalk",
+ "description": "Manual platform update domain walk to update virtual machines in a service fabric virtual machine scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "platformUpdateDomain",
+ "in": "query",
+ "required": true,
+ "type": "integer",
+ "description": "The platform update domain for which a manual recovery walk is requested"
+ },
+ {
+ "name": "zone",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The zone in which the manual recovery walk is requested for cross zone virtual machine scale set"
+ },
+ {
+ "name": "placementGroupId",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The placement group id for which the manual recovery walk is requested."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RecoveryWalkResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ForceRecoveryServiceFabricPlatformUpdateDomainWalk_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/convertToSinglePlacementGroup": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_ConvertToSinglePlacementGroup",
+ "description": "Converts SinglePlacementGroup property to false for a existing virtual machine scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine scale set to create or update."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VMScaleSetConvertToSinglePlacementGroupInput"
+ },
+ "description": "The input object for ConvertToSinglePlacementGroup API."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_ConvertToSinglePlacementGroup_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/setOrchestrationServiceState": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSets"
+ ],
+ "operationId": "VirtualMachineScaleSets_SetOrchestrationServiceState",
+ "description": "Changes ServiceState property for a given service",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine scale set to create or update."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OrchestrationServiceStateInput"
+ },
+ "description": "The input object for SetOrchestrationServiceState API."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSet_SetOrchestrationServiceState_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSet_SetOrchestrationServiceState_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_SetOrchestrationServiceState_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineScaleSetVMExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetVMExtensions_CreateOrUpdate",
+ "description": "The operation to create or update the VMSS VM extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtension"
+ },
+ "description": "Parameters supplied to the Create Virtual Machine Extension operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtension"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create VirtualMachineScaleSet VM extension.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineScaleSetVMExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetVMExtensions_Update",
+ "description": "The operation to update the VMSS VM extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionUpdate"
+ },
+ "description": "Parameters supplied to the Update Virtual Machine Extension operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update VirtualMachineScaleSet VM extension.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineScaleSetVMExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetVMExtensions_Delete",
+ "description": "The operation to delete the VMSS VM extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete VirtualMachineScaleSet VM extension.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetVMExtensions_Get",
+ "description": "The operation to get the VMSS VM extension.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "vmExtensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the virtual machine extension."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get VirtualMachineScaleSet VM extension.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMExtensions"
+ ],
+ "operationId": "VirtualMachineScaleSetVMExtensions_List",
+ "description": "The operation to get all extensions of an instance in Virtual Machine Scaleset.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List extensions in Vmss instance.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVMExtension_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/reimage": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Reimage",
+ "description": "Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "vmScaleSetVMReimageInput",
+ "in": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters"
+ },
+ "description": "Parameters for the Reimaging Virtual machine in ScaleSet."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_Reimage_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_Reimage_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Reimage_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/reimageall": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_ReimageAll",
+ "description": "Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. This operation is only supported for managed disks.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_ReimageAll_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_ReimageAll_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_ReimageAll_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/deallocate": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Deallocate",
+ "description": "Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_Deallocate_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_Deallocate_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Deallocate_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}": {
+ "put": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Update",
+ "description": "Updates a virtual machine of a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set where the extension should be create or updated."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVM"
+ },
+ "description": "Parameters supplied to the Update Virtual Machine Scale Sets VM operation."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVM"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVM"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_Update_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_Update_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Update_MinimumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Delete",
+ "description": "Deletes a virtual machine from a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "forceDeletion",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "description": "Optional parameter to force delete a virtual machine from a VM scale set. (Feature in Preview)"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Force Delete a virtual machine from a VM scale set.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Delete_Force.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Get",
+ "description": "Gets a virtual machine from a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation. 'InstanceView' will retrieve the instance view of the virtual machine. 'UserData' will retrieve the UserData of the virtual machine.",
+ "enum": [
+ "instanceView",
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVM"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get VM scale set VM with UserData": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithUserData.json"
+ },
+ "Get VM scale set VM with VMSizeProperties": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_WithVMSizeProperties.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/instanceView": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_GetInstanceView",
+ "description": "Gets the status of a virtual machine from a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get instance view of a virtual machine from a VM scale set placed on a dedicated host group through automatic placement.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Get_InstanceViewAutoPlacedOnDedicatedHostGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines": {
+ "get": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_List",
+ "description": "Gets a list of all virtual machines in a VM scale sets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "virtualMachineScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "$filter",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The filter to apply to the operation. Allowed values are 'startswith(instanceView/statuses/code, 'PowerState') eq true', 'properties/latestModelApplied eq true', 'properties/latestModelApplied eq false'."
+ },
+ {
+ "name": "$select",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The list parameters. Allowed values are 'instanceView', 'instanceView/statuses'."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply to the operation. Allowed values are 'instanceView'."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-odata": "#/definitions/VirtualMachineScaleSetVM",
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_List_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_List_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_List_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_PowerOff",
+ "description": "Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "skipShutdown",
+ "in": "query",
+ "required": false,
+ "type": "boolean",
+ "default": false,
+ "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_PowerOff_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_PowerOff_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PowerOff_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Restart",
+ "description": "Restarts a virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_Restart_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_Restart_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Restart_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Start",
+ "description": "Starts a virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_Start_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_Start_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Start_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_Redeploy",
+ "description": "Shuts down the virtual machine in the virtual machine scale set, moves it to a new node, and powers it back on.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_Redeploy_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_Redeploy_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_Redeploy_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/retrieveBootDiagnosticsData": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_RetrieveBootDiagnosticsData",
+ "description": "The operation to retrieve SAS URIs of boot diagnostic logs for a virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "name": "sasUriExpirationTimeInMinutes",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "description": "Expiration duration in minutes for the SAS URIs with a value between 1 to 1440 minutes. **Note:** If not specified, SAS URIs will be generated with a default expiration duration of 120 minutes."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./virtualMachine.json#/definitions/RetrieveBootDiagnosticsDataResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "RetrieveBootDiagnosticsData of a virtual machine.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_RetrieveBootDiagnosticsData.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_PerformMaintenance",
+ "description": "Performs maintenance on a virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "VirtualMachineScaleSetVM_PerformMaintenance_MaximumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MaximumSet_Gen.json"
+ },
+ "VirtualMachineScaleSetVM_PerformMaintenance_MinimumSet_Gen": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_PerformMaintenance_MinimumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/simulateEviction": {
+ "post": {
+ "tags": [
+ "VirtualMachineScaleSetVMs"
+ ],
+ "operationId": "VirtualMachineScaleSetVMs_SimulateEviction",
+ "description": "The operation to simulate the eviction of spot virtual machine in a VM scale set.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "vmScaleSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the VM scale set."
+ },
+ {
+ "name": "instanceId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The instance ID of the virtual machine."
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Simulate Eviction a virtual machine.": {
+ "$ref": "./examples/virtualMachineScaleSetExamples/VirtualMachineScaleSetVM_SimulateEviction.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "VirtualMachineScaleSetVMExtension": {
+ "properties": {
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the extension."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ },
+ "location": {
+ "type": "string",
+ "description": "The location of the extension.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineExtensionProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ }
+ ],
+ "description": "Describes a VMSS VM Extension.",
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineScaleSetVMExtensionUpdate": {
+ "properties": {
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the extension."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineExtensionUpdateProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ }
+ ],
+ "description": "Describes a VMSS VM Extension.",
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineScaleSetVMExtensionsListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtension"
+ },
+ "description": "The list of VMSS VM extensions"
+ }
+ },
+ "description": "The List VMSS VM Extension operation response"
+ },
+ "VirtualMachineScaleSetHardwareProfile": {
+ "type": "object",
+ "properties": {
+ "vmSizeProperties": {
+ "$ref": "./computeRPCommon.json#/definitions/VMSizeProperties",
+ "description": "Specifies the properties for customizing the size of the virtual machine. Minimum api-version: 2021-11-01. Please follow the instructions in [VM Customization](https://aka.ms/vmcustomization) for more details."
+ }
+ },
+ "description": "Specifies the hardware settings for the virtual machine scale set."
+ },
+ "AutomaticRepairsPolicy": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false."
+ },
+ "gracePeriod": {
+ "type": "string",
+ "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 10 minutes (PT10M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)."
+ },
+ "repairAction": {
+ "type": "string",
+ "description": "Type of repair action (replace, restart, reimage) that will be used for repairing unhealthy virtual machines in the scale set. Default value is replace.",
+ "enum": [
+ "Replace",
+ "Restart",
+ "Reimage"
+ ],
+ "x-ms-enum": {
+ "name": "RepairAction",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set."
+ },
+ "AutomaticOSUpgradePolicy": {
+ "properties": {
+ "enableAutomaticOSUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the OS image becomes available. Default value is false. If this is set to true for Windows based scale sets, [enableAutomaticUpdates](https://docs.microsoft.com/dotnet/api/microsoft.azure.management.compute.models.windowsconfiguration.enableautomaticupdates?view=azure-dotnet) is automatically set to false and cannot be set to true."
+ },
+ "disableAutomaticRollback": {
+ "type": "boolean",
+ "description": "Whether OS image rollback feature should be disabled. Default value is false."
+ },
+ "useRollingUpgradePolicy": {
+ "type": "boolean",
+ "description": "Indicates whether rolling upgrade policy should be used during Auto OS Upgrade. Default value is false. Auto OS Upgrade will fallback to the default policy if no policy is defined on the VMSS."
+ }
+ },
+ "description": "The configuration parameters used for performing automatic OS upgrade."
+ },
+ "UpgradePolicy": {
+ "properties": {
+ "mode": {
+ "type": "string",
+ "description": "Specifies the mode of an upgrade to virtual machines in the scale set.
Possible values are:
**Manual** - You control the application of updates to virtual machines in the scale set. You do this by using the manualUpgrade action.
**Automatic** - All virtual machines in the scale set are automatically updated at the same time.",
+ "enum": [
+ "Automatic",
+ "Manual",
+ "Rolling"
+ ],
+ "x-ms-enum": {
+ "name": "UpgradeMode",
+ "modelAsString": false
+ }
+ },
+ "rollingUpgradePolicy": {
+ "$ref": "#/definitions/RollingUpgradePolicy",
+ "description": "The configuration parameters used while performing a rolling upgrade."
+ },
+ "automaticOSUpgradePolicy": {
+ "$ref": "#/definitions/AutomaticOSUpgradePolicy",
+ "description": "Configuration parameters used for performing automatic OS Upgrade."
+ }
+ },
+ "description": "Describes an upgrade policy - automatic, manual, or rolling."
+ },
+ "RollingUpgradePolicy": {
+ "properties": {
+ "maxBatchInstancePercent": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 5,
+ "maximum": 100,
+ "description": "The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. The default value for this parameter is 20%."
+ },
+ "maxUnhealthyInstancePercent": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 5,
+ "maximum": 100,
+ "description": "The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. The default value for this parameter is 20%."
+ },
+ "maxUnhealthyUpgradedInstancePercent": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100,
+ "description": "The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. The default value for this parameter is 20%."
+ },
+ "pauseTimeBetweenBatches": {
+ "type": "string",
+ "description": "The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. The default value is 0 seconds (PT0S)."
+ },
+ "enableCrossZoneUpgrade": {
+ "type": "boolean",
+ "description": "Allow VMSS to ignore AZ boundaries when constructing upgrade batches. Take into consideration the Update Domain and maxBatchInstancePercent to determine the batch size."
+ },
+ "prioritizeUnhealthyInstances": {
+ "type": "boolean",
+ "description": "Upgrade all unhealthy instances in a scale set before any healthy instances."
+ },
+ "rollbackFailedInstancesOnPolicyBreach": {
+ "type": "boolean",
+ "description": "Rollback failed instances to previous model if the Rolling Upgrade policy is violated."
+ },
+ "maxSurge": {
+ "type": "boolean",
+ "description": "Create new virtual machines to upgrade the scale set, rather than updating the existing virtual machines. Existing virtual machines will be deleted once the new virtual machines are created for each batch."
+ }
+ },
+ "description": "The configuration parameters used while performing a rolling upgrade."
+ },
+ "ScaleInPolicy": {
+ "properties": {
+ "rules": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Default",
+ "OldestVM",
+ "NewestVM"
+ ],
+ "x-ms-enum": {
+ "name": "VirtualMachineScaleSetScaleInRules",
+ "modelAsString": true
+ }
+ },
+ "description": "The rules to be followed when scaling-in a virtual machine scale set.
Possible values are:
**Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.
**OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.
**NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.
"
+ },
+ "forceDeletion": {
+ "type": "boolean",
+ "description": "This property allows you to specify if virtual machines chosen for removal have to be force deleted when a virtual machine scale set is being scaled-in.(Feature in Preview)"
+ }
+ },
+ "description": "Describes a scale-in policy for a virtual machine scale set."
+ },
+ "SpotRestorePolicy": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Enables the Spot-Try-Restore feature where evicted VMSS SPOT instances will be tried to be restored opportunistically based on capacity availability and pricing constraints"
+ },
+ "restoreTimeout": {
+ "type": "string",
+ "description": "Timeout value expressed as an ISO 8601 time duration after which the platform will not try to restore the VMSS SPOT instances"
+ }
+ },
+ "description": "Specifies the Spot-Try-Restore properties for the virtual machine scale set. With this property customer can enable or disable automatic restore of the evicted Spot VMSS VM instances opportunistically based on capacity availability and pricing constraint."
+ },
+ "PriorityMixPolicy": {
+ "type": "object",
+ "properties": {
+ "baseRegularPriorityCount": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "description": "The base number of regular priority VMs that will be created in this scale set as it scales out."
+ },
+ "regularPriorityPercentageAboveBase": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100,
+ "description": "The percentage of VM instances, after the base regular priority count has been reached, that are expected to use regular priority."
+ }
+ },
+ "description": "Specifies the target splits for Spot and Regular priority VMs within a scale set with flexible orchestration mode. With this property the customer is able to specify the base number of regular priority VMs created as the VMSS flex instance scales out and the split between Spot and Regular priority VMs after this base target has been reached."
+ },
+ "OrchestrationMode": {
+ "type": "string",
+ "description": "Specifies the orchestration mode for the virtual machine scale set.",
+ "enum": [
+ "Uniform",
+ "Flexible"
+ ],
+ "x-ms-enum": {
+ "name": "OrchestrationMode",
+ "modelAsString": true
+ }
+ },
+ "VirtualMachineScaleSetIdentity": {
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal id of virtual machine scale set identity. This property will only be provided for a system assigned identity."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant id associated with the virtual machine scale set. This property will only be provided for a system assigned identity."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of identity used for the virtual machine scale set. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine scale set.",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "SystemAssigned, UserAssigned",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false
+ }
+ },
+ "userAssignedIdentities": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/UserAssignedIdentities",
+ "description": "The list of user identities associated with the virtual machine scale set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."
+ }
+ },
+ "description": "Identity for the virtual machine scale set."
+ },
+ "VirtualMachineScaleSetOSProfile": {
+ "properties": {
+ "computerNamePrefix": {
+ "type": "string",
+ "description": "Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long."
+ },
+ "adminUsername": {
+ "type": "string",
+ "description": "Specifies the name of the administrator account.
**Windows-only restriction:** Cannot end in \".\"
**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".
**Minimum-length (Linux):** 1 character
**Max-length (Linux):** 64 characters
**Max-length (Windows):** 20 characters"
+ },
+ "adminPassword": {
+ "type": "string",
+ "description": "Specifies the password of the administrator account.
**Minimum-length (Windows):** 8 characters
**Minimum-length (Linux):** 6 characters
**Max-length (Windows):** 123 characters
**Max-length (Linux):** 72 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"
For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)
For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "x-ms-secret": true
+ },
+ "customData": {
+ "type": "string",
+ "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init)"
+ },
+ "windowsConfiguration": {
+ "$ref": "./computeRPCommon.json#/definitions/WindowsConfiguration",
+ "description": "Specifies Windows operating system settings on the virtual machine."
+ },
+ "linuxConfiguration": {
+ "$ref": "./computeRPCommon.json#/definitions/LinuxConfiguration",
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ },
+ "secrets": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/VaultSecretGroup"
+ },
+ "x-ms-identifiers": [
+ "sourceVault/id"
+ ],
+ "description": "Specifies set of certificates that should be installed onto the virtual machines in the scale set. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
+ },
+ "allowExtensionOperations": {
+ "type": "boolean",
+ "description": "Specifies whether extension operations should be allowed on the virtual machine scale set. This may only be set to False when no extensions are present on the virtual machine scale set."
+ },
+ "requireGuestProvisionSignal": {
+ "type": "boolean",
+ "description": "Optional property which must either be set to True or omitted."
+ }
+ },
+ "description": "Describes a virtual machine scale set OS profile."
+ },
+ "VirtualMachineScaleSetUpdateOSProfile": {
+ "properties": {
+ "customData": {
+ "type": "string",
+ "description": "A base-64 encoded string of custom data."
+ },
+ "windowsConfiguration": {
+ "$ref": "./computeRPCommon.json#/definitions/WindowsConfiguration",
+ "description": "The Windows Configuration of the OS profile."
+ },
+ "linuxConfiguration": {
+ "$ref": "./computeRPCommon.json#/definitions/LinuxConfiguration",
+ "description": "The Linux Configuration of the OS profile."
+ },
+ "secrets": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/VaultSecretGroup"
+ },
+ "x-ms-identifiers": [
+ "sourceVault/id"
+ ],
+ "description": "The List of certificates for addition to the VM."
+ }
+ },
+ "description": "Describes a virtual machine scale set OS profile."
+ },
+ "VirtualMachineScaleSetManagedDiskParameters": {
+ "properties": {
+ "storageAccountType": {
+ "$ref": "./computeRPCommon.json#/definitions/StorageAccountType",
+ "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk."
+ },
+ "diskEncryptionSet": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskEncryptionSetParameters",
+ "description": "Specifies the customer managed disk encryption set resource id for the managed disk."
+ },
+ "securityProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/VMDiskSecurityProfile",
+ "description": "Specifies the security profile for the managed disk."
+ }
+ },
+ "description": "Describes the parameters of a ScaleSet managed disk."
+ },
+ "VirtualMachineScaleSetOSDisk": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The disk name."
+ },
+ "caching": {
+ "$ref": "./computeRPCommon.json#/definitions/Caching",
+ "description": "Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The default values are: **None for Standard storage. ReadOnly for Premium storage.**"
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk."
+ },
+ "createOption": {
+ "$ref": "./computeRPCommon.json#/definitions/CreateOption",
+ "description": "Specifies how the virtual machines in the scale set should be created. The only allowed value is: **FromImage.** This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described."
+ },
+ "diffDiskSettings": {
+ "$ref": "./computeRPCommon.json#/definitions/DiffDiskSettings",
+ "description": "Specifies the ephemeral disk Settings for the operating system disk used by the virtual machine scale set."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023."
+ },
+ "osType": {
+ "type": "string",
+ "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD. Possible values are: **Windows,** **Linux.**",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "image": {
+ "$ref": "./computeRPCommon.json#/definitions/VirtualHardDisk",
+ "description": "Specifies information about the unmanaged user image to base the scale set on."
+ },
+ "vhdContainers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Specifies the container urls that are used to store operating system disks for the scale set."
+ },
+ "managedDisk": {
+ "description": "The managed disk parameters.",
+ "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters"
+ },
+ "deleteOption": {
+ "$ref": "./computeRPCommon.json#/definitions/DeleteOption",
+ "description": "Specifies whether OS Disk should be deleted or detached upon VMSS Flex deletion (This feature is available for VMSS with Flexible OrchestrationMode only).
Possible values:
**Delete** If this value is used, the OS disk is deleted when VMSS Flex VM is deleted.
**Detach** If this value is used, the OS disk is retained after VMSS Flex VM is deleted.
The default value is set to **Delete**. For an Ephemeral OS Disk, the default value is set to **Delete**. User cannot change the delete option for Ephemeral OS Disk."
+ }
+ },
+ "required": [
+ "createOption"
+ ],
+ "description": "Describes a virtual machine scale set operating system disk."
+ },
+ "VirtualMachineScaleSetUpdateOSDisk": {
+ "properties": {
+ "caching": {
+ "$ref": "./computeRPCommon.json#/definitions/Caching",
+ "description": "The caching type."
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.
diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023"
+ },
+ "image": {
+ "$ref": "./computeRPCommon.json#/definitions/VirtualHardDisk",
+ "description": "The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk should not exist."
+ },
+ "vhdContainers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of virtual hard disk container uris."
+ },
+ "managedDisk": {
+ "description": "The managed disk parameters.",
+ "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters"
+ },
+ "deleteOption": {
+ "$ref": "./computeRPCommon.json#/definitions/DeleteOption",
+ "description": "Specifies whether OS Disk should be deleted or detached upon VMSS Flex deletion (This feature is available for VMSS with Flexible OrchestrationMode only).
Possible values:
**Delete** If this value is used, the OS disk is deleted when VMSS Flex VM is deleted.
**Detach** If this value is used, the OS disk is retained after VMSS Flex VM is deleted.
The default value is set to **Delete**. For an Ephemeral OS Disk, the default value is set to **Delete**. User cannot change the delete option for Ephemeral OS Disk."
+ }
+ },
+ "description": "Describes virtual machine scale set operating system disk Update Object. This should be used for Updating VMSS OS Disk."
+ },
+ "VirtualMachineScaleSetDataDisk": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The disk name."
+ },
+ "lun": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM."
+ },
+ "caching": {
+ "$ref": "./computeRPCommon.json#/definitions/Caching",
+ "description": "Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The default values are: **None for Standard storage. ReadOnly for Premium storage.**"
+ },
+ "writeAcceleratorEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk."
+ },
+ "createOption": {
+ "$ref": "./computeRPCommon.json#/definitions/CreateOption",
+ "description": "The create option."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023."
+ },
+ "managedDisk": {
+ "description": "The managed disk parameters.",
+ "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters"
+ },
+ "diskIOPSReadWrite": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Specifies the Read-Write IOPS for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB."
+ },
+ "diskMBpsReadWrite": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Specifies the bandwidth in MB per second for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB."
+ },
+ "deleteOption": {
+ "$ref": "./computeRPCommon.json#/definitions/DeleteOption",
+ "description": "Specifies whether data disk should be deleted or detached upon VMSS Flex deletion (This feature is available for VMSS with Flexible OrchestrationMode only).
Possible values:
**Delete** If this value is used, the data disk is deleted when the VMSS Flex VM is deleted.
**Detach** If this value is used, the data disk is retained after VMSS Flex VM is deleted.
The default value is set to **Delete**."
+ }
+ },
+ "required": [
+ "lun",
+ "createOption"
+ ],
+ "description": "Describes a virtual machine scale set data disk."
+ },
+ "VirtualMachineScaleSetStorageProfile": {
+ "properties": {
+ "imageReference": {
+ "$ref": "./computeRPCommon.json#/definitions/ImageReference",
+ "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations."
+ },
+ "osDisk": {
+ "$ref": "#/definitions/VirtualMachineScaleSetOSDisk",
+ "description": "Specifies information about the operating system disk used by the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetDataDisk"
+ },
+ "x-ms-identifiers": [
+ "name",
+ "lun"
+ ],
+ "description": "Specifies the parameters that are used to add data disks to the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ },
+ "diskControllerType": {
+ "type": "string",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskControllerType",
+ "description": "Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01"
+ }
+ }
+ },
+ "description": "Describes a virtual machine scale set storage profile."
+ },
+ "VirtualMachineScaleSetUpdateStorageProfile": {
+ "properties": {
+ "imageReference": {
+ "$ref": "./computeRPCommon.json#/definitions/ImageReference",
+ "description": "The image reference."
+ },
+ "osDisk": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSDisk",
+ "description": "The OS disk."
+ },
+ "dataDisks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetDataDisk"
+ },
+ "x-ms-identifiers": [
+ "name",
+ "lun"
+ ],
+ "description": "The data disks."
+ },
+ "diskControllerType": {
+ "type": "string",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskControllerType",
+ "description": "Specifies the disk controller type configured for the virtual machines in the scale set. **Note:** You need to deallocate the virtual machines in the scale set before updating its disk controller type based on the upgrade mode configured for the scale set. Minimum api-version: 2022-08-01."
+ }
+ }
+ },
+ "description": "Describes a virtual machine scale set storage profile."
+ },
+ "VirtualMachineScaleSetIPConfigurationProperties": {
+ "properties": {
+ "subnet": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference",
+ "description": "Specifies the identifier of the subnet."
+ },
+ "primary": {
+ "type": "boolean",
+ "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface."
+ },
+ "publicIPAddressConfiguration": {
+ "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfiguration",
+ "description": "The publicIPAddressConfiguration."
+ },
+ "privateIPAddressVersion": {
+ "type": "string",
+ "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "IPVersion",
+ "modelAsString": true
+ }
+ },
+ "applicationGatewayBackendAddressPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway."
+ },
+ "applicationSecurityGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to application security group."
+ },
+ "loadBalancerBackendAddressPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same basic sku load balancer."
+ },
+ "loadBalancerInboundNatPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to inbound Nat pools of the load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same basic sku load balancer."
+ }
+ },
+ "description": "Describes a virtual machine scale set network profile's IP configuration properties."
+ },
+ "VirtualMachineScaleSetUpdateIPConfigurationProperties": {
+ "properties": {
+ "subnet": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference",
+ "description": "The subnet."
+ },
+ "primary": {
+ "type": "boolean",
+ "description": "Specifies the primary IP Configuration in case the network interface has more than one IP Configuration."
+ },
+ "publicIPAddressConfiguration": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfiguration",
+ "description": "The publicIPAddressConfiguration."
+ },
+ "privateIPAddressVersion": {
+ "type": "string",
+ "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "IPVersion",
+ "modelAsString": true
+ }
+ },
+ "applicationGatewayBackendAddressPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "The application gateway backend address pools."
+ },
+ "applicationSecurityGroups": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "Specifies an array of references to application security group."
+ },
+ "loadBalancerBackendAddressPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "The load balancer backend address pools."
+ },
+ "loadBalancerInboundNatPools": {
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "description": "The load balancer inbound nat pools."
+ }
+ },
+ "description": "Describes a virtual machine scale set network profile's IP configuration properties."
+ },
+ "VirtualMachineScaleSetIPConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The IP configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetIPConfigurationProperties"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Describes a virtual machine scale set network profile's IP configuration."
+ },
+ "VirtualMachineScaleSetUpdateIPConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The IP configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfigurationProperties"
+ }
+ },
+ "description": "Describes a virtual machine scale set network profile's IP configuration. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network",
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineScaleSetNetworkConfigurationProperties": {
+ "properties": {
+ "primary": {
+ "type": "boolean",
+ "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface."
+ },
+ "enableAcceleratedNetworking": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is accelerated networking-enabled."
+ },
+ "disableTcpStateTracking": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is disabled for tcp state tracking."
+ },
+ "enableFpga": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is FPGA networking-enabled."
+ },
+ "networkSecurityGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The network security group."
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings",
+ "description": "The dns settings to be applied on the network interfaces."
+ },
+ "ipConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetIPConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "Specifies the IP configurations of the network interface."
+ },
+ "enableIPForwarding": {
+ "type": "boolean",
+ "description": "Whether IP forwarding enabled on this NIC."
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the network interface when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ },
+ "auxiliaryMode": {
+ "type": "string",
+ "description": "Specifies whether the Auxiliary mode is enabled for the Network Interface resource.",
+ "enum": [
+ "None",
+ "AcceleratedConnections",
+ "Floating"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkInterfaceAuxiliaryMode",
+ "modelAsString": true
+ }
+ },
+ "auxiliarySku": {
+ "type": "string",
+ "description": "Specifies whether the Auxiliary sku is enabled for the Network Interface resource.",
+ "enum": [
+ "None",
+ "A1",
+ "A2",
+ "A4",
+ "A8"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkInterfaceAuxiliarySku",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "ipConfigurations"
+ ],
+ "description": "Describes a virtual machine scale set network profile's IP configuration."
+ },
+ "VirtualMachineScaleSetUpdateNetworkConfigurationProperties": {
+ "properties": {
+ "primary": {
+ "type": "boolean",
+ "description": "Whether this is a primary NIC on a virtual machine."
+ },
+ "enableAcceleratedNetworking": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is accelerated networking-enabled."
+ },
+ "disableTcpStateTracking": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is disabled for tcp state tracking."
+ },
+ "enableFpga": {
+ "type": "boolean",
+ "description": "Specifies whether the network interface is FPGA networking-enabled."
+ },
+ "networkSecurityGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The network security group."
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings",
+ "description": "The dns settings to be applied on the network interfaces."
+ },
+ "ipConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The virtual machine scale set IP Configuration."
+ },
+ "enableIPForwarding": {
+ "type": "boolean",
+ "description": "Whether IP forwarding enabled on this NIC."
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the network interface when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ },
+ "auxiliaryMode": {
+ "type": "string",
+ "description": "Specifies whether the Auxiliary mode is enabled for the Network Interface resource.",
+ "enum": [
+ "None",
+ "AcceleratedConnections",
+ "Floating"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkInterfaceAuxiliaryMode",
+ "modelAsString": true
+ }
+ },
+ "auxiliarySku": {
+ "type": "string",
+ "description": "Specifies whether the Auxiliary sku is enabled for the Network Interface resource.",
+ "enum": [
+ "None",
+ "A1",
+ "A2",
+ "A4",
+ "A8"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkInterfaceAuxiliarySku",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a virtual machine scale set updatable network profile's IP configuration.Use this object for updating network profile's IP Configuration."
+ },
+ "VirtualMachineScaleSetNetworkConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The network configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationProperties"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Describes a virtual machine scale set network profile's network configurations."
+ },
+ "VirtualMachineScaleSetUpdateNetworkConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The network configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfigurationProperties"
+ }
+ },
+ "description": "Describes a virtual machine scale set network profile's network configurations.",
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineScaleSetNetworkConfigurationDnsSettings": {
+ "properties": {
+ "dnsServers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of DNS servers IP addresses"
+ }
+ },
+ "description": "Describes a virtual machines scale sets network configuration's DNS settings."
+ },
+ "VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings": {
+ "properties": {
+ "domainNameLabel": {
+ "type": "string",
+ "description": "The Domain name label.The concatenation of the domain name label and vm index will be the domain name labels of the PublicIPAddress resources that will be created"
+ },
+ "domainNameLabelScope": {
+ "type": "string",
+ "description": "The Domain name label scope.The concatenation of the hashed domain name label that generated according to the policy from domain name label scope and vm index will be the domain name labels of the PublicIPAddress resources that will be created",
+ "enum": [
+ "TenantReuse",
+ "SubscriptionReuse",
+ "ResourceGroupReuse",
+ "NoReuse"
+ ],
+ "x-ms-enum": {
+ "name": "DomainNameLabelScopeTypes",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "domainNameLabel"
+ ],
+ "description": "Describes a virtual machines scale sets network configuration's DNS settings."
+ },
+ "VirtualMachineScaleSetIpTag": {
+ "properties": {
+ "ipTagType": {
+ "type": "string",
+ "description": "IP tag type. Example: FirstPartyUsage."
+ },
+ "tag": {
+ "type": "string",
+ "description": "IP tag associated with the public IP. Example: SQL, Storage etc."
+ }
+ },
+ "description": "Contains the IP tag associated with the public IP address."
+ },
+ "VirtualMachineScaleSetPublicIPAddressConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The publicIP address configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationProperties"
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/PublicIPAddressSku"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration"
+ },
+ "VirtualMachineScaleSetUpdatePublicIPAddressConfiguration": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The publicIP address configuration name."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties"
+ }
+ },
+ "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration"
+ },
+ "VirtualMachineScaleSetPublicIPAddressConfigurationProperties": {
+ "properties": {
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The idle timeout of the public IP address."
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings",
+ "description": "The dns settings to be applied on the publicIP addresses ."
+ },
+ "ipTags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetIpTag"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of IP tags associated with the public IP address."
+ },
+ "publicIPPrefix": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The PublicIPPrefix from which to allocate publicIP addresses."
+ },
+ "publicIPAddressVersion": {
+ "type": "string",
+ "description": "Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "IPVersion",
+ "modelAsString": true
+ }
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the public IP when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration"
+ },
+ "VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties": {
+ "properties": {
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The idle timeout of the public IP address."
+ },
+ "dnsSettings": {
+ "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings",
+ "description": "The dns settings to be applied on the publicIP addresses ."
+ },
+ "publicIPPrefix": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The PublicIPPrefix from which to allocate publicIP addresses."
+ },
+ "deleteOption": {
+ "type": "string",
+ "description": "Specify what happens to the public IP when the VM is deleted",
+ "enum": [
+ "Delete",
+ "Detach"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteOptions",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration"
+ },
+ "VirtualMachineScaleSetNetworkProfile": {
+ "properties": {
+ "healthProbe": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference",
+ "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'."
+ },
+ "networkInterfaceConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of network configurations."
+ },
+ "networkApiVersion": {
+ "type": "string",
+ "description": "specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations for Virtual Machine Scale Set with orchestration mode 'Flexible'",
+ "enum": [
+ "2020-11-01"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkApiVersion",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a virtual machine scale set network profile."
+ },
+ "VirtualMachineScaleSetUpdateNetworkProfile": {
+ "properties": {
+ "healthProbe": {
+ "$ref": "./computeRPCommon.json#/definitions/ApiEntityReference",
+ "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'."
+ },
+ "networkInterfaceConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The list of network configurations."
+ },
+ "networkApiVersion": {
+ "type": "string",
+ "description": "specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations for Virtual Machine Scale Set with orchestration mode 'Flexible'",
+ "enum": [
+ "2020-11-01"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkApiVersion",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Describes a virtual machine scale set network profile."
+ },
+ "VirtualMachineScaleSetExtensionProperties": {
+ "properties": {
+ "forceUpdateTag": {
+ "type": "string",
+ "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The name of the extension handler publisher."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "autoUpgradeMinorVersion": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true."
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available."
+ },
+ "settings": {
+ "type": "object",
+ "description": "Json formatted public settings for the extension."
+ },
+ "protectedSettings": {
+ "type": "object",
+ "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "provisionAfterExtensions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Collection of extension names after which this extension needs to be provisioned."
+ },
+ "suppressFailures": {
+ "type": "boolean",
+ "description": "Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false."
+ },
+ "protectedSettingsFromKeyVault": {
+ "$ref": "./computeRPCommon.json#/definitions/KeyVaultSecretReference",
+ "description": "The extensions protected settings that are passed by reference, and consumed from key vault"
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine Scale Set Extension."
+ },
+ "VirtualMachineScaleSetExtension": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extension."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ }
+ ],
+ "description": "Describes a Virtual Machine Scale Set Extension."
+ },
+ "VirtualMachineScaleSetExtensionUpdate": {
+ "properties": {
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the extension."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResourceReadOnly"
+ }
+ ],
+ "description": "Describes a Virtual Machine Scale Set Extension.",
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineScaleSetExtensionListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ },
+ "description": "The list of VM scale set extensions."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of VM scale set extensions. Call ListNext() with this to fetch the next page of VM scale set extensions."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List VM scale set extension operation response."
+ },
+ "VirtualMachineScaleSetExtensionProfile": {
+ "properties": {
+ "extensions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtension"
+ },
+ "description": "The virtual machine scale set child extension resources."
+ },
+ "extensionsTimeBudget": {
+ "type": "string",
+ "description": "Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). Minimum api-version: 2020-06-01."
+ }
+ },
+ "description": "Describes a virtual machine scale set extension profile."
+ },
+ "VirtualMachineScaleSetVMProfile": {
+ "properties": {
+ "osProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetOSProfile",
+ "description": "Specifies the operating system settings for the virtual machines in the scale set."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile",
+ "description": "Specifies the storage settings for the virtual machine disks."
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile",
+ "description": "Specifies properties of the network interfaces of the virtual machines in the scale set."
+ },
+ "securityProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/SecurityProfile",
+ "description": "Specifies the Security related profile settings for the virtual machines in the scale set."
+ },
+ "diagnosticsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/DiagnosticsProfile",
+ "description": "Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15."
+ },
+ "extensionProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile",
+ "description": "Specifies a collection of settings for extensions installed on virtual machines in the scale set."
+ },
+ "licenseType": {
+ "type": "string",
+ "description": "Specifies that the image or disk that is being used was licensed on-premises.
Possible values for Windows Server operating system are:
Windows_Client
Windows_Server
Possible values for Linux Server operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS (for SUSE)
For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)
[Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
Minimum api-version: 2015-06-15"
+ },
+ "priority": {
+ "$ref": "./computeRPCommon.json#/definitions/priority",
+ "description": "Specifies the priority for the virtual machines in the scale set. Minimum api-version: 2017-10-30-preview."
+ },
+ "evictionPolicy": {
+ "$ref": "./computeRPCommon.json#/definitions/evictionPolicy",
+ "description": "Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set. For Azure Spot virtual machines, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2019-03-01. For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview."
+ },
+ "billingProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/BillingProfile",
+ "description": "Specifies the billing related details of a Azure Spot VMSS. Minimum api-version: 2019-03-01."
+ },
+ "scheduledEventsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/ScheduledEventsProfile",
+ "description": "Specifies Scheduled Event related configurations."
+ },
+ "userData": {
+ "type": "string",
+ "description": "UserData for the virtual machines in the scale set, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum api-version: 2021-03-01."
+ },
+ "capacityReservation": {
+ "$ref": "./computeRPCommon.json#/definitions/CapacityReservationProfile",
+ "description": "Specifies the capacity reservation related details of a scale set. Minimum api-version: 2021-04-01."
+ },
+ "applicationProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/ApplicationProfile",
+ "description": "Specifies the gallery applications that should be made available to the VM/VMSS"
+ },
+ "hardwareProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetHardwareProfile",
+ "description": "Specifies the hardware profile related details of a scale set. Minimum api-version: 2021-11-01."
+ },
+ "serviceArtifactReference": {
+ "$ref": "#/definitions/ServiceArtifactReference",
+ "description": "Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version. Minimum api-version: 2022-11-01"
+ },
+ "securityPostureReference": {
+ "$ref": "#/definitions/SecurityPostureReference",
+ "description": "Specifies the security posture to be used for all virtual machines in the scale set. Minimum api-version: 2023-03-01"
+ }
+ },
+ "description": "Describes a virtual machine scale set virtual machine profile."
+ },
+ "VirtualMachineScaleSetUpdateVMProfile": {
+ "properties": {
+ "osProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSProfile",
+ "description": "The virtual machine scale set OS profile."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateStorageProfile",
+ "description": "The virtual machine scale set storage profile."
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkProfile",
+ "description": "The virtual machine scale set network profile."
+ },
+ "securityProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/SecurityProfile",
+ "description": "The virtual machine scale set Security profile"
+ },
+ "diagnosticsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/DiagnosticsProfile",
+ "description": "The virtual machine scale set diagnostics profile."
+ },
+ "extensionProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile",
+ "description": "The virtual machine scale set extension profile."
+ },
+ "licenseType": {
+ "type": "string",
+ "description": "The license type, which is for bring your own license scenario."
+ },
+ "billingProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/BillingProfile",
+ "description": "Specifies the billing related details of a Azure Spot VMSS. Minimum api-version: 2019-03-01."
+ },
+ "scheduledEventsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/ScheduledEventsProfile",
+ "description": "Specifies Scheduled Event related configurations."
+ },
+ "userData": {
+ "type": "string",
+ "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here.
Minimum api-version: 2021-03-01"
+ },
+ "hardwareProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetHardwareProfile",
+ "description": "Specifies the hardware profile related details of a scale set. Minimum api-version: 2021-11-01."
+ }
+ },
+ "description": "Describes a virtual machine scale set virtual machine profile."
+ },
+ "VirtualMachineScaleSetProperties": {
+ "properties": {
+ "upgradePolicy": {
+ "$ref": "#/definitions/UpgradePolicy",
+ "description": "The upgrade policy."
+ },
+ "automaticRepairsPolicy": {
+ "$ref": "#/definitions/AutomaticRepairsPolicy",
+ "description": "Policy for automatic repairs."
+ },
+ "virtualMachineProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMProfile",
+ "description": "The virtual machine profile."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "overprovision": {
+ "type": "boolean",
+ "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned."
+ },
+ "doNotRunExtensionsOnOverprovisionedVMs": {
+ "type": "boolean",
+ "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs."
+ },
+ "uniqueId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies the ID which uniquely identifies a Virtual Machine Scale Set."
+ },
+ "singlePlacementGroup": {
+ "type": "boolean",
+ "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true."
+ },
+ "zoneBalance": {
+ "type": "boolean",
+ "description": "Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage. zoneBalance property can only be set if the zones property of the scale set contains more than one zone. If there are no zones or only one zone specified, then zoneBalance property should not be set."
+ },
+ "platformFaultDomainCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Fault Domain count for each placement group."
+ },
+ "proximityPlacementGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to. Minimum api-version: 2018-04-01."
+ },
+ "hostGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the dedicated host group that the virtual machine scale set resides in. Minimum api-version: 2020-06-01."
+ },
+ "additionalCapabilities": {
+ "$ref": "./computeRPCommon.json#/definitions/AdditionalCapabilities",
+ "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type."
+ },
+ "scaleInPolicy": {
+ "$ref": "#/definitions/ScaleInPolicy",
+ "description": "Specifies the policies applied when scaling in Virtual Machines in the Virtual Machine Scale Set."
+ },
+ "orchestrationMode": {
+ "$ref": "#/definitions/OrchestrationMode",
+ "description": "Specifies the orchestration mode for the virtual machine scale set."
+ },
+ "spotRestorePolicy": {
+ "$ref": "#/definitions/SpotRestorePolicy",
+ "description": "Specifies the Spot Restore properties for the virtual machine scale set."
+ },
+ "priorityMixPolicy": {
+ "$ref": "#/definitions/PriorityMixPolicy",
+ "description": "Specifies the desired targets for mixing Spot and Regular priority VMs within the same VMSS Flex instance."
+ },
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Specifies the time at which the Virtual Machine Scale Set resource was created. Minimum api-version: 2021-11-01."
+ },
+ "constrainedMaximumCapacity": {
+ "type": "boolean",
+ "description": "Optional property which must either be set to True or omitted."
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine Scale Set."
+ },
+ "VirtualMachineScaleSetUpdateProperties": {
+ "properties": {
+ "upgradePolicy": {
+ "$ref": "#/definitions/UpgradePolicy",
+ "description": "The upgrade policy."
+ },
+ "automaticRepairsPolicy": {
+ "$ref": "#/definitions/AutomaticRepairsPolicy",
+ "description": "Policy for automatic repairs."
+ },
+ "virtualMachineProfile": {
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateVMProfile",
+ "description": "The virtual machine profile."
+ },
+ "overprovision": {
+ "type": "boolean",
+ "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned."
+ },
+ "doNotRunExtensionsOnOverprovisionedVMs": {
+ "type": "boolean",
+ "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs."
+ },
+ "singlePlacementGroup": {
+ "type": "boolean",
+ "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true."
+ },
+ "additionalCapabilities": {
+ "$ref": "./computeRPCommon.json#/definitions/AdditionalCapabilities",
+ "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type."
+ },
+ "scaleInPolicy": {
+ "$ref": "#/definitions/ScaleInPolicy",
+ "description": "Specifies the policies applied when scaling in Virtual Machines in the Virtual Machine Scale Set."
+ },
+ "proximityPlacementGroup": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.
Minimum api-version: 2018-04-01."
+ },
+ "priorityMixPolicy": {
+ "$ref": "#/definitions/PriorityMixPolicy",
+ "description": "Specifies the desired targets for mixing Spot and Regular priority VMs within the same VMSS Flex instance."
+ },
+ "spotRestorePolicy": {
+ "$ref": "#/definitions/SpotRestorePolicy",
+ "description": "Specifies the Spot Restore properties for the virtual machine scale set."
+ }
+ },
+ "description": "Describes the properties of a Virtual Machine Scale Set."
+ },
+ "VirtualMachineScaleSet": {
+ "properties": {
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "The virtual machine scale set sku."
+ },
+ "plan": {
+ "$ref": "./computeRPCommon.json#/definitions/Plan",
+ "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetProperties"
+ },
+ "identity": {
+ "$ref": "#/definitions/VirtualMachineScaleSetIdentity",
+ "description": "The identity of the virtual machine scale set, if configured."
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set"
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location of the Virtual Machine Scale Set."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Describes a Virtual Machine Scale Set."
+ },
+ "VirtualMachineScaleSetVMReimageParameters": {
+ "allOf": [
+ {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineReimageParameters"
+ }
+ ],
+ "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters."
+ },
+ "VirtualMachineScaleSetReimageParameters": {
+ "properties": {
+ "instanceIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters"
+ }
+ ],
+ "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters."
+ },
+ "VirtualMachineScaleSetUpdate": {
+ "properties": {
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "description": "The virtual machine scale set sku."
+ },
+ "plan": {
+ "$ref": "./computeRPCommon.json#/definitions/Plan",
+ "description": "The purchase plan when deploying a virtual machine scale set from VM Marketplace images."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetUpdateProperties"
+ },
+ "identity": {
+ "$ref": "#/definitions/VirtualMachineScaleSetIdentity",
+ "description": "The identity of the virtual machine scale set, if configured."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "./computeRPCommon.json#/definitions/UpdateResource"
+ }
+ ],
+ "description": "Describes a Virtual Machine Scale Set."
+ },
+ "VirtualMachineScaleSetVMInstanceIDs": {
+ "properties": {
+ "instanceIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set."
+ }
+ },
+ "description": "Specifies a list of virtual machine instance IDs from the VM scale set."
+ },
+ "VirtualMachineScaleSetVMInstanceRequiredIDs": {
+ "properties": {
+ "instanceIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine scale set instance ids."
+ }
+ },
+ "required": [
+ "instanceIds"
+ ],
+ "description": "Specifies a list of virtual machine instance IDs from the VM scale set."
+ },
+ "VirtualMachineStatusCodeCount": {
+ "properties": {
+ "code": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The instance view status code."
+ },
+ "count": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances having a particular status code."
+ }
+ },
+ "description": "The status code and count of the virtual machine scale set instance view status summary."
+ },
+ "VirtualMachineScaleSetInstanceViewStatusesSummary": {
+ "properties": {
+ "statusesSummary": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineStatusCodeCount"
+ },
+ "x-ms-identifiers": [],
+ "description": "The extensions information."
+ }
+ },
+ "description": "Instance view statuses summary for virtual machines of a virtual machine scale set."
+ },
+ "VirtualMachineScaleSetVMExtensionsSummary": {
+ "properties": {
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The extension name."
+ },
+ "statusesSummary": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineStatusCodeCount"
+ },
+ "x-ms-identifiers": [],
+ "description": "The extensions information."
+ }
+ },
+ "description": "Extensions summary for virtual machines of a virtual machine scale set."
+ },
+ "OrchestrationServiceSummary": {
+ "properties": {
+ "serviceName": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the service.",
+ "enum": [
+ "AutomaticRepairs"
+ ],
+ "x-ms-enum": {
+ "name": "OrchestrationServiceNames",
+ "modelAsString": true
+ }
+ },
+ "serviceState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current state of the service.",
+ "enum": [
+ "NotRunning",
+ "Running",
+ "Suspended"
+ ],
+ "x-ms-enum": {
+ "name": "OrchestrationServiceState",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Summary for an orchestration service of a virtual machine scale set."
+ },
+ "VirtualMachineScaleSetInstanceView": {
+ "properties": {
+ "virtualMachine": {
+ "$ref": "#/definitions/VirtualMachineScaleSetInstanceViewStatusesSummary",
+ "readOnly": true,
+ "description": "The instance view status summary for the virtual machine scale set."
+ },
+ "extensions": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionsSummary"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The extensions information."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ },
+ "orchestrationServices": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OrchestrationServiceSummary"
+ },
+ "x-ms-identifiers": [
+ "serviceName"
+ ],
+ "description": "The orchestration services information."
+ }
+ },
+ "description": "The instance view of a virtual machine scale set."
+ },
+ "VirtualMachineScaleSetListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ },
+ "description": "The list of virtual machine scale sets."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of VMSS."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Virtual Machine operation response."
+ },
+ "VirtualMachineScaleSetListWithLinkResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSet"
+ },
+ "description": "The list of virtual machine scale sets."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of Virtual Machine Scale Sets."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Virtual Machine operation response."
+ },
+ "VirtualMachineScaleSetSkuCapacity": {
+ "properties": {
+ "minimum": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int64",
+ "description": "The minimum capacity."
+ },
+ "maximum": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int64",
+ "description": "The maximum capacity that can be set."
+ },
+ "defaultCapacity": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int64",
+ "description": "The default capacity."
+ },
+ "scaleType": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The scale type applicable to the sku.",
+ "enum": [
+ "Automatic",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "VirtualMachineScaleSetSkuScaleType",
+ "modelAsString": false
+ }
+ }
+ },
+ "description": "Describes scaling information of a sku."
+ },
+ "VirtualMachineScaleSetSku": {
+ "properties": {
+ "resourceType": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of resource the sku applies to."
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "readOnly": true,
+ "description": "The Sku."
+ },
+ "capacity": {
+ "$ref": "#/definitions/VirtualMachineScaleSetSkuCapacity",
+ "readOnly": true,
+ "description": "Specifies the number of virtual machines in the scale set."
+ }
+ },
+ "description": "Describes an available virtual machine scale set sku."
+ },
+ "VirtualMachineScaleSetListSkusResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetSku"
+ },
+ "x-ms-identifiers": [
+ "resourceType",
+ "sku/name"
+ ],
+ "description": "The list of skus available for the virtual machine scale set."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of Virtual Machine Scale Set Skus. Call ListNext() with this to fetch the next page of VMSS Skus."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The Virtual Machine Scale Set List Skus operation response."
+ },
+ "UpgradeOperationHistoryStatus": {
+ "properties": {
+ "code": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Code indicating the current status of the upgrade.",
+ "enum": [
+ "RollingForward",
+ "Cancelled",
+ "Completed",
+ "Faulted"
+ ],
+ "x-ms-enum": {
+ "name": "UpgradeState",
+ "modelAsString": false
+ }
+ },
+ "startTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Start time of the upgrade."
+ },
+ "endTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "End time of the upgrade."
+ }
+ },
+ "description": "Information about the current running state of the overall upgrade."
+ },
+ "UpgradeOperationHistoricalStatusInfoProperties": {
+ "properties": {
+ "runningStatus": {
+ "$ref": "#/definitions/UpgradeOperationHistoryStatus",
+ "readOnly": true,
+ "description": "Information about the overall status of the upgrade operation."
+ },
+ "progress": {
+ "$ref": "#/definitions/RollingUpgradeProgressInfo",
+ "readOnly": true,
+ "description": "Counts of the VMs in each state."
+ },
+ "error": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "readOnly": true,
+ "description": "Error Details for this upgrade if there are any."
+ },
+ "startedBy": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Invoker of the Upgrade Operation",
+ "enum": [
+ "Unknown",
+ "User",
+ "Platform"
+ ],
+ "x-ms-enum": {
+ "name": "UpgradeOperationInvoker",
+ "modelAsString": false
+ }
+ },
+ "targetImageReference": {
+ "$ref": "./computeRPCommon.json#/definitions/ImageReference",
+ "readOnly": true,
+ "description": "Image Reference details"
+ },
+ "rollbackInfo": {
+ "$ref": "./computeRPCommon.json#/definitions/RollbackStatusInfo",
+ "readOnly": true,
+ "description": "Information about OS rollback if performed"
+ }
+ },
+ "description": "Describes each OS upgrade on the Virtual Machine Scale Set."
+ },
+ "UpgradeOperationHistoricalStatusInfo": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfoProperties",
+ "readOnly": true,
+ "description": "Information about the properties of the upgrade operation."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource location"
+ }
+ },
+ "description": "Virtual Machine Scale Set OS Upgrade History operation response."
+ },
+ "VirtualMachineScaleSetListOSUpgradeHistory": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfo"
+ },
+ "x-ms-identifiers": [
+ "type",
+ "location"
+ ],
+ "description": "The list of OS upgrades performed on the virtual machine scale set."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of OS Upgrade History. Call ListNext() with this to fetch the next page of history of upgrades."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "List of Virtual Machine Scale Set OS Upgrade History operation response."
+ },
+ "VirtualMachineScaleSetVMProperties": {
+ "properties": {
+ "latestModelApplied": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Specifies whether the latest model has been applied to the virtual machine."
+ },
+ "vmId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Azure VM unique ID."
+ },
+ "instanceView": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView",
+ "readOnly": true,
+ "description": "The virtual machine instance view."
+ },
+ "hardwareProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/HardwareProfile",
+ "description": "Specifies the hardware settings for the virtual machine."
+ },
+ "storageProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/StorageProfile",
+ "description": "Specifies the storage settings for the virtual machine disks."
+ },
+ "additionalCapabilities": {
+ "$ref": "./computeRPCommon.json#/definitions/AdditionalCapabilities",
+ "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type."
+ },
+ "osProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/OSProfile",
+ "description": "Specifies the operating system settings for the virtual machine."
+ },
+ "securityProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/SecurityProfile",
+ "description": "Specifies the Security related profile settings for the virtual machine."
+ },
+ "networkProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/NetworkProfile",
+ "description": "Specifies the network interfaces of the virtual machine."
+ },
+ "networkProfileConfiguration": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMNetworkProfileConfiguration",
+ "description": "Specifies the network profile configuration of the virtual machine."
+ },
+ "diagnosticsProfile": {
+ "$ref": "./computeRPCommon.json#/definitions/DiagnosticsProfile",
+ "description": "Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15."
+ },
+ "availabilitySet": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview). For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates). Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "licenseType": {
+ "type": "string",
+ "description": "Specifies that the image or disk that is being used was licensed on-premises.
Possible values for Windows Server operating system are:
Windows_Client
Windows_Server
Possible values for Linux Server operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS (for SUSE)
For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)
[Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
Minimum api-version: 2015-06-15"
+ },
+ "modelDefinitionApplied": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies whether the model applied to the virtual machine is the model of the virtual machine scale set or the customized model for the virtual machine."
+ },
+ "protectionPolicy": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVMProtectionPolicy",
+ "description": "Specifies the protection policy of the virtual machine."
+ },
+ "userData": {
+ "type": "string",
+ "description": "UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here.
Minimum api-version: 2021-03-01"
+ },
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Specifies the time at which the Virtual Machine resource was created.
Minimum api-version: 2021-11-01."
+ }
+ },
+ "description": "Describes the properties of a virtual machine scale set virtual machine."
+ },
+ "VirtualMachineScaleSetVM": {
+ "properties": {
+ "instanceId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The virtual machine instance ID."
+ },
+ "sku": {
+ "$ref": "./computeRPCommon.json#/definitions/Sku",
+ "readOnly": true,
+ "description": "The virtual machine SKU."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/VirtualMachineScaleSetVMProperties"
+ },
+ "plan": {
+ "$ref": "./computeRPCommon.json#/definitions/Plan",
+ "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**."
+ },
+ "resources": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineExtension"
+ },
+ "description": "The virtual machine child extension resources."
+ },
+ "zones": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The virtual machine zones."
+ },
+ "identity": {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineIdentity",
+ "description": "The identity of the virtual machine, if configured."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Describes a virtual machine scale set virtual machine."
+ },
+ "VirtualMachineScaleSetVMInstanceView": {
+ "properties": {
+ "platformUpdateDomain": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Update Domain count."
+ },
+ "platformFaultDomain": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Fault Domain count."
+ },
+ "rdpThumbPrint": {
+ "type": "string",
+ "description": "The Remote desktop certificate thumbprint."
+ },
+ "vmAgent": {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineAgentInstanceView",
+ "description": "The VM Agent running on the virtual machine."
+ },
+ "maintenanceRedeployStatus": {
+ "$ref": "./computeRPCommon.json#/definitions/MaintenanceRedeployStatus",
+ "description": "The Maintenance Operation status on the virtual machine."
+ },
+ "disks": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/DiskInstanceView"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The disks information."
+ },
+ "extensions": {
+ "type": "array",
+ "items": {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineExtensionInstanceView"
+ },
+ "x-ms-identifiers": [
+ "name",
+ "type"
+ ],
+ "description": "The extensions information."
+ },
+ "vmHealth": {
+ "readOnly": true,
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineHealthStatus",
+ "description": "The health status for the VM."
+ },
+ "bootDiagnostics": {
+ "$ref": "./computeRPCommon.json#/definitions/BootDiagnosticsInstanceView",
+ "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor."
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "./computeRPCommon.json#/definitions/InstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "description": "The resource status information."
+ },
+ "assignedHost": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Resource id of the dedicated host, on which the virtual machine is allocated through automatic placement, when the virtual machine is associated with a dedicated host group that has automatic placement enabled. Minimum api-version: 2020-06-01."
+ },
+ "placementGroupId": {
+ "type": "string",
+ "description": "The placement group in which the VM is running. If the VM is deallocated it will not have a placementGroupId."
+ },
+ "computerName": {
+ "type": "string",
+ "description": "Specifies the host OS name of the virtual machine.
This name cannot be updated after the VM is created.
**Max-length (Windows):** 15 characters
**Max-length (Linux):** 64 characters.
For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions)."
+ },
+ "osName": {
+ "type": "string",
+ "description": "The Operating System running on the hybrid machine."
+ },
+ "osVersion": {
+ "type": "string",
+ "description": "The version of Operating System running on the hybrid machine."
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine [V1, V2]",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "The instance view of a virtual machine scale set VM."
+ },
+ "VirtualMachineScaleSetVMNetworkProfileConfiguration": {
+ "properties": {
+ "networkInterfaceConfigurations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The list of network configurations."
+ }
+ },
+ "description": "Describes a virtual machine scale set VM network profile."
+ },
+ "VirtualMachineScaleSetVMProtectionPolicy": {
+ "properties": {
+ "protectFromScaleIn": {
+ "type": "boolean",
+ "description": "Indicates that the virtual machine scale set VM shouldn't be considered for deletion during a scale-in operation."
+ },
+ "protectFromScaleSetActions": {
+ "type": "boolean",
+ "description": "Indicates that model updates or actions (including scale-in) initiated on the virtual machine scale set should not be applied to the virtual machine scale set VM."
+ }
+ },
+ "description": "The protection policy of a virtual machine scale set VM."
+ },
+ "VirtualMachineScaleSetVMListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineScaleSetVM"
+ },
+ "description": "The list of virtual machine scale sets VMs."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of Virtual Machine Scale Set VMs. Call ListNext() with this to fetch the next page of VMSS VMs"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Virtual Machine Scale Set VMs operation response."
+ },
+ "RollingUpgradeStatusInfo": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/RollingUpgradeStatusInfoProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "The status of the latest virtual machine scale set rolling upgrade."
+ },
+ "RollingUpgradeStatusInfoProperties": {
+ "properties": {
+ "policy": {
+ "readOnly": true,
+ "$ref": "#/definitions/RollingUpgradePolicy",
+ "description": "The rolling upgrade policies applied for this upgrade."
+ },
+ "runningStatus": {
+ "readOnly": true,
+ "$ref": "#/definitions/RollingUpgradeRunningStatus",
+ "description": "Information about the current running state of the overall upgrade."
+ },
+ "progress": {
+ "readOnly": true,
+ "$ref": "#/definitions/RollingUpgradeProgressInfo",
+ "description": "Information about the number of virtual machine instances in each upgrade state."
+ },
+ "error": {
+ "readOnly": true,
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "description": "Error details for this upgrade, if there are any."
+ }
+ },
+ "description": "The status of the latest virtual machine scale set rolling upgrade."
+ },
+ "RollingUpgradeRunningStatus": {
+ "properties": {
+ "code": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Code indicating the current status of the upgrade.",
+ "enum": [
+ "RollingForward",
+ "Cancelled",
+ "Completed",
+ "Faulted"
+ ],
+ "x-ms-enum": {
+ "name": "RollingUpgradeStatusCode",
+ "modelAsString": false
+ }
+ },
+ "startTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Start time of the upgrade."
+ },
+ "lastAction": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The last action performed on the rolling upgrade.",
+ "enum": [
+ "Start",
+ "Cancel"
+ ],
+ "x-ms-enum": {
+ "name": "RollingUpgradeActionType",
+ "modelAsString": false
+ }
+ },
+ "lastActionTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "Last action time of the upgrade."
+ }
+ },
+ "description": "Information about the current running state of the overall upgrade."
+ },
+ "RollingUpgradeProgressInfo": {
+ "properties": {
+ "successfulInstanceCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances that have been successfully upgraded."
+ },
+ "failedInstanceCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances that have failed to be upgraded successfully."
+ },
+ "inProgressInstanceCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances that are currently being upgraded."
+ },
+ "pendingInstanceCount": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of instances that have not yet begun to be upgraded."
+ }
+ },
+ "description": "Information about the number of virtual machine instances in each upgrade state."
+ },
+ "RecoveryWalkResponse": {
+ "properties": {
+ "walkPerformed": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "Whether the recovery walk was performed"
+ },
+ "nextPlatformUpdateDomain": {
+ "type": "integer",
+ "readOnly": true,
+ "description": "The next update domain that needs to be walked. Null means walk spanning all update domains has been completed"
+ }
+ },
+ "description": "Response after calling a manual recovery walk"
+ },
+ "VMScaleSetConvertToSinglePlacementGroupInput": {
+ "properties": {
+ "activePlacementGroupId": {
+ "type": "string",
+ "description": "Id of the placement group in which you want future virtual machine instances to be placed. To query placement group Id, please use Virtual Machine Scale Set VMs - Get API. If not provided, the platform will choose one with maximum number of virtual machine instances."
+ }
+ }
+ },
+ "OrchestrationServiceStateInput": {
+ "properties": {
+ "serviceName": {
+ "type": "string",
+ "description": "The name of the service.",
+ "enum": [
+ "AutomaticRepairs"
+ ],
+ "x-ms-enum": {
+ "name": "OrchestrationServiceNames",
+ "modelAsString": true
+ }
+ },
+ "action": {
+ "type": "string",
+ "description": "The action to be performed.",
+ "enum": [
+ "Resume",
+ "Suspend"
+ ],
+ "x-ms-enum": {
+ "name": "OrchestrationServiceStateAction",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "The input for OrchestrationServiceState",
+ "required": [
+ "serviceName",
+ "action"
+ ]
+ },
+ "ServiceArtifactReference": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The service artifact reference id in the form of /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName}"
+ }
+ },
+ "description": "Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version. Minimum api-version: 2022-11-01"
+ },
+ "SecurityPostureReference": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The security posture reference id in the form of /CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest"
+ },
+ "excludeExtensions": {
+ "type": "array",
+ "items": {
+ "$ref": "./virtualMachine.json#/definitions/VirtualMachineExtension"
+ },
+ "description": "List of virtual machine extensions to exclude when applying the Security Posture."
+ }
+ },
+ "description": "Specifies the security posture to be used for all virtual machines in the scale set. Minimum api-version: 2023-03-01"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/disk.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/disk.json
new file mode 100644
index 000000000000..5dd4289a1bc3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/disk.json
@@ -0,0 +1,911 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "DiskResourceProviderClient",
+ "description": "The Disk Resource Provider Client.",
+ "version": "2023-04-02"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}": {
+ "put": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_CreateOrUpdate",
+ "description": "Creates or updates a disk.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "disk",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Disk"
+ },
+ "description": "Disk object supplied in the body of the Put disk operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Disk"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an empty managed disk.": {
+ "$ref": "./examples/diskExamples/Disk_Create_Empty.json"
+ },
+ "Create a managed disk from a platform image.": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromAPlatformImage.json"
+ },
+ "Create a managed disk from an existing managed disk in the same or different subscription.": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json"
+ },
+ "Create a managed disk by importing an unmanaged blob from the same subscription.": {
+ "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json"
+ },
+ "Create a managed disk by importing an unmanaged blob from a different subscription.": {
+ "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json"
+ },
+ "Create a managed disk by copying a snapshot.": {
+ "$ref": "./examples/diskExamples/Disk_Create_ByCopyingASnapshot.json"
+ },
+ "Create a managed upload disk.": {
+ "$ref": "./examples/diskExamples/Disk_Create_UploadDisk.json"
+ },
+ "Create a managed disk and associate with disk access resource.": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithDiskAccess.json"
+ },
+ "Create a managed disk with dataAccessAuthMode": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json"
+ },
+ "Create a managed disk and associate with disk encryption set.": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json"
+ },
+ "Create an ultra managed disk with logicalSectorSize 512E": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithLogicalSectorSize.json"
+ },
+ "Create an empty managed disk in extended location.": {
+ "$ref": "./examples/diskExamples/Disk_Create_InExtendedLocation.json"
+ },
+ "Create a managed disk with ssd zrs account type.": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json"
+ },
+ "Create a managed disk with premium v2 account type.": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json"
+ },
+ "Create a managed disk with security profile": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithSecurityProfile.json"
+ },
+ "Create a managed disk from ImportSecure create option": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromImportSecure.json"
+ },
+ "Create a managed disk from UploadPreparedSecure create option": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json"
+ },
+ "Create a confidential VM supported disk encrypted with customer managed key": {
+ "$ref": "./examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json"
+ },
+ "Create a managed disk from an Azure Compute Gallery image.": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json"
+ },
+ "Create a managed disk from an Azure Compute Gallery direct shared image.": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json"
+ },
+ "Create a managed disk from an Azure Compute Gallery community image.": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json"
+ },
+ "Create a managed disk with optimizedForFrequentAttach.": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithOptimizedForFrequentAttach.json"
+ },
+ "Create a managed disk with performancePlus.": {
+ "$ref": "./examples/diskExamples/Disk_Create_PerformancePlus.json"
+ },
+ "Create a managed disk with ultra account type with readOnly property set.": {
+ "$ref": "./examples/diskExamples/Disk_Create_WithUltraSSD_ReadOnly.json"
+ },
+ "Create a managed disk from elastic san volume snapshot.": {
+ "$ref": "./examples/diskExamples/Disk_Create_FromAnElasticSanVolumeSnapshot.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_Update",
+ "description": "Updates (patches) a disk.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "disk",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DiskUpdate"
+ },
+ "description": "Disk object supplied in the body of the Patch disk operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Disk"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update managed disk to remove disk access resource association.": {
+ "$ref": "./examples/diskExamples/Disk_Update_RemoveDiskAccess.json"
+ },
+ "Update a managed disk to add purchase plan.": {
+ "$ref": "./examples/diskExamples/Disk_Update_AddPurchasePlan.json"
+ },
+ "Update a managed disk to disable bursting.": {
+ "$ref": "./examples/diskExamples/Disk_Update_DisableBursting.json"
+ },
+ "Create or update a bursting enabled managed disk.": {
+ "$ref": "./examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json"
+ },
+ "Update a managed disk to add supportsHibernation.": {
+ "$ref": "./examples/diskExamples/Disk_Update_AddSupportsHibernation.json"
+ },
+ "Update a managed disk to add accelerated networking.": {
+ "$ref": "./examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json"
+ },
+ "Update a managed disk to change tier.": {
+ "$ref": "./examples/diskExamples/Disk_Update_ChangeTier.json"
+ },
+ "Update a managed disk to add architecture.": {
+ "$ref": "./examples/diskExamples//Disk_Update_ToAddArchitecture.json"
+ },
+ "Update a managed disk to disable optimizedForFrequentAttach.": {
+ "$ref": "./examples/diskExamples//Disk_Update_DisableOptimizedForFrequentAttach.json"
+ },
+ "Update a managed disk with diskControllerTypes.": {
+ "$ref": "./examples/diskExamples//Disk_Update_AddDiskControllerTypes.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_Get",
+ "description": "Gets information about a disk.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a managed disk.": {
+ "$ref": "./examples/diskExamples/Disk_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_Delete",
+ "description": "Deletes a disk.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "If the disk is deleted, this is an expected error code."
+ }
+ },
+ "x-ms-examples": {
+ "Delete a managed disk.": {
+ "$ref": "./examples/diskExamples/Disk_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": {
+ "get": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_ListByResourceGroup",
+ "description": "Lists all the disks under a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskList"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all managed disks in a resource group.": {
+ "$ref": "./examples/diskExamples/Disk_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": {
+ "get": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_List",
+ "description": "Lists all the disks under a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskList"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all managed disks in a subscription.": {
+ "$ref": "./examples/diskExamples/Disk_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": {
+ "post": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_GrantAccess",
+ "description": "Grants access to a disk.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "grantAccessData",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "./diskRPCommon.json#/definitions/GrantAccessData"
+ },
+ "description": "Access data object supplied in the body of the get disk access operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./diskRPCommon.json#/definitions/AccessUri"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-examples": {
+ "Get a sas on a managed disk.": {
+ "$ref": "./examples/diskExamples/Disk_BeginGetAccess.json"
+ },
+ "Get sas on managed disk and VM guest state": {
+ "$ref": "./examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": {
+ "post": {
+ "tags": [
+ "Disks"
+ ],
+ "operationId": "Disks_RevokeAccess",
+ "description": "Revokes access to a disk.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-examples": {
+ "Revoke access to a managed disk.": {
+ "$ref": "./examples/diskExamples/Disk_EndGetAccess.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Disk": {
+ "properties": {
+ "managedBy": {
+ "readOnly": true,
+ "type": "string",
+ "description": "A relative URI containing the ID of the VM that has the disk attached."
+ },
+ "managedByExtended": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of relative URIs containing the IDs of the VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs."
+ },
+ "sku": {
+ "$ref": "#/definitions/DiskSku"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Logical zone list for Disk."
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location where the disk will be created. Extended location cannot be changed."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DiskProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Disk resource."
+ },
+ "DiskUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DiskUpdateProperties"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ },
+ "sku": {
+ "$ref": "#/definitions/DiskSku"
+ }
+ },
+ "description": "Disk update resource."
+ },
+ "DiskList": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Disk"
+ },
+ "description": "A list of disks."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Disks operation response."
+ },
+ "DiskSku": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "enum": [
+ "Standard_LRS",
+ "Premium_LRS",
+ "StandardSSD_LRS",
+ "UltraSSD_LRS",
+ "Premium_ZRS",
+ "StandardSSD_ZRS",
+ "PremiumV2_LRS"
+ ],
+ "x-ms-enum": {
+ "name": "DiskStorageAccountTypes",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Standard_LRS",
+ "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access."
+ },
+ {
+ "value": "Premium_LRS",
+ "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads."
+ },
+ {
+ "value": "StandardSSD_LRS",
+ "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test."
+ },
+ {
+ "value": "UltraSSD_LRS",
+ "description": "Ultra SSD locally redundant storage. Best for IO-intensive workloads such as SAP HANA, top tier databases (for example, SQL, Oracle), and other transaction-heavy workloads."
+ },
+ {
+ "value": "Premium_ZRS",
+ "description": "Premium SSD zone redundant storage. Best for the production workloads that need storage resiliency against zone failures."
+ },
+ {
+ "value": "StandardSSD_ZRS",
+ "description": "Standard SSD zone redundant storage. Best for web servers, lightly used enterprise applications and dev/test that need storage resiliency against zone failures."
+ },
+ {
+ "value": "PremiumV2_LRS",
+ "description": "Premium SSD v2 locally redundant storage. Best for production and performance-sensitive workloads that consistently require low latency and high IOPS and throughput."
+ }
+ ]
+ },
+ "description": "The sku name."
+ },
+ "tier": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The sku tier."
+ }
+ },
+ "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, StandardSSD_ZRS, or PremiumV2_LRS."
+ },
+ "DiskProperties": {
+ "properties": {
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The time when the disk was created."
+ },
+ "osType": {
+ "type": "string",
+ "description": "The Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ },
+ "purchasePlan": {
+ "$ref": "./diskRPCommon.json#/definitions/PurchasePlan",
+ "description": "Purchase plan information for the the image from which the OS disk was created. E.g. - {name: 2019-Datacenter, publisher: MicrosoftWindowsServer, product: WindowsServer}"
+ },
+ "supportedCapabilities": {
+ "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities",
+ "description": "List of supported capabilities for the image from which the OS disk was created."
+ },
+ "creationData": {
+ "$ref": "./diskRPCommon.json#/definitions/CreationData",
+ "description": "Disk source information. CreationData information cannot be changed after the disk has been created."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size."
+ },
+ "diskSizeBytes": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "The size of the disk in bytes. This field is read only."
+ },
+ "uniqueId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Unique Guid identifying the resource."
+ },
+ "encryptionSettingsCollection": {
+ "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection",
+ "description": "Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The disk provisioning state."
+ },
+ "diskIOPSReadWrite": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes."
+ },
+ "diskMBpsReadWrite": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10."
+ },
+ "diskIOPSReadOnly": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes."
+ },
+ "diskMBpsReadOnly": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10."
+ },
+ "diskState": {
+ "$ref": "./diskRPCommon.json#/definitions/DiskState",
+ "description": "The state of the disk."
+ },
+ "encryption": {
+ "$ref": "./diskRPCommon.json#/definitions/Encryption",
+ "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys."
+ },
+ "maxShares": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time."
+ },
+ "shareInfo": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ShareInfoElement"
+ },
+ "x-ms-identifiers": [
+ "vmUri"
+ ],
+ "description": "Details of the list of all VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs."
+ },
+ "networkAccessPolicy": {
+ "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy"
+ },
+ "diskAccessId": {
+ "type": "string",
+ "description": "ARM id of the DiskAccess resource for using private endpoints on disks."
+ },
+ "burstingEnabledTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "Latest time when bursting was last enabled on a disk."
+ },
+ "tier": {
+ "type": "string",
+ "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks."
+ },
+ "burstingEnabled": {
+ "type": "boolean",
+ "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks."
+ },
+ "propertyUpdatesInProgress": {
+ "readOnly": true,
+ "$ref": "#/definitions/PropertyUpdatesInProgress",
+ "description": "Properties of the disk for which update is pending."
+ },
+ "supportsHibernation": {
+ "type": "boolean",
+ "description": "Indicates the OS on a disk supports hibernation."
+ },
+ "securityProfile": {
+ "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile",
+ "description": "Contains the security related information for the resource."
+ },
+ "completionPercent": {
+ "type": "number",
+ "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation."
+ },
+ "publicNetworkAccess": {
+ "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess"
+ },
+ "dataAccessAuthMode": {
+ "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode"
+ },
+ "optimizedForFrequentAttach": {
+ "type": "boolean",
+ "description": "Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another. This property should not be set for disks that are not detached and attached frequently as it causes the disks to not align with the fault domain of the virtual machine."
+ },
+ "LastOwnershipUpdateTime": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The UTC time when the ownership state of the disk was last changed i.e., the time the disk was last attached or detached from a VM or the time when the VM to which the disk was attached was deallocated or started."
+ }
+ },
+ "required": [
+ "creationData"
+ ],
+ "description": "Disk resource properties."
+ },
+ "DiskUpdateProperties": {
+ "properties": {
+ "osType": {
+ "type": "string",
+ "description": "the Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size."
+ },
+ "encryptionSettingsCollection": {
+ "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection",
+ "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot."
+ },
+ "diskIOPSReadWrite": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes."
+ },
+ "diskMBpsReadWrite": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10."
+ },
+ "diskIOPSReadOnly": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes."
+ },
+ "diskMBpsReadOnly": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10."
+ },
+ "maxShares": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time."
+ },
+ "encryption": {
+ "$ref": "./diskRPCommon.json#/definitions/Encryption",
+ "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys."
+ },
+ "networkAccessPolicy": {
+ "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy"
+ },
+ "diskAccessId": {
+ "type": "string",
+ "description": "ARM id of the DiskAccess resource for using private endpoints on disks."
+ },
+ "tier": {
+ "type": "string",
+ "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks."
+ },
+ "burstingEnabled": {
+ "type": "boolean",
+ "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks."
+ },
+ "purchasePlan": {
+ "$ref": "./diskRPCommon.json#/definitions/PurchasePlan",
+ "description": "Purchase plan information to be added on the OS disk"
+ },
+ "supportedCapabilities": {
+ "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities",
+ "description": "List of supported capabilities to be added on the OS disk."
+ },
+ "propertyUpdatesInProgress": {
+ "readOnly": true,
+ "$ref": "#/definitions/PropertyUpdatesInProgress",
+ "description": "Properties of the disk for which update is pending."
+ },
+ "supportsHibernation": {
+ "type": "boolean",
+ "description": "Indicates the OS on a disk supports hibernation."
+ },
+ "publicNetworkAccess": {
+ "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess"
+ },
+ "dataAccessAuthMode": {
+ "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode"
+ },
+ "optimizedForFrequentAttach": {
+ "type": "boolean",
+ "description": "Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another. This property should not be set for disks that are not detached and attached frequently as it causes the disks to not align with the fault domain of the virtual machine."
+ }
+ },
+ "description": "Disk resource update properties."
+ },
+ "ShareInfoElement": {
+ "properties": {
+ "vmUri": {
+ "readOnly": true,
+ "type": "string",
+ "description": "A relative URI containing the ID of the VM that has the disk attached."
+ }
+ }
+ },
+ "PropertyUpdatesInProgress": {
+ "properties": {
+ "targetTier": {
+ "type": "string",
+ "description": "The target performance tier of the disk if a tier change operation is in progress."
+ }
+ },
+ "description": "Properties of the disk for which update is pending."
+ }
+ },
+ "parameters": {
+ "DiskNameParameter": {
+ "name": "diskName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskAccess.json
new file mode 100644
index 000000000000..1236302c33ae
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskAccess.json
@@ -0,0 +1,824 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "DiskResourceProviderClient",
+ "description": "The Disk Resource Provider Client.",
+ "version": "2023-04-02"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}": {
+ "put": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_CreateOrUpdate",
+ "description": "Creates or updates a disk access resource",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "diskAccess",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DiskAccess"
+ },
+ "description": "disk access object supplied in the body of the Put disk access operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskAccess"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/DiskAccess"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_Update",
+ "description": "Updates (patches) a disk access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "diskAccess",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DiskAccessUpdate"
+ },
+ "description": "disk access object supplied in the body of the Patch disk access operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskAccess"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/DiskAccess"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_Update.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "get": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_Get",
+ "description": "Gets information about a disk access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskAccess"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_Get.json"
+ },
+ "Get information about a disk access resource with private endpoints.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_Delete",
+ "description": "Deletes a disk access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "If the disk access resource is already deleted, this is an expected error code."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses": {
+ "get": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_ListByResourceGroup",
+ "description": "Lists all the disk access resources under a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskAccessList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all disk access resources in a resource group.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses": {
+ "get": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_List",
+ "description": "Lists all the disk access resources under a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskAccessList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all disk access resources in a subscription.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccess_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_GetPrivateLinkResources",
+ "description": "Gets the private link resources possible under disk access resource",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all possible private link resources under disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "put": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_UpdateAPrivateEndpointConnection",
+ "description": "Approve or reject a private endpoint connection under disk access resource, this can't be used to create a new private endpoint connection.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "privateEndpointConnection",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "private endpoint connection object supplied in the body of the Put private endpoint connection operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Approve a Private Endpoint Connection under a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "get": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_GetAPrivateEndpointConnection",
+ "description": "Gets information about a private endpoint connection under a disk access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a private endpoint connection under a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_DeleteAPrivateEndpointConnection",
+ "description": "Deletes a private endpoint connection under a disk access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "If the private endpoint connection is already deleted, this is an expected error code."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a private endpoint connection under a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "DiskAccesses"
+ ],
+ "operationId": "DiskAccesses_ListPrivateEndpointConnections",
+ "description": "List information about private endpoint connections under a disk access resource",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskAccessNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a private endpoint connection under a disk access resource.": {
+ "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DiskAccessProperties": {
+ "properties": {
+ "privateEndpointConnections": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "A readonly collection of private endpoint connections created on the disk. Currently only one endpoint connection is supported."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The disk access resource provisioning state."
+ },
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The time when the disk access was created."
+ }
+ }
+ },
+ "DiskAccess": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DiskAccessProperties"
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location where the disk access will be created. Extended location cannot be changed."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "disk access resource."
+ },
+ "DiskAccessList": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiskAccess"
+ },
+ "description": "A list of disk access resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of disk access resources. Call ListNext() with this to fetch the next page of disk access resources."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List disk access operation response."
+ },
+ "DiskAccessUpdate": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ }
+ },
+ "description": "Used for updating a disk access resource."
+ },
+ "PrivateLinkResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Array of private link resources",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ }
+ },
+ "description": "A list of private link resources"
+ },
+ "PrivateLinkResource": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "Resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "private link resource Id"
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "private link resource name"
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "private link resource type"
+ }
+ },
+ "description": "A private link resource"
+ },
+ "PrivateLinkResourceProperties": {
+ "properties": {
+ "groupId": {
+ "description": "The private link resource group id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "requiredMembers": {
+ "description": "The private link resource required member names.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "requiredZoneNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The private link resource DNS zone name."
+ }
+ },
+ "description": "Properties of a private link resource."
+ },
+ "PrivateEndpoint": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ARM identifier for Private Endpoint"
+ }
+ },
+ "description": "The Private Endpoint resource."
+ },
+ "PrivateEndpointServiceConnectionStatus": {
+ "type": "string",
+ "description": "The private endpoint connection status.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointServiceConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "PrivateEndpointConnectionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Creating",
+ "Deleting",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus",
+ "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service."
+ },
+ "description": {
+ "type": "string",
+ "description": "The reason for approval/rejection of the connection."
+ },
+ "actionsRequired": {
+ "type": "string",
+ "description": "A message indicating if changes on the service provider require any updates on the consumer."
+ }
+ },
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ },
+ "PrivateEndpointConnectionProperties": {
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The resource of private end point.",
+ "readOnly": true
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between DiskAccess and Virtual Network."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState",
+ "description": "The provisioning state of the private endpoint connection resource."
+ }
+ },
+ "required": [
+ "privateLinkServiceConnectionState"
+ ],
+ "description": "Properties of the PrivateEndpointConnectProperties."
+ },
+ "PrivateEndpointConnection": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Resource properties."
+ },
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "private endpoint connection Id"
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "private endpoint connection name"
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "private endpoint connection type"
+ }
+ },
+ "description": "The Private Endpoint Connection resource.",
+ "x-ms-azure-resource": true
+ },
+ "PrivateEndpointConnectionListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Array of private endpoint connections",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots."
+ }
+ },
+ "description": "A list of private link resources"
+ }
+ },
+ "parameters": {
+ "DiskAccessNameParameter": {
+ "name": "diskAccessName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "x-ms-parameter-location": "method"
+ },
+ "PrivateEndpointConnectionNameParameter": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskEncryptionSet.json
new file mode 100644
index 000000000000..cc6ee6dd3fb3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskEncryptionSet.json
@@ -0,0 +1,604 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "DiskResourceProviderClient",
+ "description": "The Disk Resource Provider Client.",
+ "version": "2023-04-02"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}": {
+ "put": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_CreateOrUpdate",
+ "description": "Creates or updates a disk encryption set",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskEncryptionSetNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "diskEncryptionSet",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ },
+ "description": "disk encryption set object supplied in the body of the Put disk encryption set operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a disk encryption set.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json"
+ },
+ "Create a disk encryption set with key vault from a different subscription.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json"
+ },
+ "Create a disk encryption set with key vault from a different tenant.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_Update",
+ "description": "Updates (patches) a disk encryption set.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskEncryptionSetNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "diskEncryptionSet",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSetUpdate"
+ },
+ "description": "disk encryption set object supplied in the body of the Patch disk encryption set operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a disk encryption set.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json"
+ },
+ "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Succeeded": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json"
+ },
+ "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Updating": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "get": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_Get",
+ "description": "Gets information about a disk encryption set.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskEncryptionSetNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a disk encryption set.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json"
+ },
+ "Get information about a disk encryption set when auto-key rotation failed.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_Delete",
+ "description": "Deletes a disk encryption set.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskEncryptionSetNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "If the disk encryption set is already deleted, this is an expected error code."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a disk encryption set.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets": {
+ "get": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_ListByResourceGroup",
+ "description": "Lists all the disk encryption sets under a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSetList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all disk encryption sets in a resource group.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets": {
+ "get": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_List",
+ "description": "Lists all the disk encryption sets under a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskEncryptionSetList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all disk encryption sets in a subscription.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources": {
+ "get": {
+ "tags": [
+ "DiskEncryptionSets"
+ ],
+ "operationId": "DiskEncryptionSets_ListAssociatedResources",
+ "description": "Lists all resources that are encrypted with this disk encryption set.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskEncryptionSetNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ResourceUriList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all resources that are encrypted with this disk encryption set.": {
+ "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "EncryptionSetProperties": {
+ "properties": {
+ "encryptionType": {
+ "$ref": "#/definitions/DiskEncryptionSetType"
+ },
+ "activeKey": {
+ "$ref": "#/definitions/KeyForDiskEncryptionSet",
+ "description": "The key vault key which is currently used by this disk encryption set."
+ },
+ "previousKeys": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/KeyForDiskEncryptionSet"
+ },
+ "x-ms-identifiers": [
+ "sourceVault/id"
+ ],
+ "description": "A readonly collection of key vault keys previously used by this disk encryption set while a key rotation is in progress. It will be empty if there is no ongoing key rotation."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The disk encryption set provisioning state."
+ },
+ "rotationToLatestKeyVersionEnabled": {
+ "type": "boolean",
+ "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version."
+ },
+ "lastKeyRotationTimestamp": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The time when the active key of this disk encryption set was updated."
+ },
+ "autoKeyRotationError": {
+ "readOnly": true,
+ "$ref": "../../../common-types/v1/common.json#/definitions/ApiError",
+ "description": "The error that was encountered during auto-key rotation. If an error is present, then auto-key rotation will not be attempted until the error on this disk encryption set is fixed."
+ },
+ "federatedClientId": {
+ "type": "string",
+ "description": "Multi-tenant application client id to access key vault in a different tenant. Setting the value to 'None' will clear the property."
+ }
+ }
+ },
+ "EncryptionSetIdentity": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "SystemAssigned, UserAssigned",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "DiskEncryptionSetIdentityType",
+ "modelAsString": true
+ },
+ "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported for new creations. Disk Encryption Sets can be updated with Identity type None during migration of subscription to a new Azure Active Directory tenant; it will cause the encrypted resources to lose access to the keys."
+ },
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The object id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-identity-principal-id header in the PUT request if the resource has a systemAssigned(implicit) identity"
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity"
+ },
+ "userAssignedIdentities": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/UserAssignedIdentities",
+ "description": "The list of user identities associated with the disk encryption set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."
+ }
+ },
+ "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks."
+ },
+ "DiskEncryptionSetType": {
+ "type": "string",
+ "description": "The type of key used to encrypt the data of the disk.",
+ "enum": [
+ "EncryptionAtRestWithCustomerKey",
+ "EncryptionAtRestWithPlatformAndCustomerKeys",
+ "ConfidentialVmEncryptedWithCustomerKey"
+ ],
+ "x-ms-enum": {
+ "name": "DiskEncryptionSetType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "EncryptionAtRestWithCustomerKey",
+ "description": "Resource using diskEncryptionSet would be encrypted at rest with Customer managed key that can be changed and revoked by a customer."
+ },
+ {
+ "value": "EncryptionAtRestWithPlatformAndCustomerKeys",
+ "description": "Resource using diskEncryptionSet would be encrypted at rest with two layers of encryption. One of the keys is Customer managed and the other key is Platform managed."
+ },
+ {
+ "value": "ConfidentialVmEncryptedWithCustomerKey",
+ "description": "Confidential VM supported disk and VM guest state would be encrypted with customer managed key."
+ }
+ ]
+ }
+ },
+ "KeyForDiskEncryptionSet": {
+ "properties": {
+ "sourceVault": {
+ "$ref": "./diskRPCommon.json#/definitions/SourceVault",
+ "description": "Resource id of the KeyVault containing the key or secret. This property is optional and cannot be used if the KeyVault subscription is not the same as the Disk Encryption Set subscription."
+ },
+ "keyUrl": {
+ "type": "string",
+ "description": "Fully versioned Key Url pointing to a key in KeyVault. Version segment of the Url is required regardless of rotationToLatestKeyVersionEnabled value."
+ }
+ },
+ "required": [
+ "keyUrl"
+ ],
+ "description": "Key Vault Key Url to be used for server side encryption of Managed Disks and Snapshots"
+ },
+ "DiskEncryptionSet": {
+ "properties": {
+ "identity": {
+ "$ref": "#/definitions/EncryptionSetIdentity"
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/EncryptionSetProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "disk encryption set resource."
+ },
+ "DiskEncryptionSetUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DiskEncryptionSetUpdateProperties"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ },
+ "identity": {
+ "$ref": "#/definitions/EncryptionSetIdentity"
+ }
+ },
+ "description": "disk encryption set update resource."
+ },
+ "DiskEncryptionSetUpdateProperties": {
+ "properties": {
+ "encryptionType": {
+ "$ref": "#/definitions/DiskEncryptionSetType"
+ },
+ "activeKey": {
+ "$ref": "#/definitions/KeyForDiskEncryptionSet"
+ },
+ "rotationToLatestKeyVersionEnabled": {
+ "type": "boolean",
+ "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version."
+ },
+ "federatedClientId": {
+ "type": "string",
+ "description": "Multi-tenant application client id to access key vault in a different tenant. Setting the value to 'None' will clear the property."
+ }
+ },
+ "description": "disk encryption set resource update properties."
+ },
+ "DiskEncryptionSetList": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiskEncryptionSet"
+ },
+ "description": "A list of disk encryption sets."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of disk encryption sets. Call ListNext() with this to fetch the next page of disk encryption sets."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List disk encryption set operation response."
+ },
+ "ResourceUriList": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of IDs or Owner IDs of resources which are encrypted with the disk encryption set."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of encrypted resources. Call ListNext() with this to fetch the next page of encrypted resources."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List resources which are encrypted with the disk encryption set."
+ }
+ },
+ "parameters": {
+ "DiskEncryptionSetNameParameter": {
+ "name": "diskEncryptionSetName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskRPCommon.json
new file mode 100644
index 000000000000..62f71f29b2b4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskRPCommon.json
@@ -0,0 +1,632 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "DiskResourceProviderClient",
+ "description": "The Disk Resource Provider Client.",
+ "version": "2023-04-02"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {},
+ "definitions": {
+ "EncryptionSettingsCollection": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged."
+ },
+ "encryptionSettings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EncryptionSettingsElement"
+ },
+ "x-ms-identifiers": [
+ "diskEncryptionKey/sourceVault/id"
+ ],
+ "description": "A collection of encryption settings, one for each disk volume."
+ },
+ "encryptionSettingsVersion": {
+ "type": "string",
+ "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption."
+ }
+ },
+ "required": [
+ "enabled"
+ ],
+ "description": "Encryption settings for disk or snapshot"
+ },
+ "EncryptionSettingsElement": {
+ "properties": {
+ "diskEncryptionKey": {
+ "$ref": "#/definitions/KeyVaultAndSecretReference",
+ "description": "Key Vault Secret Url and vault id of the disk encryption key"
+ },
+ "keyEncryptionKey": {
+ "$ref": "#/definitions/KeyVaultAndKeyReference",
+ "description": "Key Vault Key Url and vault id of the key encryption key. KeyEncryptionKey is optional and when provided is used to unwrap the disk encryption key."
+ }
+ },
+ "description": "Encryption settings for one disk volume."
+ },
+ "KeyVaultAndSecretReference": {
+ "properties": {
+ "sourceVault": {
+ "$ref": "#/definitions/SourceVault",
+ "description": "Resource id of the KeyVault containing the key or secret"
+ },
+ "secretUrl": {
+ "type": "string",
+ "description": "Url pointing to a key or secret in KeyVault"
+ }
+ },
+ "required": [
+ "secretUrl",
+ "sourceVault"
+ ],
+ "description": "Key Vault Secret Url and vault id of the encryption key "
+ },
+ "KeyVaultAndKeyReference": {
+ "properties": {
+ "sourceVault": {
+ "$ref": "#/definitions/SourceVault",
+ "description": "Resource id of the KeyVault containing the key or secret"
+ },
+ "keyUrl": {
+ "type": "string",
+ "description": "Url pointing to a key or secret in KeyVault"
+ }
+ },
+ "required": [
+ "keyUrl",
+ "sourceVault"
+ ],
+ "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey"
+ },
+ "SourceVault": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource Id"
+ }
+ },
+ "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}"
+ },
+ "EncryptionType": {
+ "type": "string",
+ "description": "The type of key used to encrypt the data of the disk.",
+ "enum": [
+ "EncryptionAtRestWithPlatformKey",
+ "EncryptionAtRestWithCustomerKey",
+ "EncryptionAtRestWithPlatformAndCustomerKeys"
+ ],
+ "x-ms-enum": {
+ "name": "EncryptionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "EncryptionAtRestWithPlatformKey",
+ "description": "Disk is encrypted at rest with Platform managed key. It is the default encryption type. This is not a valid encryption type for disk encryption sets."
+ },
+ {
+ "value": "EncryptionAtRestWithCustomerKey",
+ "description": "Disk is encrypted at rest with Customer managed key that can be changed and revoked by a customer."
+ },
+ {
+ "value": "EncryptionAtRestWithPlatformAndCustomerKeys",
+ "description": "Disk is encrypted at rest with 2 layers of encryption. One of the keys is Customer managed and the other key is Platform managed."
+ }
+ ]
+ }
+ },
+ "Encryption": {
+ "properties": {
+ "diskEncryptionSetId": {
+ "type": "string",
+ "description": "ResourceId of the disk encryption set to use for enabling encryption at rest."
+ },
+ "type": {
+ "$ref": "#/definitions/EncryptionType"
+ }
+ },
+ "description": "Encryption at rest settings for disk or snapshot"
+ },
+ "NetworkAccessPolicy": {
+ "type": "string",
+ "description": "Policy for accessing the disk via network.",
+ "enum": [
+ "AllowAll",
+ "AllowPrivate",
+ "DenyAll"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkAccessPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "AllowAll",
+ "description": "The disk can be exported or uploaded to from any network."
+ },
+ {
+ "value": "AllowPrivate",
+ "description": "The disk can be exported or uploaded to using a DiskAccess resource's private endpoints."
+ },
+ {
+ "value": "DenyAll",
+ "description": "The disk cannot be exported."
+ }
+ ]
+ }
+ },
+ "PublicNetworkAccess": {
+ "type": "string",
+ "description": "Policy for controlling export on the disk.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Enabled",
+ "description": "You can generate a SAS URI to access the underlying data of the disk publicly on the internet when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate."
+ },
+ {
+ "value": "Disabled",
+ "description": "You cannot access the underlying data of the disk publicly on the internet even when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate."
+ }
+ ]
+ }
+ },
+ "DiskState": {
+ "type": "string",
+ "description": "This enumerates the possible state of the disk.",
+ "readOnly": true,
+ "enum": [
+ "Unattached",
+ "Attached",
+ "Reserved",
+ "Frozen",
+ "ActiveSAS",
+ "ActiveSASFrozen",
+ "ReadyToUpload",
+ "ActiveUpload"
+ ],
+ "x-ms-enum": {
+ "name": "DiskState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Unattached",
+ "description": "The disk is not being used and can be attached to a VM."
+ },
+ {
+ "value": "Attached",
+ "description": "The disk is currently attached to a running VM."
+ },
+ {
+ "value": "Reserved",
+ "description": "The disk is attached to a stopped-deallocated VM."
+ },
+ {
+ "value": "Frozen",
+ "description": "The disk is attached to a VM which is in hibernated state."
+ },
+ {
+ "value": "ActiveSAS",
+ "description": "The disk currently has an Active SAS Uri associated with it."
+ },
+ {
+ "value": "ActiveSASFrozen",
+ "description": "The disk is attached to a VM in hibernated state and has an active SAS URI associated with it."
+ },
+ {
+ "value": "ReadyToUpload",
+ "description": "A disk is ready to be created by upload by requesting a write token."
+ },
+ {
+ "value": "ActiveUpload",
+ "description": "A disk is created for upload and a write token has been issued for uploading to it."
+ }
+ ]
+ }
+ },
+ "CreationData": {
+ "properties": {
+ "createOption": {
+ "type": "string",
+ "enum": [
+ "Empty",
+ "Attach",
+ "FromImage",
+ "Import",
+ "Copy",
+ "Restore",
+ "Upload",
+ "CopyStart",
+ "ImportSecure",
+ "UploadPreparedSecure",
+ "CopyFromSanSnapshot"
+ ],
+ "x-ms-enum": {
+ "name": "DiskCreateOption",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Empty",
+ "description": "Create an empty data disk of a size given by diskSizeGB."
+ },
+ {
+ "value": "Attach",
+ "description": "Disk will be attached to a VM."
+ },
+ {
+ "value": "FromImage",
+ "description": "Create a new disk from a platform image specified by the given imageReference or galleryImageReference."
+ },
+ {
+ "value": "Import",
+ "description": "Create a disk by importing from a blob specified by a sourceUri in a storage account specified by storageAccountId."
+ },
+ {
+ "value": "Copy",
+ "description": "Create a new disk or snapshot by copying from a disk or snapshot specified by the given sourceResourceId."
+ },
+ {
+ "value": "Restore",
+ "description": "Create a new disk by copying from a backup recovery point."
+ },
+ {
+ "value": "Upload",
+ "description": "Create a new disk by obtaining a write token and using it to directly upload the contents of the disk."
+ },
+ {
+ "value": "CopyStart",
+ "description": "Create a new disk by using a deep copy process, where the resource creation is considered complete only after all data has been copied from the source."
+ },
+ {
+ "value": "ImportSecure",
+ "description": "Similar to Import create option. Create a new Trusted Launch VM or Confidential VM supported disk by importing additional blob for VM guest state specified by securityDataUri in storage account specified by storageAccountId"
+ },
+ {
+ "value": "UploadPreparedSecure",
+ "description": "Similar to Upload create option. Create a new Trusted Launch VM or Confidential VM supported disk and upload using write token in both disk and VM guest state"
+ },
+ {
+ "value": "CopyFromSanSnapshot",
+ "description": "Create a new disk by exporting from elastic san volume snapshot"
+ }
+ ]
+ },
+ "description": "This enumerates the possible sources of a disk's creation."
+ },
+ "storageAccountId": {
+ "type": "string",
+ "description": "Required if createOption is Import. The Azure Resource Manager identifier of the storage account containing the blob to import as a disk."
+ },
+ "imageReference": {
+ "$ref": "#/definitions/ImageDiskReference",
+ "description": "Disk source information for PIR or user images."
+ },
+ "galleryImageReference": {
+ "$ref": "#/definitions/ImageDiskReference",
+ "description": "Required if creating from a Gallery Image. The id/sharedGalleryImageId/communityGalleryImageId of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk."
+ },
+ "sourceUri": {
+ "type": "string",
+ "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk."
+ },
+ "sourceResourceId": {
+ "type": "string",
+ "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk."
+ },
+ "sourceUniqueId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "If this field is set, this is the unique id identifying the source of this resource."
+ },
+ "uploadSizeBytes": {
+ "type": "integer",
+ "format": "int64",
+ "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)."
+ },
+ "logicalSectorSize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Logical sector size in bytes for Ultra disks. Supported values are 512 ad 4096. 4096 is the default."
+ },
+ "securityDataUri": {
+ "type": "string",
+ "description": "If createOption is ImportSecure, this is the URI of a blob to be imported into VM guest state."
+ },
+ "performancePlus": {
+ "type": "boolean",
+ "description": "Set this flag to true to get a boost on the performance target of the disk deployed, see here on the respective performance target. This flag can only be set on disk creation time and cannot be disabled after enabled."
+ },
+ "elasticSanResourceId": {
+ "type": "string",
+ "description": "Required if createOption is CopyFromSanSnapshot. This is the ARM id of the source elastic san volume snapshot."
+ }
+ },
+ "required": [
+ "createOption"
+ ],
+ "description": "Data used when creating a disk."
+ },
+ "ImageDiskReference": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "A relative uri containing either a Platform Image Repository, user image, or Azure Compute Gallery image reference."
+ },
+ "sharedGalleryImageId": {
+ "type": "string",
+ "description": "A relative uri containing a direct shared Azure Compute Gallery image reference."
+ },
+ "communityGalleryImageId": {
+ "type": "string",
+ "description": "A relative uri containing a community Azure Compute Gallery image reference."
+ },
+ "lun": {
+ "type": "integer",
+ "format": "int32",
+ "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null."
+ }
+ },
+ "description": "The source image used for creating the disk."
+ },
+ "PurchasePlan": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The plan ID."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The publisher ID."
+ },
+ "product": {
+ "type": "string",
+ "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element."
+ },
+ "promotionCode": {
+ "type": "string",
+ "description": "The Offer Promotion Code."
+ }
+ },
+ "required": [
+ "publisher",
+ "name",
+ "product"
+ ],
+ "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace."
+ },
+ "CopyCompletionError": {
+ "type": "object",
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "Indicates the error code if the background copy of a resource created via the CopyStart operation fails.",
+ "enum": [
+ "CopySourceNotFound"
+ ],
+ "x-ms-enum": {
+ "name": "CopyCompletionErrorReason",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "CopySourceNotFound",
+ "description": "Indicates that the source snapshot was deleted while the background copy of the resource created via CopyStart operation was in progress."
+ }
+ ]
+ }
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "Indicates the error message if the background copy of a resource created via the CopyStart operation fails."
+ }
+ },
+ "required": [
+ "errorCode",
+ "errorMessage"
+ ],
+ "description": "Indicates the error details if the background copy of a resource created via the CopyStart operation fails."
+ },
+ "SupportedCapabilities": {
+ "type": "object",
+ "properties": {
+ "diskControllerTypes": {
+ "type": "string",
+ "description": "The disk controllers that an OS disk supports. If set it can be SCSI or SCSI, NVME or NVME, SCSI."
+ },
+ "acceleratedNetwork": {
+ "type": "boolean",
+ "description": "True if the image from which the OS disk is created supports accelerated networking."
+ },
+ "architecture": {
+ "type": "string",
+ "description": "CPU architecture supported by an OS disk.",
+ "enum": [
+ "x64",
+ "Arm64"
+ ],
+ "x-ms-enum": {
+ "name": "Architecture",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "List of supported capabilities persisted on the disk resource for VM use."
+ },
+ "DiskSecurityType": {
+ "type": "string",
+ "description": "Specifies the SecurityType of the VM. Applicable for OS disks only.",
+ "enum": [
+ "TrustedLaunch",
+ "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey",
+ "ConfidentialVM_DiskEncryptedWithPlatformKey",
+ "ConfidentialVM_DiskEncryptedWithCustomerKey"
+ ],
+ "x-ms-enum": {
+ "name": "DiskSecurityTypes",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "TrustedLaunch",
+ "description": "Trusted Launch provides security features such as secure boot and virtual Trusted Platform Module (vTPM)"
+ },
+ {
+ "value": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey",
+ "description": "Indicates Confidential VM disk with only VM guest state encrypted"
+ },
+ {
+ "value": "ConfidentialVM_DiskEncryptedWithPlatformKey",
+ "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a platform managed key"
+ },
+ {
+ "value": "ConfidentialVM_DiskEncryptedWithCustomerKey",
+ "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a customer managed key"
+ }
+ ]
+ }
+ },
+ "DiskSecurityProfile": {
+ "properties": {
+ "securityType": {
+ "$ref": "#/definitions/DiskSecurityType"
+ },
+ "secureVMDiskEncryptionSetId": {
+ "type": "string",
+ "description": "ResourceId of the disk encryption set associated to Confidential VM supported disk encrypted with customer managed key"
+ }
+ },
+ "description": "Contains the security related information for the resource."
+ },
+ "GrantAccessData": {
+ "properties": {
+ "access": {
+ "type": "string",
+ "enum": [
+ "None",
+ "Read",
+ "Write"
+ ],
+ "x-ms-enum": {
+ "name": "AccessLevel",
+ "modelAsString": true
+ }
+ },
+ "durationInSeconds": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Time duration in seconds until the SAS access expires."
+ },
+ "getSecureVMGuestStateSAS": {
+ "type": "boolean",
+ "description": "Set this flag to true to get additional SAS for VM guest state"
+ },
+ "fileFormat": {
+ "type": "string",
+ "description": "Used to specify the file format when making request for SAS on a VHDX file format snapshot",
+ "enum": [
+ "VHD",
+ "VHDX"
+ ],
+ "x-ms-enum": {
+ "name": "FileFormat",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "VHD",
+ "description": "A VHD file is a disk image file in the Virtual Hard Disk file format."
+ },
+ {
+ "value": "VHDX",
+ "description": "A VHDX file is a disk image file in the Virtual Hard Disk v2 file format."
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "access",
+ "durationInSeconds"
+ ],
+ "description": "Data used for requesting a SAS."
+ },
+ "AccessUri": {
+ "properties": {
+ "accessSAS": {
+ "readOnly": true,
+ "type": "string",
+ "description": "A SAS uri for accessing a disk."
+ },
+ "securityDataAccessSAS": {
+ "readOnly": true,
+ "type": "string",
+ "description": "A SAS uri for accessing a VM guest state."
+ }
+ },
+ "description": "A disk access SAS uri."
+ },
+ "DataAccessAuthMode": {
+ "type": "string",
+ "description": "Additional authentication requirements when exporting or uploading to a disk or snapshot.",
+ "enum": [
+ "AzureActiveDirectory",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "DataAccessAuthMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "AzureActiveDirectory",
+ "description": "When export/upload URL is used, the system checks if the user has an identity in Azure Active Directory and has necessary permissions to export/upload the data. Please refer to aka.ms/DisksAzureADAuth."
+ },
+ {
+ "value": "None",
+ "description": "No additional authentication would be performed when accessing export/upload URL."
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "ResourceGroupNameParameter": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskRestorePoint.json
new file mode 100644
index 000000000000..56dc8d755518
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/diskRestorePoint.json
@@ -0,0 +1,430 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "DiskResourceProviderClient",
+ "description": "The Disk Resource Provider Client.",
+ "version": "2023-04-02"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}": {
+ "get": {
+ "tags": [
+ "IncrementalRestorePoints"
+ ],
+ "operationId": "DiskRestorePoint_Get",
+ "description": "Get disk restorePoint resource",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RestorePointCollectionNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VmRestorePointNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskRestorePointNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskRestorePoint"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get an incremental disk restorePoint resource.": {
+ "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get.json"
+ },
+ "Get an incremental disk restorePoint when source resource is from a different region": {
+ "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints": {
+ "get": {
+ "tags": [
+ "IncrementalRestorePoints"
+ ],
+ "operationId": "DiskRestorePoint_ListByRestorePoint",
+ "description": "Lists diskRestorePoints under a vmRestorePoint.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RestorePointCollectionNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VmRestorePointNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DiskRestorePointList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get an incremental disk restorePoint resource.": {
+ "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/beginGetAccess": {
+ "post": {
+ "tags": [
+ "IncrementalRestorePoints"
+ ],
+ "operationId": "DiskRestorePoint_GrantAccess",
+ "description": "Grants access to a diskRestorePoint.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RestorePointCollectionNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VmRestorePointNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskRestorePointNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "grantAccessData",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "./diskRPCommon.json#/definitions/GrantAccessData"
+ },
+ "description": "Access data object supplied in the body of the get disk access operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./diskRPCommon.json#/definitions/AccessUri"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Grants access to a diskRestorePoint.": {
+ "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/endGetAccess": {
+ "post": {
+ "tags": [
+ "IncrementalRestorePoints"
+ ],
+ "operationId": "DiskRestorePoint_RevokeAccess",
+ "description": "Revokes access to a diskRestorePoint.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RestorePointCollectionNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VmRestorePointNameParameter"
+ },
+ {
+ "$ref": "#/parameters/DiskRestorePointNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Revokes access to a diskRestorePoint.": {
+ "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DiskRestorePoint": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/DiskRestorePointProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyOnlyResource"
+ }
+ ],
+ "description": "Properties of disk restore point"
+ },
+ "DiskRestorePointList": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DiskRestorePoint"
+ },
+ "description": "A list of disk restore points."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of disk restore points. Call ListNext() with this to fetch the next page of disk restore points."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Disk Restore Points operation response."
+ },
+ "DiskRestorePointProperties": {
+ "properties": {
+ "timeCreated": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp of restorePoint creation",
+ "readOnly": true
+ },
+ "sourceResourceId": {
+ "type": "string",
+ "description": "arm id of source disk or source disk restore point.",
+ "readOnly": true
+ },
+ "osType": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ },
+ "purchasePlan": {
+ "$ref": "./diskRPCommon.json#/definitions/PurchasePlan",
+ "description": "Purchase plan information for the the image from which the OS disk was created."
+ },
+ "supportedCapabilities": {
+ "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities",
+ "description": "List of supported capabilities for the image from which the OS disk was created."
+ },
+ "familyId": {
+ "type": "string",
+ "description": "id of the backing snapshot's MIS family",
+ "readOnly": true
+ },
+ "sourceUniqueId": {
+ "type": "string",
+ "description": "unique incarnation id of the source disk",
+ "readOnly": true
+ },
+ "encryption": {
+ "$ref": "./diskRPCommon.json#/definitions/Encryption",
+ "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.",
+ "readOnly": true
+ },
+ "supportsHibernation": {
+ "type": "boolean",
+ "description": "Indicates the OS on a disk supports hibernation."
+ },
+ "networkAccessPolicy": {
+ "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy"
+ },
+ "publicNetworkAccess": {
+ "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess"
+ },
+ "diskAccessId": {
+ "type": "string",
+ "description": "ARM id of the DiskAccess resource for using private endpoints on disks."
+ },
+ "completionPercent": {
+ "type": "number",
+ "description": "Percentage complete for the background copy of disk restore point when source resource is from a different region."
+ },
+ "replicationState": {
+ "type": "string",
+ "description": "Replication state of disk restore point when source resource is from a different region.",
+ "readOnly": true
+ },
+ "sourceResourceLocation": {
+ "type": "string",
+ "description": "Location of source disk or source disk restore point when source resource is from a different region.",
+ "readOnly": true
+ },
+ "securityProfile": {
+ "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile",
+ "description": "Contains the security related information for the resource."
+ }
+ },
+ "description": "Properties of an incremental disk restore point"
+ },
+ "ProxyOnlyResource": {
+ "description": "The ProxyOnly Resource model definition.",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource Id"
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource name"
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "DiskRestorePointNameParameter": {
+ "name": "diskRestorePointName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the disk restore point created.",
+ "x-ms-parameter-location": "method"
+ },
+ "RestorePointCollectionNameParameter": {
+ "name": "restorePointCollectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the restore point collection that the disk restore point belongs.",
+ "x-ms-parameter-location": "method"
+ },
+ "VmRestorePointNameParameter": {
+ "name": "vmRestorePointName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vm restore point that the disk disk restore point belongs.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json
new file mode 100644
index 000000000000..f341741c1a66
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection",
+ "privateEndpointConnection": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Approving myPrivateEndpointConnection"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "name": "myPrivateEndpointConenction",
+ "type": "Microsoft.Compute/diskAccesses/privateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnectionName",
+ "properties": {
+ "provisioningState": "Updating",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Approving myPrivateEndpointConnection",
+ "status": "Approved"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myPrivateEndpointConnectionName",
+ "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnectionName",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Approving myPrivateEndpointConnection",
+ "status": "Approved"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json
new file mode 100644
index 000000000000..5a273b919624
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskAccessName": "myDiskAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json
new file mode 100644
index 000000000000..0d2614b55121
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateEndpointConnection",
+ "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Auto-Approved",
+ "status": "Approved"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json
new file mode 100644
index 000000000000..f2b89c1d01b8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myPrivateEndpointConnection",
+ "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Auto-Approved",
+ "status": "Approved"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json
new file mode 100644
index 000000000000..6b2779b90ae7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateLinkResources/disks",
+ "name": "disks",
+ "type": "Microsoft.Compute/diskAccesses/privateLinkResources",
+ "properties": {
+ "groupId": "disks",
+ "requiredMembers": [
+ "diskAccess_1"
+ ],
+ "requiredZoneNames": [
+ "privatelink.blob.core.windows.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Create.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Create.json
new file mode 100644
index 000000000000..8bdd080b0e1a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Create.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess",
+ "diskAccess": {
+ "location": "West US"
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "name": "myDiskAccess",
+ "location": "West US",
+ "type": "Microsoft.Compute/diskAccesses"
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDiskAccess",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Delete.json
new file mode 100644
index 000000000000..4284102f8ec0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskAccessName": "myDiskAccess",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Get.json
new file mode 100644
index 000000000000..6871e2aff201
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Get.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00"
+ },
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "name": "myDiskAccess"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json
new file mode 100644
index 000000000000..db2845d9f14f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00",
+ "privateEndpointConnections": [
+ {
+ "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Auto-Approved",
+ "status": "Approved"
+ }
+ }
+ }
+ ]
+ },
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "name": "myDiskAccess"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json
new file mode 100644
index 000000000000..d6672d79e9e6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00"
+ },
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "name": "myDiskAccess"
+ },
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00",
+ "privateEndpointConnections": [
+ {
+ "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Auto-Approved",
+ "status": "Approved"
+ }
+ }
+ }
+ ]
+ },
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2",
+ "name": "myDiskAccess2"
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_ListBySubscription.json
new file mode 100644
index 000000000000..6c3a37f6c89f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_ListBySubscription.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00"
+ },
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "name": "myDiskAccess"
+ },
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "timeCreated": "2020-05-01T04:41:35.079872+00:00",
+ "privateEndpointConnections": [
+ {
+ "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2"
+ },
+ "privateLinkServiceConnectionState": {
+ "actionsRequired": "None",
+ "description": "Auto-Approved",
+ "status": "Approved"
+ }
+ }
+ }
+ ]
+ },
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ },
+ "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2",
+ "name": "myDiskAccess2"
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Update.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Update.json
new file mode 100644
index 000000000000..88c23559fc10
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskAccessExamples/DiskAccess_Update.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskAccessName": "myDiskAccess",
+ "diskAccess": {
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDiskAccess",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "West US",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDiskAccess",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess",
+ "type": "Microsoft.Compute/diskAccesses",
+ "location": "West US",
+ "tags": {
+ "department": "Development",
+ "project": "PrivateEndpoints"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json
new file mode 100644
index 000000000000..c61c70f201b8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "diskEncryptionSet": {
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json
new file mode 100644
index 000000000000..ca8632454dbc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "diskEncryptionSet": {
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json
new file mode 100644
index 000000000000..00d363c43a06
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "diskEncryptionSet": {
+ "location": "West US",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {}
+ }
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "federatedClientId": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {}
+ }
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "federatedClientId": "00000000-0000-0000-0000-000000000000",
+ "previousKeys": []
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {}
+ }
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "federatedClientId": "00000000-0000-0000-0000-000000000000",
+ "previousKeys": []
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json
new file mode 100644
index 000000000000..59107a3b619d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json
new file mode 100644
index 000000000000..f0c95975a3bd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json
new file mode 100644
index 000000000000..64b051f3d565
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "rotationToLatestKeyVersionEnabled": true,
+ "provisioningState": "Succeeded",
+ "autoKeyRotationError": {
+ "code": "ManagedServiceIdentityNotFound",
+ "message": "Auto-key rotation was disabled as managed service identity associated with DiskEncryptionSet 'myDiskEncryptionSet' was not found. Please update the resource with correct identity to re-enable auto-key rotation."
+ }
+ },
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json
new file mode 100644
index 000000000000..d51484208ec6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
+ "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources?$skiptoken={token}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json
new file mode 100644
index 000000000000..fa0601ef7eb8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet"
+ },
+ {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2",
+ "name": "myDiskEncryptionSet2"
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json
new file mode 100644
index 000000000000..ebe488edde7b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "name": "myDiskEncryptionSet"
+ },
+ {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2",
+ "name": "myDiskEncryptionSet2"
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json
new file mode 100644
index 000000000000..c004067435e7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "diskEncryptionSet": {
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey"
+ },
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ },
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDiskEncryptionSet",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": [],
+ "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00"
+ },
+ "tags": {
+ "department": "Development",
+ "project": "Encryption"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json
new file mode 100644
index 000000000000..9ebff7ff453d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "diskEncryptionSet": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "rotationToLatestKeyVersionEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDiskEncryptionSet",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDiskEncryptionSet",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/KeyVersion2"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "rotationToLatestKeyVersionEnabled": true,
+ "provisioningState": "Succeeded",
+ "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json
new file mode 100644
index 000000000000..a9873b2ecf5c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskEncryptionSetName": "myDiskEncryptionSet",
+ "diskEncryptionSet": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "rotationToLatestKeyVersionEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDiskEncryptionSet",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "previousKeys": []
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDiskEncryptionSet",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet",
+ "type": "Microsoft.Compute/diskEncryptionSets",
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "activeKey": {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion2"
+ },
+ "encryptionType": "EncryptionAtRestWithCustomerKey",
+ "rotationToLatestKeyVersionEnabled": true,
+ "previousKeys": [
+ {
+ "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1"
+ }
+ ],
+ "provisioningState": "Updating",
+ "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_BeginGetAccess.json
new file mode 100644
index 000000000000..01019ebf5597
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_BeginGetAccess.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskName": "myDisk",
+ "api-version": "2023-04-02",
+ "grantAccessData": {
+ "access": "Read",
+ "durationInSeconds": 300,
+ "fileFormat": "VHD"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r"
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json
new file mode 100644
index 000000000000..f6e0676770e7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskName": "myDisk",
+ "api-version": "2023-04-02",
+ "grantAccessData": {
+ "access": "Read",
+ "durationInSeconds": 300,
+ "getSecureVMGuestStateSAS": true
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r",
+ "securityDataAccessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/b9bf5824-6122-49e0-ba22-042f76ccd8a1_vmgs?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r"
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json
new file mode 100644
index 000000000000..645835dc5da7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "diskSizeGB": 1024,
+ "burstingEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 1024,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 1024,
+ "burstingEnabled": true,
+ "provisioningState": "Succeeded"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json
new file mode 100644
index 000000000000..c35bf9cf427a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json
new file mode 100644
index 000000000000..aec206e12852
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json
new file mode 100644
index 000000000000..9c9104aed846
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json
new file mode 100644
index 000000000000..c2d2d985230e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey",
+ "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey",
+ "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey",
+ "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_Empty.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_Empty.json
new file mode 100644
index 000000000000..26f97ee835ab
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_Empty.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAPlatformImage.json
new file mode 100644
index 000000000000..c64ca6d11130
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAPlatformImage.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "{sku}",
+ "publisher": "{publisher}",
+ "product": "{offer}"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0"
+ }
+ },
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "{sku}",
+ "publisher": "{publisher}",
+ "product": "{offer}"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json
new file mode 100644
index 000000000000..5f565f587e69
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0"
+ }
+ },
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json
new file mode 100644
index 000000000000..91ca2e3567bf
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0"
+ }
+ },
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json
new file mode 100644
index 000000000000..3c69d4cea791
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0"
+ }
+ },
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "galleryImageReference": {
+ "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnElasticSanVolumeSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnElasticSanVolumeSnapshot.json
new file mode 100644
index 000000000000..4fd7bc765989
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnElasticSanVolumeSnapshot.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "CopyFromSanSnapshot",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.ElasticSan/elasticSans/myElasticSan/volumegroups/myElasticSanVolumeGroup/snapshots/myElasticSanVolumeSnapshot"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "CopyFromSanSnapshot",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.ElasticSan/elasticSans/myElasticSan/volumegroups/myElasticSanVolumeGroup/snapshots/myElasticSanVolumeSnapshot"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "CopyFromSanSnapshot",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.ElasticSan/elasticSans/myElasticSan/volumegroups/myElasticSanVolumeGroup/snapshots/myElasticSanVolumeSnapshot"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json
new file mode 100644
index 000000000000..20b5ac6e8d1a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk2",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk2"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk2"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromImportSecure.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromImportSecure.json
new file mode 100644
index 000000000000..1936f7933dea
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromImportSecure.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey"
+ },
+ "creationData": {
+ "createOption": "ImportSecure",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey"
+ },
+ "creationData": {
+ "createOption": "ImportSecure",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey"
+ },
+ "creationData": {
+ "createOption": "ImportSecure",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd",
+ "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json
new file mode 100644
index 000000000000..5b277db72cac
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "UploadPreparedSecure",
+ "uploadSizeBytes": 10737418752
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "UploadPreparedSecure",
+ "uploadSizeBytes": 10737418752
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "UploadPreparedSecure",
+ "uploadSizeBytes": 10737418752
+ },
+ "provisioningState": "Succeeded"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_InExtendedLocation.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_InExtendedLocation.json
new file mode 100644
index 000000000000..42654943eb32
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_InExtendedLocation.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "extendedLocation": {
+ "type": "EdgeZone",
+ "name": "{edge-zone-id}"
+ },
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk",
+ "extendedLocation": {
+ "type": "EdgeZone",
+ "name": "{edge-zone-id}"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk",
+ "extendedLocation": {
+ "type": "EdgeZone",
+ "name": "{edge-zone-id}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_PerformancePlus.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_PerformancePlus.json
new file mode 100644
index 000000000000..724319c7758d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_PerformancePlus.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Upload",
+ "performancePlus": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Upload",
+ "performancePlus": true
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Upload",
+ "performancePlus": true
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_UploadDisk.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_UploadDisk.json
new file mode 100644
index 000000000000..c475c4510dae
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_UploadDisk.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Upload",
+ "uploadSizeBytes": 10737418752
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Upload",
+ "uploadSizeBytes": 10737418752
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Upload",
+ "uploadSizeBytes": 10737418752
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json
new file mode 100644
index 000000000000..dc47ef265a99
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "dataAccessAuthMode": "AzureActiveDirectory"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Succeeded",
+ "dataAccessAuthMode": "AzureActiveDirectory"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDiskAccess.json
new file mode 100644
index 000000000000..6c97783829bd
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDiskAccess.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "networkAccessPolicy": "AllowPrivate",
+ "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Succeeded",
+ "networkAccessPolicy": "AllowPrivate",
+ "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}",
+ "publicNetworkAccess": "Enabled"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json
new file mode 100644
index 000000000000..cbb023a3547b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "encryption": {
+ "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Succeeded",
+ "encryption": {
+ "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
+ }
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json
new file mode 100644
index 000000000000..d205896964c6
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "sku": {
+ "name": "UltraSSD_LRS"
+ },
+ "properties": {
+ "creationData": {
+ "createOption": "Empty",
+ "logicalSectorSize": 512
+ },
+ "diskSizeGB": 200
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty",
+ "logicalSectorSize": 512
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk",
+ "sku": {
+ "name": "UltraSSD_LRS",
+ "tier": "Ultra"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty",
+ "logicalSectorSize": 512
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk",
+ "sku": {
+ "name": "UltraSSD_LRS",
+ "tier": "Ultra"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithOptimizedForFrequentAttach.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithOptimizedForFrequentAttach.json
new file mode 100644
index 000000000000..e0223b8f3bc2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithOptimizedForFrequentAttach.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "optimizedForFrequentAttach": true
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating",
+ "optimizedForFrequentAttach": true
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Succeeded",
+ "optimizedForFrequentAttach": true
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json
new file mode 100644
index 000000000000..23dd5f9437cc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myPremiumV2Disk",
+ "disk": {
+ "location": "West US",
+ "sku": {
+ "name": "PremiumV2_LRS"
+ },
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "diskIOPSReadWrite": 125,
+ "diskMBpsReadWrite": 3000
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myPremiumV2Disk",
+ "sku": {
+ "name": "PremiumV2_LRS",
+ "tier": "Premium"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myPremiumV2Disk",
+ "sku": {
+ "name": "PremiumV2_LRS",
+ "tier": "Premium"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json
new file mode 100644
index 000000000000..a9ddd297de4f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "West US",
+ "sku": {
+ "name": "Premium_ZRS"
+ },
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk",
+ "sku": {
+ "name": "Premium_ZRS",
+ "tier": "Premium"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk",
+ "sku": {
+ "name": "Premium_ZRS",
+ "tier": "Premium"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithSecurityProfile.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithSecurityProfile.json
new file mode 100644
index 000000000000..8e12654057cc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithSecurityProfile.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "location": "North Central US",
+ "properties": {
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "North Central US",
+ "properties": {
+ "provisioningState": "Updating",
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}"
+ }
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "name": "myDisk",
+ "location": "North Central US",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "osType": "Windows",
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithUltraSSD_ReadOnly.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithUltraSSD_ReadOnly.json
new file mode 100644
index 000000000000..9b1a12a08174
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Create_WithUltraSSD_ReadOnly.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myUltraReadOnlyDisk",
+ "disk": {
+ "location": "West US",
+ "sku": {
+ "name": "UltraSSD_LRS"
+ },
+ "properties": {
+ "creationData": {
+ "createOption": "Empty",
+ "logicalSectorSize": 4096
+ },
+ "diskSizeGB": 200,
+ "diskIOPSReadWrite": 125,
+ "diskMBpsReadWrite": 3000,
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myUltraReadOnlyDisk",
+ "sku": {
+ "name": "UltraSSD_LRS",
+ "tier": "Ultra"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating",
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ }
+ },
+ "location": "West US",
+ "name": "myUltraReadOnlyDisk",
+ "sku": {
+ "name": "UltraSSD_LRS",
+ "tier": "Ultra"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Delete.json
new file mode 100644
index 000000000000..5aed3ee529dc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskName": "myDisk",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_EndGetAccess.json
new file mode 100644
index 000000000000..ec48fb7a026e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_EndGetAccess.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "diskName": "myDisk",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Get.json
new file mode 100644
index 000000000000..0614e0d09802
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Get.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myManagedDisk"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec",
+ "sku": {
+ "name": "Standard_LRS"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "test_sku",
+ "publisher": "test_test_pmc2pc1",
+ "product": "marketplace_vm_test"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "supportsHibernation": true,
+ "securityProfile": {
+ "securityType": "TrustedLaunch"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 10,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "LastOwnershipUpdateTime": "2016-12-28T04:41:35.079872+00:00",
+ "timeCreated": "2016-12-28T04:41:35.079872+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "ManagedDisks"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
+ "name": "myManagedDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_ListByResourceGroup.json
new file mode 100644
index 000000000000..58f5b0e64ceb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_ListByResourceGroup.json
@@ -0,0 +1,120 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk"
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:35.9278721+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "ManagedDisks"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
+ "name": "myManagedDisk1"
+ },
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 10,
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:36.872242+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
+ "name": "myManagedDisk2"
+ },
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}"
+ }
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:36.3973934+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "ManagedDisks"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk",
+ "name": "myManagedDisk3"
+ }
+ ],
+ "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_ListBySubscription.json
new file mode 100644
index 000000000000..ec24280e962b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_ListBySubscription.json
@@ -0,0 +1,119 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1"
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:35.9278721+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "ManagedDisks"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1",
+ "name": "myManagedDisk1"
+ },
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 10,
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:36.872242+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2",
+ "name": "myManagedDisk2"
+ },
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}"
+ }
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:36.3973934+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/disks",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "ManagedDisks"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3",
+ "name": "myManagedDisk3"
+ }
+ ],
+ "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json
new file mode 100644
index 000000000000..4e741cd0acad
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "supportedCapabilities": {
+ "acceleratedNetwork": false
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": false
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "acceleratedNetwork": false
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddDiskControllerTypes.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddDiskControllerTypes.json
new file mode 100644
index 000000000000..0d22bd81410b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddDiskControllerTypes.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "supportedCapabilities": {
+ "diskControllerTypes": "SCSI"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2023-04-02"
+ },
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "diskControllerTypes": "SCSI"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/marketplacetestfirstparty/ArtifactTypes/VMImage/Offers/nvme_test_062/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "diskControllerTypes": "SCSI"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/marketplacetestfirstparty/ArtifactTypes/VMImage/Offers/nvme_test_062/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddPurchasePlan.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddPurchasePlan.json
new file mode 100644
index 000000000000..d276656f54f7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddPurchasePlan.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "purchasePlan": {
+ "name": "myPurchasePlanName",
+ "publisher": "myPurchasePlanPublisher",
+ "product": "myPurchasePlanProduct",
+ "promotionCode": "myPurchasePlanPromotionCode"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "myPurchasePlanName",
+ "publisher": "myPurchasePlanPublisher",
+ "product": "myPurchasePlanProduct",
+ "promotionCode": "myPurchasePlanPromotionCode"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "myPurchasePlanName",
+ "publisher": "myPurchasePlanPublisher",
+ "product": "myPurchasePlanProduct",
+ "promotionCode": "myPurchasePlanPromotionCode"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddSupportsHibernation.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddSupportsHibernation.json
new file mode 100644
index 000000000000..e5848d4c50f7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_AddSupportsHibernation.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "supportsHibernation": true
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportsHibernation": true,
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportsHibernation": true,
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_ChangeTier.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_ChangeTier.json
new file mode 100644
index 000000000000..cd8aaa3bf46f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_ChangeTier.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "tier": "P30"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "provisioningState": "Updating",
+ "tier": "P10",
+ "propertyUpdatesInProgress": {
+ "targetTier": "P30"
+ }
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "provisioningState": "Succeeded",
+ "tier": "P30"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_DisableBursting.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_DisableBursting.json
new file mode 100644
index 000000000000..a1113fdfbc5a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_DisableBursting.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "burstingEnabled": false
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_DisableOptimizedForFrequentAttach.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_DisableOptimizedForFrequentAttach.json
new file mode 100644
index 000000000000..9eac63934f93
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_DisableOptimizedForFrequentAttach.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "optimizedForFrequentAttach": false
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating",
+ "optimizedForFrequentAttach": false
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Succeeded",
+ "optimizedForFrequentAttach": false
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_RemoveDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_RemoveDiskAccess.json
new file mode 100644
index 000000000000..9ede234c7730
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_RemoveDiskAccess.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "networkAccessPolicy": "AllowAll"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01"
+ },
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Updating",
+ "networkAccessPolicy": "AllowAll"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Empty"
+ },
+ "diskSizeGB": 200,
+ "provisioningState": "Succeeded",
+ "networkAccessPolicy": "AllowAll"
+ },
+ "location": "West US",
+ "name": "myDisk"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_ToAddArchitecture.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_ToAddArchitecture.json
new file mode 100644
index 000000000000..1725bfe2443c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskExamples/Disk_Update_ToAddArchitecture.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "diskName": "myDisk",
+ "disk": {
+ "properties": {
+ "supportedCapabilities": {
+ "architecture": "Arm64"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-12-01"
+ },
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "architecture": "Arm64"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Updating"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "name": "myDisk",
+ "location": "westus",
+ "sku": {
+ "name": "Standard_LRS",
+ "tier": "Standard"
+ },
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "supportedCapabilities": {
+ "architecture": "Arm64"
+ },
+ "creationData": {
+ "createOption": "FromImage",
+ "imageReference": {
+ "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0"
+ }
+ },
+ "diskSizeGB": 127,
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json
new file mode 100644
index 000000000000..b1ec76f93be7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpc",
+ "vmRestorePointName": "vmrp",
+ "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "api-version": "2023-04-02",
+ "grantAccessData": {
+ "access": "Read",
+ "durationInSeconds": 300,
+ "fileFormat": "VHDX"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r"
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json
new file mode 100644
index 000000000000..c78fe4e15def
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpc",
+ "vmRestorePointName": "vmrp",
+ "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_Get.json
new file mode 100644
index 000000000000..79fb6d5e892f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_Get.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpc",
+ "vmRestorePointName": "vmrp",
+ "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "properties": {
+ "timeCreated": "2020-09-16T04:41:35.079872+00:00",
+ "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5",
+ "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13",
+ "networkAccessPolicy": "AllowAll",
+ "publicNetworkAccess": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json
new file mode 100644
index 000000000000..5060d8510062
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpc",
+ "vmRestorePointName": "vmrp",
+ "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "properties": {
+ "timeCreated": "2020-09-16T04:41:35.079872+00:00",
+ "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5",
+ "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13",
+ "networkAccessPolicy": "AllowAll",
+ "publicNetworkAccess": "Disabled",
+ "replicationState": "Succeeded",
+ "completionPercent": 100,
+ "sourceResourceLocation": "eastus2"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json
new file mode 100644
index 000000000000..9659c2e62e24
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "restorePointCollectionName": "rpc",
+ "vmRestorePointName": "vmrp",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745",
+ "properties": {
+ "timeCreated": "2020-09-16T04:41:35.079872+00:00",
+ "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0",
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5",
+ "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13",
+ "networkAccessPolicy": "AllowAll",
+ "publicNetworkAccess": "Disabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_BeginGetAccess.json
new file mode 100644
index 000000000000..52b77e3b7a98
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_BeginGetAccess.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "snapshotName": "mySnapshot",
+ "api-version": "2023-04-02",
+ "grantAccessData": {
+ "access": "Read",
+ "durationInSeconds": 300,
+ "fileFormat": "VHDX"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r"
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json
new file mode 100644
index 000000000000..0009ed9d2edb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "mySnapshot1",
+ "snapshot": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "mySnapshot1"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "mySnapshot1"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json
new file mode 100644
index 000000000000..7c4c6e284af4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "mySnapshot1",
+ "snapshot": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "mySnapshot1"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "properties": {
+ "creationData": {
+ "createOption": "Import",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "provisioningState": "Updating"
+ },
+ "location": "West US",
+ "name": "mySnapshot1"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnElasticSanVolumeSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnElasticSanVolumeSnapshot.json
new file mode 100644
index 000000000000..3564c5ec46fe
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnElasticSanVolumeSnapshot.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "mySnapshot",
+ "snapshot": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "CopyFromSanSnapshot",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.ElasticSan/elasticSans/myElasticSan/volumegroups/myElasticSanVolumeGroup/snapshots/myElasticSanVolumeSnapshot"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "name": "mySnapshot",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "CopyFromSanSnapshot",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.ElasticSan/elasticSans/myElasticSan/volumegroups/myElasticSanVolumeGroup/snapshots/myElasticSanVolumeSnapshot"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "name": "mySnapshot",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "CopyFromSanSnapshot",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.ElasticSan/elasticSans/myElasticSan/volumegroups/myElasticSanVolumeGroup/snapshots/myElasticSanVolumeSnapshot"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json
new file mode 100644
index 000000000000..9ea2b424bbab
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "mySnapshot2",
+ "snapshot": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
+ "name": "mySnapshot2",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
+ "name": "mySnapshot2",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json
new file mode 100644
index 000000000000..62cd4a3a0872
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "mySnapshot2",
+ "snapshot": {
+ "location": "West US",
+ "properties": {
+ "creationData": {
+ "createOption": "CopyStart",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
+ "name": "mySnapshot2",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "CopyStart",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
+ "name": "mySnapshot2",
+ "location": "West US",
+ "properties": {
+ "provisioningState": "Updating",
+ "creationData": {
+ "createOption": "CopyStart",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Delete.json
new file mode 100644
index 000000000000..23733612a2d3
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "snapshotName": "mySnapshot",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_EndGetAccess.json
new file mode 100644
index 000000000000..619a94b73584
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_EndGetAccess.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "snapshotName": "mySnapshot",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/operations/{operationId}&monitor=true&api-version=2023-04-02"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Get.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Get.json
new file mode 100644
index 000000000000..d19e40894f26
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Get.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "mySnapshot"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "test_sku",
+ "publisher": "test_test_pmc2pc1",
+ "product": "marketplace_vm_test"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "supportsHibernation": true,
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "sourceUniqueId": "d633885d-d102-4481-901e-5b2413d1a7be"
+ },
+ "diskSizeGB": 100,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:35.079872+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/snapshots",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Snapshots"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "name": "mySnapshot"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_GetIncrementalSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_GetIncrementalSnapshot.json
new file mode 100644
index 000000000000..85eb2364a466
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_GetIncrementalSnapshot.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02",
+ "snapshotName": "myIncrementalSnapshot"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "osType": "Windows",
+ "hyperVGeneration": "V1",
+ "purchasePlan": {
+ "name": "test_sku",
+ "publisher": "test_test_pmc2pc1",
+ "product": "marketplace_vm_test"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": true
+ },
+ "supportsHibernation": true,
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk",
+ "sourceUniqueId": "d633885d-d102-4481-901e-5b2413d1a7be"
+ },
+ "diskSizeGB": 100,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "incremental": true,
+ "networkAccessPolicy": "0",
+ "diskState": "0",
+ "diskSizeBytes": 10737418240,
+ "uniqueId": "a395e9c1-fb9e-446e-a9ba-7b2fa0bcd305",
+ "incrementalSnapshotFamilyId": "d1a341d5-1ea7-4a85-b304-944ad8021639",
+ "timeCreated": "2016-12-28T04:41:35.079872+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/snapshots",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Snapshots"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/myIncrementalSnapshot",
+ "name": "myIncrementalSnapshot"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_ListByResourceGroup.json
new file mode 100644
index 000000000000..a32acbb79bfa
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_ListByResourceGroup.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:41:35.9278721+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/snapshots",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Snapshots"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot",
+ "name": "mySnapshot"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_ListBySubscription.json
new file mode 100644
index 000000000000..9e2ad028ce5c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_ListBySubscription.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2023-04-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot"
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:47:30.6630569+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/snapshots",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Snapshots"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1",
+ "name": "mySnapshot1"
+ },
+ {
+ "properties": {
+ "osType": "Windows",
+ "creationData": {
+ "createOption": "Import",
+ "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
+ "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd"
+ },
+ "diskSizeGB": 200,
+ "encryptionSettingsCollection": {
+ "enabled": true,
+ "encryptionSettings": [
+ {
+ "diskEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}"
+ },
+ "keyEncryptionKey": {
+ "sourceVault": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault"
+ },
+ "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}"
+ }
+ }
+ ]
+ },
+ "encryption": {
+ "type": "EncryptionAtRestWithPlatformKey"
+ },
+ "timeCreated": "2016-12-28T04:47:30.3247198+00:00",
+ "provisioningState": "Succeeded"
+ },
+ "type": "Microsoft.Compute/snapshots",
+ "location": "westus",
+ "tags": {
+ "department": "Development",
+ "project": "Snapshots"
+ },
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2",
+ "name": "mySnapshot2"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Update.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Update.json
new file mode 100644
index 000000000000..654484c64534
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Update.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "snapshotName": "mySnapshot",
+ "api-version": "2023-04-02",
+ "snapshot": {
+ "properties": {
+ "diskSizeGB": 20
+ },
+ "tags": {
+ "department": "Development",
+ "project": "UpdateSnapshots"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01"
+ },
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "diskSizeGB": 20,
+ "provisioningState": "Updating"
+ },
+ "tags": {
+ "department": "Development",
+ "project": "UpdateSnapshots"
+ },
+ "location": "West US",
+ "name": "mySnapshot"
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "diskSizeGB": 20,
+ "provisioningState": "Succeeded"
+ },
+ "tags": {
+ "department": "Development",
+ "project": "UpdateSnapshots"
+ },
+ "location": "West US",
+ "name": "mySnapshot"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json
new file mode 100644
index 000000000000..e8e326c682fc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroup",
+ "snapshotName": "mySnapshot",
+ "api-version": "2023-04-02",
+ "snapshot": {
+ "properties": {
+ "diskSizeGB": 20,
+ "supportedCapabilities": {
+ "acceleratedNetwork": false
+ }
+ },
+ "tags": {
+ "department": "Development",
+ "project": "UpdateSnapshots"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01"
+ },
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": false
+ },
+ "diskSizeGB": 20,
+ "provisioningState": "Updating"
+ },
+ "tags": {
+ "department": "Development",
+ "project": "UpdateSnapshots"
+ },
+ "location": "West US",
+ "name": "mySnapshot"
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "creationData": {
+ "createOption": "Copy",
+ "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1"
+ },
+ "supportedCapabilities": {
+ "acceleratedNetwork": false
+ },
+ "diskSizeGB": 20,
+ "provisioningState": "Succeeded"
+ },
+ "tags": {
+ "department": "Development",
+ "project": "UpdateSnapshots"
+ },
+ "location": "West US",
+ "name": "mySnapshot"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/snapshot.json
new file mode 100644
index 000000000000..16df843e7d72
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/DiskRP/stable/2023-04-02/snapshot.json
@@ -0,0 +1,676 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "DiskResourceProviderClient",
+ "description": "The Disk Resource Provider Client.",
+ "version": "2023-04-02"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": {
+ "put": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_CreateOrUpdate",
+ "description": "Creates or updates a snapshot.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SnapshotNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "snapshot",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "Snapshot object supplied in the body of the Put disk operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a snapshot from an existing snapshot in the same or a different subscription.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json"
+ },
+ "Create a snapshot by importing an unmanaged blob from the same subscription.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json"
+ },
+ "Create a snapshot by importing an unmanaged blob from a different subscription.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json"
+ },
+ "Create a snapshot from an existing snapshot in the same or a different subscription in a different region.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json"
+ },
+ "Create a snapshot from an elastic san volume snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnElasticSanVolumeSnapshot.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Update",
+ "description": "Updates (patches) a snapshot.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SnapshotNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "snapshot",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SnapshotUpdate"
+ },
+ "description": "Snapshot object supplied in the body of the Patch snapshot operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Update.json"
+ },
+ "Update a snapshot with accelerated networking.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Get",
+ "description": "Gets information about a snapshot.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SnapshotNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Get.json"
+ },
+ "Get information about an incremental snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_GetIncrementalSnapshot.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Delete",
+ "description": "Deletes a snapshot.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SnapshotNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "If the snapshot is deleted, this is an expected error code."
+ }
+ },
+ "x-ms-examples": {
+ "Delete a snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_ListByResourceGroup",
+ "description": "Lists snapshots under a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotList"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all snapshots in a resource group.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_List",
+ "description": "Lists snapshots under a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotList"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all snapshots in a subscription.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": {
+ "post": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_GrantAccess",
+ "description": "Grants access to a snapshot.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SnapshotNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "grantAccessData",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "./diskRPCommon.json#/definitions/GrantAccessData"
+ },
+ "description": "Access data object supplied in the body of the get snapshot access operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./diskRPCommon.json#/definitions/AccessUri"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-examples": {
+ "Get a sas on a snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_BeginGetAccess.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": {
+ "post": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_RevokeAccess",
+ "description": "Revokes access to a snapshot.",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SnapshotNameParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-examples": {
+ "Revoke access to a snapshot.": {
+ "$ref": "./examples/snapshotExamples/Snapshot_EndGetAccess.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Snapshot": {
+ "properties": {
+ "managedBy": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Unused. Always Null."
+ },
+ "sku": {
+ "$ref": "#/definitions/SnapshotSku"
+ },
+ "extendedLocation": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/ExtendedLocation",
+ "description": "The extended location where the snapshot will be created. Extended location cannot be changed."
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/SnapshotProperties"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/definitions/Resource"
+ }
+ ],
+ "description": "Snapshot resource."
+ },
+ "SnapshotUpdate": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/SnapshotUpdateProperties"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ },
+ "sku": {
+ "$ref": "#/definitions/SnapshotSku"
+ }
+ },
+ "description": "Snapshot update resource."
+ },
+ "SnapshotList": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "A list of snapshots."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "The List Snapshots operation response."
+ },
+ "SnapshotSku": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "enum": [
+ "Standard_LRS",
+ "Premium_LRS",
+ "Standard_ZRS"
+ ],
+ "x-ms-enum": {
+ "name": "SnapshotStorageAccountTypes",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Standard_LRS",
+ "description": "Standard HDD locally redundant storage"
+ },
+ {
+ "value": "Premium_LRS",
+ "description": "Premium SSD locally redundant storage"
+ },
+ {
+ "value": "Standard_ZRS",
+ "description": "Standard zone redundant storage"
+ }
+ ]
+ },
+ "description": "The sku name."
+ },
+ "tier": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The sku tier."
+ }
+ },
+ "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. This is an optional parameter for incremental snapshot and the default behavior is the SKU will be set to the same sku as the previous snapshot"
+ },
+ "SnapshotProperties": {
+ "properties": {
+ "timeCreated": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The time when the snapshot was created."
+ },
+ "osType": {
+ "type": "string",
+ "description": "The Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "hyperVGeneration": {
+ "type": "string",
+ "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "x-ms-enum": {
+ "name": "HyperVGeneration",
+ "modelAsString": true
+ }
+ },
+ "purchasePlan": {
+ "$ref": "./diskRPCommon.json#/definitions/PurchasePlan",
+ "description": "Purchase plan information for the image from which the source disk for the snapshot was originally created."
+ },
+ "supportedCapabilities": {
+ "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities",
+ "description": "List of supported capabilities for the image from which the source disk from the snapshot was originally created."
+ },
+ "creationData": {
+ "$ref": "./diskRPCommon.json#/definitions/CreationData",
+ "description": "Disk source information. CreationData information cannot be changed after the disk has been created."
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size."
+ },
+ "diskSizeBytes": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "The size of the disk in bytes. This field is read only."
+ },
+ "diskState": {
+ "$ref": "./diskRPCommon.json#/definitions/DiskState",
+ "description": "The state of the snapshot."
+ },
+ "uniqueId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Unique Guid identifying the resource."
+ },
+ "encryptionSettingsCollection": {
+ "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection",
+ "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The disk provisioning state."
+ },
+ "incremental": {
+ "type": "boolean",
+ "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed."
+ },
+ "incrementalSnapshotFamilyId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Incremental snapshots for a disk share an incremental snapshot family id. The Get Page Range Diff API can only be called on incremental snapshots with the same family id."
+ },
+ "encryption": {
+ "$ref": "./diskRPCommon.json#/definitions/Encryption",
+ "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys."
+ },
+ "networkAccessPolicy": {
+ "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy"
+ },
+ "diskAccessId": {
+ "type": "string",
+ "description": "ARM id of the DiskAccess resource for using private endpoints on disks."
+ },
+ "securityProfile": {
+ "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile",
+ "description": "Contains the security related information for the resource."
+ },
+ "supportsHibernation": {
+ "type": "boolean",
+ "description": "Indicates the OS on a snapshot supports hibernation."
+ },
+ "publicNetworkAccess": {
+ "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess"
+ },
+ "completionPercent": {
+ "type": "number",
+ "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation."
+ },
+ "copyCompletionError": {
+ "$ref": "./diskRPCommon.json#/definitions/CopyCompletionError",
+ "description": "Indicates the error details if the background copy of a resource created via the CopyStart operation fails."
+ },
+ "dataAccessAuthMode": {
+ "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode"
+ }
+ },
+ "required": [
+ "creationData"
+ ],
+ "description": "Snapshot resource properties."
+ },
+ "SnapshotUpdateProperties": {
+ "properties": {
+ "osType": {
+ "type": "string",
+ "description": "the Operating System type.",
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OperatingSystemTypes",
+ "modelAsString": false
+ }
+ },
+ "diskSizeGB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size."
+ },
+ "encryptionSettingsCollection": {
+ "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection",
+ "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot."
+ },
+ "encryption": {
+ "$ref": "./diskRPCommon.json#/definitions/Encryption",
+ "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys."
+ },
+ "networkAccessPolicy": {
+ "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy"
+ },
+ "diskAccessId": {
+ "type": "string",
+ "description": "ARM id of the DiskAccess resource for using private endpoints on disks."
+ },
+ "supportsHibernation": {
+ "type": "boolean",
+ "description": "Indicates the OS on a snapshot supports hibernation."
+ },
+ "publicNetworkAccess": {
+ "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess"
+ },
+ "dataAccessAuthMode": {
+ "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode"
+ },
+ "supportedCapabilities": {
+ "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities",
+ "description": "List of supported capabilities for the image from which the OS disk was created."
+ }
+ },
+ "description": "Snapshot resource update properties."
+ }
+ },
+ "parameters": {
+ "SnapshotNameParameter": {
+ "name": "snapshotName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The max name length is 80 characters.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/readme.java.md b/specification/compute/resource-manager/readme.java.md
index 24d5f713b792..c32731c8d597 100644
--- a/specification/compute/resource-manager/readme.java.md
+++ b/specification/compute/resource-manager/readme.java.md
@@ -13,4 +13,8 @@ directive:
"format": "date-time",
"description": "Specifies the time at which the Virtual Machine resource was created."
}
+ - from: gallery.json
+ where: $.definitions.GalleryTargetExtendedLocation.properties.storageAccountType
+ transform: >
+ $['x-ms-enum'].name = "StorageAccountType"
```
\ No newline at end of file
diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md
index bbac295341bb..ebe7d9eb3cee 100644
--- a/specification/compute/resource-manager/readme.md
+++ b/specification/compute/resource-manager/readme.md
@@ -34,7 +34,7 @@ These are the global settings for the Compute API.
title: ComputeManagementClient
description: Compute Client
openapi-type: arm
-tag: package-2023-01-02
+tag: package-2023-07-01
directive:
- where:
@@ -248,6 +248,115 @@ directive:
where:
- $.definitions.VirtualMachineScaleSetVMExtension
```
+
+### 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'
+input-file:
+ - Microsoft.Compute/common-types/v1/common.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/computeRPCommon.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachine.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineImage.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineExtensionImage.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/availabilitySet.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/proximityPlacementGroup.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/dedicatedHost.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/sshPublicKey.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/image.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/restorePoint.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/capacityReservation.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/logAnalytic.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/runCommand.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskRPCommon.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/disk.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskAccess.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskEncryptionSet.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskRestorePoint.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/snapshot.json
+ - Microsoft.Compute/Skus/stable/2021-07-01/skus.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/galleryRPCommon.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/gallery.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/sharedGallery.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/communityGallery.json
+ - Microsoft.Compute/CloudserviceRP/stable/2022-09-04/cloudService.json
+```
+
+### Tag: package-2023-04-02
+
+These settings apply only when `--tag=package-2023-04-02` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-04-02'
+input-file:
+ - Microsoft.Compute/common-types/v1/common.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/computeRPCommon.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/virtualMachineScaleSet.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/virtualMachine.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/virtualMachineImage.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/virtualMachineExtensionImage.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/availabilitySet.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/proximityPlacementGroup.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/dedicatedHost.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/sshPublicKey.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/image.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/restorePoint.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/capacityReservation.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/logAnalytic.json
+ - Microsoft.Compute/ComputeRP/stable/2023-03-01/runCommand.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskRPCommon.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/disk.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskAccess.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskEncryptionSet.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskRestorePoint.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/snapshot.json
+ - Microsoft.Compute/Skus/stable/2021-07-01/skus.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/galleryRPCommon.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/gallery.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/sharedGallery.json
+ - Microsoft.Compute/GalleryRP/stable/2022-03-03/communityGallery.json
+ - Microsoft.Compute/CloudserviceRP/stable/2022-09-04/cloudService.json
+```
+
+### Tag: package-2023-07-01-only
+
+These settings apply only when `--tag=package-2023-07-01-only` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-07-01-only'
+input-file:
+ - Microsoft.Compute/common-types/v1/common.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/computeRPCommon.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachine.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineImage.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/virtualMachineExtensionImage.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/availabilitySet.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/proximityPlacementGroup.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/dedicatedHost.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/sshPublicKey.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/image.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/restorePoint.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/capacityReservation.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/logAnalytic.json
+ - Microsoft.Compute/ComputeRP/stable/2023-07-01/runCommand.json
+```
+
+### Tag: package-2023-04-02-only
+
+These settings apply only when `--tag=package-2023-04-02-only` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-04-02-only'
+input-file:
+ - Microsoft.Compute/common-types/v1/common.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskRPCommon.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/disk.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskAccess.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskEncryptionSet.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/diskRestorePoint.json
+ - Microsoft.Compute/DiskRP/stable/2023-04-02/snapshot.json
+```
+
### Tag: package-2023-01-02
These settings apply only when `--tag=package-2023-01-02` is specified on the command line.
@@ -1633,4 +1742,4 @@ Creating this tag to pick proper resources from the hybrid profile.
input-file:
- Microsoft.Compute/ComputeRP/stable/2020-06-01/compute.json
- Microsoft.Compute/DiskRP/stable/2019-07-01/disk.json
-```
\ No newline at end of file
+```
diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md
index 8296ff796a63..f535f42b5f9c 100644
--- a/specification/compute/resource-manager/readme.python.md
+++ b/specification/compute/resource-manager/readme.python.md
@@ -37,10 +37,12 @@ Generate all API versions currently shipped for this package
```yaml $(python)
multiapi: true
-default-api-version: "2023-03-01"
+default-api-version: "2023-07-01"
clear-output-folder: true
batch:
+ - tag: package-2023-07-01-only
- tag: package-2023-03-01-only
+ - tag: package-2023-01-02-only
- tag: package-2022-11-01-only
- tag: package-2022-09-04-only
- tag: package-2022-08-01-only
@@ -84,6 +86,17 @@ batch:
``` yaml $(multiapiscript)
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/
perform-load: false
+clear-output-folder: false
+```
+
+### Tag: package-2023-07-01-only
+
+These settings apply only when `--tag=package-2023-07-01-only --python` is specified on the command line.
+Please also specify `--python-sdks-folder=`.
+
+``` yaml $(tag) == 'package-2023-07-01-only'
+namespace: azure.mgmt.compute.v2023_07_01
+output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_07_01
```
### Tag: package-2023-03-01-only
@@ -96,6 +109,16 @@ namespace: azure.mgmt.compute.v2023_03_01
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_03_01
```
+### Tag: package-2023-01-02-only
+
+These settings apply only when `--tag=package-2023-01-02-only --python` is specified on the command line.
+Please also specify `--python-sdks-folder=`.
+
+``` yaml $(tag) == 'package-2023-01-02-only'
+namespace: azure.mgmt.compute.v2023_01_02
+output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_01_02
+```
+
### Tag: package-2022-11-01-only
These settings apply only when `--tag=package-2022-11-01-only --python` is specified on the command line.
diff --git a/specification/confidentialledger/Microsoft.ManagedCcf/proposals.tsp b/specification/confidentialledger/Microsoft.ManagedCcf/proposals.tsp
index 592cc3207a39..f72944c36b49 100644
--- a/specification/confidentialledger/Microsoft.ManagedCcf/proposals.tsp
+++ b/specification/confidentialledger/Microsoft.ManagedCcf/proposals.tsp
@@ -132,6 +132,7 @@ interface Proposals {
TxIdReadHeader
>;
+ #suppress "@azure-tools/typespec-azure-core/verb-conflict" "MUST fix in next update"
@doc("Returns actions contained in a proposal.")
@TypeSpec.Rest.action("actions")
@TypeSpec.Rest.actionSeparator("/")
diff --git a/specification/confidentialledger/Microsoft.ManagedCcf/service_state.tsp b/specification/confidentialledger/Microsoft.ManagedCcf/service_state.tsp
index b669dcafe8b0..98ef94f969b2 100644
--- a/specification/confidentialledger/Microsoft.ManagedCcf/service_state.tsp
+++ b/specification/confidentialledger/Microsoft.ManagedCcf/service_state.tsp
@@ -210,8 +210,8 @@ model JoinPolicy {
@doc("Join policy fields specific to nodes running on AMD SEV-SNP hardware.")
model SnpJoinPolicy {
...JoinPolicy;
- // TODO: Work out what the actual types of these are
+ // TODO: Work out what the actual types of these are
@doc("Collection of acceptable host data values.")
hostData: Record;
diff --git a/specification/confidentialledger/Microsoft.ManagedCcf/transactions.tsp b/specification/confidentialledger/Microsoft.ManagedCcf/transactions.tsp
index 7b9392987dca..0c91ea509824 100644
--- a/specification/confidentialledger/Microsoft.ManagedCcf/transactions.tsp
+++ b/specification/confidentialledger/Microsoft.ManagedCcf/transactions.tsp
@@ -36,6 +36,7 @@ model NamedTransaction {
@visibility("query")
@key
transactionId: transactionId;
+
...Transaction;
}
@@ -49,6 +50,7 @@ model CommittedTransaction {
@doc("Identifier of committed transaction.")
transactionId: transactionId;
+
...Transaction;
}
diff --git a/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json b/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json
index 6dbbba8a23c8..3ddab8760664 100644
--- a/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json
+++ b/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json
@@ -32,59 +32,37 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PagedProposal"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Proposals.Proposal"
- },
- "x-ms-identifiers": [],
- "description": "The Proposal items on this page",
- "x-typespec-name": "Proposals.Proposal[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "Paged collection of Proposal items",
- "required": [
- "value"
- ],
- "x-typespec-name": "Azure.Core.Foundations.CustomPage"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Proposals_List": {
"$ref": "./examples/Proposals_List.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
@@ -92,6 +70,9 @@
"post": {
"operationId": "Proposals_Withdraw",
"description": "Withdraw an existing proposal. Only the original proposer is permitted to withdraw.",
+ "consumes": [
+ "application/cose"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -99,8 +80,8 @@
{
"name": "proposalId",
"in": "path",
- "required": true,
"description": "Unique ID assigned to this proposal at its submission, by the service.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
@@ -111,33 +92,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Proposals.Proposal"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction where this request produced a write on the service. This uniquely identifies the submitted request, and can be used to confirm that the request becomes committed.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Proposals.Proposal"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/cose"
- ],
"x-ms-examples": {
"Proposals_Withdraw": {
"$ref": "./examples/Proposals_Withdraw.json"
@@ -156,8 +134,8 @@
{
"name": "proposalId",
"in": "path",
- "required": true,
"description": "Unique ID assigned to this proposal at its submission, by the service.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -165,27 +143,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Proposals.Proposal"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Proposals.Proposal"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -207,8 +185,8 @@
{
"name": "proposalId",
"in": "path",
- "required": true,
"description": "Unique ID assigned to this proposal at its submission, by the service.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -216,27 +194,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Proposals.ProposalActions"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Proposals.ProposalActions"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -251,6 +229,9 @@
"post": {
"operationId": "Ballots_Submit",
"description": "Submit an executable ballot for a specific proposal. This may be as simple as `return true` to vote in favour, or contain reads from the KV and conditions on the proposal contents.",
+ "consumes": [
+ "application/cose"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -258,16 +239,16 @@
{
"name": "proposalId",
"in": "path",
- "required": true,
"description": "Unique ID assigned to this proposal at its submission, by the service.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "ID of CCF member who signed and submitted this ballot.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
@@ -278,33 +259,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Proposals.Proposal"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction where this request produced a write on the service. This uniquely identifies the submitted request, and can be used to confirm that the request becomes committed.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Proposals.Proposal"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/cose"
- ],
"x-ms-examples": {
"Ballots_Submit": {
"$ref": "./examples/Ballots_Submit.json"
@@ -316,6 +294,10 @@
"get": {
"operationId": "Ballots_Get",
"description": "Returns a member's submitted ballot.",
+ "produces": [
+ "text/javascript",
+ "application/json"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -323,16 +305,16 @@
{
"name": "proposalId",
"in": "path",
- "required": true,
"description": "Unique ID assigned to this proposal at its submission, by the service.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "ID of CCF member who signed and submitted this ballot.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -340,34 +322,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Proposals.Ballot"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Proposals.Ballot"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "produces": [
- "text/javascript",
- "application/json"
- ],
"x-ms-examples": {
"Ballots_Get": {
"$ref": "./examples/Ballots_Get.json"
@@ -379,6 +357,9 @@
"post": {
"operationId": "Proposals_Create",
"description": "Submit a proposed change to the service. This will be assigned an ID by the service. Submitting the same signature (including signed COSE headers such as created_at) multiple times will be treated as a single idempotent operation, returning a single created proposal (or an error if it is no longer available). Any change to the request body will be treated as a new, separate proposal.",
+ "consumes": [
+ "application/cose"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -390,33 +371,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Proposals.Proposal"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction where this request produced a write on the service. This uniquely identifies the submitted request, and can be used to confirm that the request becomes committed.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Proposals.Proposal"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/cose"
- ],
"x-ms-examples": {
"Proposals_Create": {
"$ref": "./examples/Proposals_Create.json"
@@ -428,6 +406,9 @@
"post": {
"operationId": "StateDigests_Update",
"description": "Request that this member's stateDigest is updated to a fresher value. Only this member may update their own stateDigest. Returns the refreshed value.",
+ "consumes": [
+ "application/cose"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -435,8 +416,8 @@
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "Identifier for member this stateDigest applies to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
@@ -447,33 +428,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Acks.StateDigest"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction where this request produced a write on the service. This uniquely identifies the submitted request, and can be used to confirm that the request becomes committed.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Acks.StateDigest"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/cose"
- ],
"x-ms-examples": {
"StateDigests_Update": {
"$ref": "./examples/StateDigests_Update.json"
@@ -485,6 +463,9 @@
"post": {
"operationId": "StateDigests_Acknowledge",
"description": "Submit a signed acknowledgement of a recent digest of the service status, to transition the member to Active.",
+ "consumes": [
+ "application/cose"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -492,8 +473,8 @@
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "Identifier for member this stateDigest applies to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
@@ -514,20 +495,17 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/cose"
- ],
"x-ms-examples": {
"StateDigests_Acknowledge": {
"$ref": "./examples/StateDigests_Acknowledge.json"
@@ -546,8 +524,8 @@
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "Identifier for member this stateDigest applies to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -555,27 +533,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Acks.StateDigest"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Acks.StateDigest"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -597,8 +575,8 @@
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "ID of CCF member who this recovery share belongs to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -612,14 +590,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -634,6 +612,9 @@
"post": {
"operationId": "Shares_Submit",
"description": "Provide a recovery share for the purpose of completing a service recovery.",
+ "consumes": [
+ "application/cose"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -641,8 +622,8 @@
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "Identifier for member this recovery state applies to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
@@ -653,33 +634,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Recovery.RecoveryResponse"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/Recovery.RecoveryResponse"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/cose"
- ],
"x-ms-examples": {
"Shares_Submit": {
"$ref": "./examples/Shares_Submit.json"
@@ -691,6 +669,10 @@
"get": {
"operationId": "ServiceState_GetConstitution",
"description": "Retrieve the constitution which controls governance changes on this service.",
+ "produces": [
+ "text/javascript",
+ "application/json"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -699,34 +681,30 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.ConstitutionResponse"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.ConstitutionResponse"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "produces": [
- "text/javascript",
- "application/json"
- ],
"x-ms-examples": {
"ServiceState_GetConstitution": {
"$ref": "./examples/ServiceState_GetConstitution.json"
@@ -746,27 +724,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.ServiceInfo"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.ServiceInfo"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -789,27 +767,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.JsApp"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.JsApp"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -832,27 +810,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.JoinPolicies"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.JoinPolicies"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -875,27 +853,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.JwkInfo"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.JwkInfo"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -918,59 +896,37 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PagedMember"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/ServiceState.Member"
- },
- "x-ms-identifiers": [],
- "description": "The Member items on this page",
- "x-typespec-name": "ServiceState.Member[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "Paged collection of Member items",
- "required": [
- "value"
- ],
- "x-typespec-name": "Azure.Core.Foundations.CustomPage"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"ServiceState_ListMembers": {
"$ref": "./examples/ServiceState_ListMembers.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
@@ -985,8 +941,8 @@
{
"name": "memberId",
"in": "path",
- "required": true,
"description": "ID of CCF member who this object refers to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -994,27 +950,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.Member"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.Member"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -1037,59 +993,37 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PagedNode"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/ServiceState.Node"
- },
- "x-ms-identifiers": [],
- "description": "The Node items on this page",
- "x-typespec-name": "ServiceState.Node[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "Paged collection of Node items",
- "required": [
- "value"
- ],
- "x-typespec-name": "Azure.Core.Foundations.CustomPage"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"ServiceState_ListNodes": {
"$ref": "./examples/ServiceState_ListNodes.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
@@ -1104,8 +1038,8 @@
{
"name": "nodeId",
"in": "path",
- "required": true,
"description": "ID of CCF node who this object refers to.",
+ "required": true,
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
@@ -1113,27 +1047,27 @@
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ServiceState.Node"
+ },
"headers": {
"x-ms-ccf-transaction-id": {
"description": "Identifier for transaction this response was read from. The service state may be altered by other write requests. Reads at the same transactionId describe a consistent single point in the service history.",
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
- },
- "schema": {
- "$ref": "#/definitions/ServiceState.Node"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -1155,8 +1089,8 @@
{
"name": "transactionId",
"in": "path",
- "required": true,
"description": "Identifier of the requested transaction.",
+ "required": true,
"type": "string",
"pattern": "^[0-9]+\\.[0-9]+$"
}
@@ -1170,14 +1104,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -1206,14 +1140,14 @@
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -1228,6 +1162,7 @@
"definitions": {
"Acks.StateDigest": {
"type": "object",
+ "description": "A compact summary of the service's state up to a certain point in time, updated and signed by members to indicate their participation in and approval of the service.",
"properties": {
"digest": {
"type": "string",
@@ -1235,13 +1170,13 @@
"pattern": "^[a-f0-9]{64}$"
}
},
- "description": "A compact summary of the service's state up to a certain point in time, updated and signed by members to indicate their participation in and approval of the service.",
"required": [
"digest"
]
},
"Azure.Core.Foundations.Error": {
"type": "object",
+ "description": "The error object.",
"properties": {
"code": {
"type": "string",
@@ -1257,19 +1192,17 @@
},
"details": {
"type": "array",
+ "description": "An array of details about specific errors that led to this reported error.",
"items": {
"$ref": "#/definitions/Azure.Core.Foundations.Error"
},
- "x-ms-identifiers": [],
- "description": "An array of details about specific errors that led to this reported error.",
- "x-typespec-name": "Azure.Core.Foundations.Error[]"
+ "x-ms-identifiers": []
},
"innererror": {
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "An object containing more specific information than the current object about the error."
}
},
- "description": "The error object.",
"required": [
"code",
"message"
@@ -1277,19 +1210,20 @@
},
"Azure.Core.Foundations.ErrorResponse": {
"type": "object",
+ "description": "A response containing error details.",
"properties": {
"error": {
"$ref": "#/definitions/Azure.Core.Foundations.Error",
"description": "The error object."
}
},
- "description": "A response containing error details.",
"required": [
"error"
]
},
"Azure.Core.Foundations.InnerError": {
"type": "object",
+ "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.",
"properties": {
"code": {
"type": "string",
@@ -1299,11 +1233,77 @@
"$ref": "#/definitions/Azure.Core.Foundations.InnerError",
"description": "Inner error."
}
+ }
+ },
+ "PagedMember": {
+ "type": "object",
+ "description": "Paged collection of Member items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Member items on this page",
+ "items": {
+ "$ref": "#/definitions/ServiceState.Member"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
},
- "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses."
+ "required": [
+ "value"
+ ]
+ },
+ "PagedNode": {
+ "type": "object",
+ "description": "Paged collection of Node items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Node items on this page",
+ "items": {
+ "$ref": "#/definitions/ServiceState.Node"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "PagedProposal": {
+ "type": "object",
+ "description": "Paged collection of Proposal items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Proposal items on this page",
+ "items": {
+ "$ref": "#/definitions/Proposals.Proposal"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
},
"Proposals.Action": {
"type": "object",
+ "description": "A single step in a proposed change to the service.",
"properties": {
"name": {
"type": "string",
@@ -1313,26 +1313,26 @@
"description": "Arguments to modify the behavior of this action. The schema is determined by the action implementation, and should be validated by a `validate` call in the constitution."
}
},
- "description": "A single step in a proposed change to the service.",
"required": [
"name"
]
},
"Proposals.Ballot": {
"type": "object",
+ "description": "The source script of an executable vote from a member, regarding a proposed change to the service.",
"properties": {
"script": {
"type": "string",
"description": "The script to execute, returning the voter's support of this proposal."
}
},
- "description": "The source script of an executable vote from a member, regarding a proposed change to the service.",
"required": [
"script"
]
},
"Proposals.FailureInfo": {
"type": "object",
+ "description": "Description of why governance execution failed.",
"properties": {
"reason": {
"type": "string",
@@ -1343,20 +1343,20 @@
"description": "Call stack showing where failure occurred, if available."
}
},
- "description": "Description of why governance execution failed.",
"required": [
"reason"
]
},
"Proposals.MemberVotes": {
"type": "object",
+ "description": "Each key is a memberId, and the corresponding value is the result of their ballot.",
"additionalProperties": {
"type": "boolean"
- },
- "description": "Each key is a memberId, and the corresponding value is the result of their ballot."
+ }
},
"Proposals.Proposal": {
"type": "object",
+ "description": "Description of a proposed change to the service.",
"properties": {
"proposalId": {
"$ref": "#/definitions/proposalId",
@@ -1387,7 +1387,6 @@
"description": "If proposalState is Failure, then this will describe why the proposal failed."
}
},
- "description": "Description of a proposed change to the service.",
"required": [
"proposalId",
"proposerId",
@@ -1397,18 +1396,17 @@
},
"Proposals.ProposalActions": {
"type": "object",
+ "description": "The actions contained in a proposal, describing the proposal's changes.",
"properties": {
"actions": {
"type": "array",
+ "description": "A list of actions to apply. Each action is considered, in order, for both proposal and execution of the proposal. All actions are validated and, if the proposal is accepted, applied atomically.",
"items": {
"$ref": "#/definitions/Proposals.Action"
},
- "x-ms-identifiers": [],
- "description": "A list of actions to apply. Each action is considered, in order, for both proposal and execution of the proposal. All actions are validated and, if the proposal is accepted, applied atomically.",
- "x-typespec-name": "Proposals.Action[]"
+ "x-ms-identifiers": []
}
},
- "description": "The actions contained in a proposal, describing the proposal's changes.",
"required": [
"actions"
]
@@ -1463,13 +1461,14 @@
},
"Proposals.VoteFailures": {
"type": "object",
+ "description": "Each key is a memberId, and the corresponding value explains why execution of their ballot failed.",
"additionalProperties": {
"$ref": "#/definitions/Proposals.FailureInfo"
- },
- "description": "Each key is a memberId, and the corresponding value explains why execution of their ballot failed."
+ }
},
"Recovery.EncryptedRecoveryShare": {
"type": "object",
+ "description": "A share of a recovery key, granted for a specific recovery member, and encrypted with that member's share-encryption key. This is safe to share in the ledger or amongst untrusted callers, as only the intended member will be able to decrypt and access the secret content.",
"properties": {
"encryptedShare": {
"type": "string",
@@ -1477,18 +1476,18 @@
"description": "Base-64 encoding of a member's encrypted share."
}
},
- "description": "A share of a recovery key, granted for a specific recovery member, and encrypted with that member's share-encryption key. This is safe to share in the ledger or amongst untrusted callers, as only the intended member will be able to decrypt and access the secret content.",
"required": [
"encryptedShare"
]
},
"Recovery.Member": {
"type": "object",
- "properties": {},
- "description": "Recovery-specific details for a given member."
+ "description": "Recovery-specific details for a given member.",
+ "properties": {}
},
"Recovery.RecoveryResponse": {
"type": "object",
+ "description": "Response to a submitted recovery share.",
"properties": {
"message": {
"type": "string",
@@ -1503,7 +1502,6 @@
"description": "Count of how many member shares are required to initiate the end-of-recovery procedure."
}
},
- "description": "Response to a submitted recovery share.",
"required": [
"message",
"submittedCount",
@@ -1512,6 +1510,7 @@
},
"Recovery.RecoveryShare": {
"type": "object",
+ "description": "Container for a member's raw recovery share. This should be carefully guarded, and only submitted to a trusted service over a secure channel, for the purposes of recovery.",
"properties": {
"share": {
"type": "string",
@@ -1519,20 +1518,19 @@
"description": "Base-64 encoding of a member's raw recovery share (unencrypted)."
}
},
- "description": "Container for a member's raw recovery share. This should be carefully guarded, and only submitted to a trusted service over a secure channel, for the purposes of recovery.",
"required": [
"share"
]
},
"ServiceState.ConstitutionResponse": {
"type": "object",
+ "description": "Constitution used to make governance decisions on the service. All governance changes are presented as proposals which must be validated, approved, and applied by the code in this constitution.",
"properties": {
"constitution": {
"type": "string",
"description": "Javascript source code of constitution."
}
},
- "description": "Constitution used to make governance decisions on the service. All governance changes are presented as proposals which must be validated, approved, and applied by the code in this constitution.",
"required": [
"constitution"
]
@@ -1569,6 +1567,7 @@
},
"ServiceState.JoinPolicies": {
"type": "object",
+ "description": "Collection of all policies which determine currently acceptable nodes, across multiple platforms.",
"properties": {
"sgx": {
"$ref": "#/definitions/ServiceState.JoinPolicy",
@@ -1579,7 +1578,6 @@
"description": "Policy applied to nodes running in AMD SEV-SNP containers."
}
},
- "description": "Collection of all policies which determine currently acceptable nodes, across multiple platforms.",
"required": [
"sgx",
"snp"
@@ -1587,41 +1585,40 @@
},
"ServiceState.JoinPolicy": {
"type": "object",
+ "description": "Describes what a joining node must present, in order to join the service.",
"properties": {
"measurements": {
"type": "array",
+ "description": "Code measurements of acceptable enclaves.",
"items": {
"type": "string",
"format": "byte"
- },
- "description": "Code measurements of acceptable enclaves.",
- "x-typespec-name": "bytes[]"
+ }
}
},
- "description": "Describes what a joining node must present, in order to join the service.",
"required": [
"measurements"
]
},
"ServiceState.JsApp": {
"type": "object",
+ "description": "Describes the currently installed JavaScript application.",
"properties": {
"endpoints": {
"type": "object",
+ "description": "The collection of endpoints exposed by the application. Keyed by path.",
"additionalProperties": {
"$ref": "#/definitions/ServiceState.JsOperations"
- },
- "description": "The collection of endpoints exposed by the application. Keyed by path.",
- "x-typespec-name": "Record"
+ }
}
},
- "description": "Describes the currently installed JavaScript application.",
"required": [
"endpoints"
]
},
"ServiceState.JsEndpointInfo": {
"type": "object",
+ "description": "Describes an endpoint implemented by a Javascript handler.",
"properties": {
"jsModule": {
"type": "string",
@@ -1637,11 +1634,10 @@
},
"authnPolicies": {
"type": "array",
+ "description": "The authentication policies which restrict access to this endpoint",
"items": {
"type": "string"
- },
- "description": "The authentication policies which restrict access to this endpoint",
- "x-typespec-name": "string[]"
+ }
},
"mode": {
"$ref": "#/definitions/ServiceState.JsExecMode",
@@ -1649,12 +1645,10 @@
},
"openApi": {
"type": "object",
- "additionalProperties": true,
"description": "An OpenAPI Operation object (https://swagger.io/specification/#operation-object) describing this operation. This is merged into the auto-generated OpenAPI to describe the current application's API.",
- "x-typespec-name": "Record"
+ "additionalProperties": true
}
},
- "description": "Describes an endpoint implemented by a Javascript handler.",
"required": [
"jsModule",
"jsFunction",
@@ -1696,32 +1690,30 @@
},
"ServiceState.JsOperations": {
"type": "object",
+ "description": "The collection of operations available on each path. Keyed by HTTP method.",
"additionalProperties": {
"$ref": "#/definitions/ServiceState.JsEndpointInfo"
- },
- "description": "The collection of operations available on each path. Keyed by HTTP method."
+ }
},
"ServiceState.JwkInfo": {
"type": "object",
+ "description": "Describes what Javascript Web Tokens (JWTs) are accepted by the service, and how they will be validated.",
"properties": {
"issuers": {
"type": "object",
+ "description": "Collection of JWT issuers. Keyed by issuer ID.",
"additionalProperties": {
"$ref": "#/definitions/ServiceState.JwtIssuer"
- },
- "description": "Collection of JWT issuers. Keyed by issuer ID.",
- "x-typespec-name": "Record"
+ }
},
"caCertBundles": {
"type": "object",
+ "description": "Collection of CAs used to authenticate connections with issuers. Keyed by governance-controlled bundle names.",
"additionalProperties": {
"$ref": "#/definitions/ServiceState.caCertBundle"
- },
- "description": "Collection of CAs used to authenticate connections with issuers. Keyed by governance-controlled bundle names.",
- "x-typespec-name": "Record"
+ }
}
},
- "description": "Describes what Javascript Web Tokens (JWTs) are accepted by the service, and how they will be validated.",
"required": [
"issuers",
"caCertBundles"
@@ -1729,6 +1721,7 @@
},
"ServiceState.JwtIssuer": {
"type": "object",
+ "description": "Description of a JWT issuer or identity provider that the current service will trust tokens from.",
"properties": {
"keyFilter": {
"$ref": "#/definitions/ServiceState.JwtIssuerKeyFilter",
@@ -1736,11 +1729,10 @@
},
"keyPolicy": {
"type": "object",
+ "description": "Collection of claims which must be present in SGX attestation to permit updates from this issuer.",
"additionalProperties": {
"type": "string"
- },
- "description": "Collection of claims which must be present in SGX attestation to permit updates from this issuer.",
- "x-typespec-name": "Record"
+ }
},
"autoRefresh": {
"type": "boolean",
@@ -1751,7 +1743,6 @@
"description": "Name of bundle used to authenticate issuer when auto-refreshing."
}
},
- "description": "Description of a JWT issuer or identity provider that the current service will trust tokens from.",
"required": [
"keyFilter",
"autoRefresh"
@@ -1783,6 +1774,7 @@
},
"ServiceState.Member": {
"type": "object",
+ "description": "Information on individual members within a consortium.",
"properties": {
"memberId": {
"$ref": "#/definitions/memberId",
@@ -1800,7 +1792,6 @@
"description": "x509 certificate used as this member's identity."
}
},
- "description": "Information on individual members within a consortium.",
"required": [
"memberId",
"status",
@@ -1833,6 +1824,7 @@
},
"ServiceState.NetworkInterface": {
"type": "object",
+ "description": "Details of how to contact a CCF node. Each node may listen on multiple interfaces, for different kinds of traffic.",
"properties": {
"publishedAddress": {
"type": "string",
@@ -1843,7 +1835,6 @@
"description": "The application layer protocol which the node expects on this interface. Currently supports \"http1\" and \"http2\", more protocols may be added in future."
}
},
- "description": "Details of how to contact a CCF node. Each node may listen on multiple interfaces, for different kinds of traffic.",
"required": [
"publishedAddress",
"protocol"
@@ -1851,6 +1842,7 @@
},
"ServiceState.Node": {
"type": "object",
+ "description": "Information on individual nodes within a service.",
"properties": {
"nodeId": {
"$ref": "#/definitions/nodeId",
@@ -1877,14 +1869,12 @@
},
"rpcInterfaces": {
"type": "object",
+ "description": "A collection of interfaces by which this node may be contacted. Some may be limited to private networks, and others may be DNS names or internet-public network addresses. The keys are arbitrary strings determined by the node operator.",
"additionalProperties": {
"$ref": "#/definitions/ServiceState.NetworkInterface"
- },
- "description": "A collection of interfaces by which this node may be contacted. Some may be limited to private networks, and others may be DNS names or internet-public network addresses. The keys are arbitrary strings determined by the node operator.",
- "x-typespec-name": "Record"
+ }
}
},
- "description": "Information on individual nodes within a service.",
"required": [
"nodeId",
"status",
@@ -1926,13 +1916,13 @@
},
"ServiceState.QuoteInfo": {
"type": "object",
+ "description": "Common type for attestation information, describing the cryptographically-endorsed claim of what code is executing, and what platform it is executing on. Derived types contain platform-specific details.",
"properties": {
"format": {
"type": "string",
"description": "Discriminator property for QuoteInfo."
}
},
- "description": "Common type for attestation information, describing the cryptographically-endorsed claim of what code is executing, and what platform it is executing on. Derived types contain platform-specific details.",
"discriminator": "format",
"required": [
"format"
@@ -1940,6 +1930,7 @@
},
"ServiceState.ServiceInfo": {
"type": "object",
+ "description": "General information about the current service.",
"properties": {
"status": {
"$ref": "#/definitions/ServiceState.ServiceStatus",
@@ -1966,6 +1957,7 @@
},
"configuration": {
"type": "object",
+ "description": "Lists governance-controlled configuration parameters of this service, which will be used by core framework code.",
"properties": {
"maximumNodeCertificateValidityDays": {
"$ref": "#/definitions/safeuint"
@@ -1974,15 +1966,12 @@
"$ref": "#/definitions/safeuint"
}
},
- "description": "Lists governance-controlled configuration parameters of this service, which will be used by core framework code.",
"required": [
"maximumNodeCertificateValidityDays",
"recentCoseProposalsWindowSize"
- ],
- "x-typespec-name": "ServiceState.(anonymous model)"
+ ]
}
},
- "description": "General information about the current service.",
"required": [
"status",
"certificate",
@@ -2029,6 +2018,7 @@
},
"ServiceState.SgxQuoteInfo": {
"type": "object",
+ "description": "Attestation information for Intel SGX enclaves.",
"properties": {
"quote": {
"type": "string",
@@ -2041,7 +2031,6 @@
"description": "Base-64 encoded SGX endorsements."
}
},
- "description": "Attestation information for Intel SGX enclaves.",
"required": [
"quote",
"endorsements"
@@ -2055,36 +2044,33 @@
},
"ServiceState.SnpJoinPolicy": {
"type": "object",
+ "description": "Join policy fields specific to nodes running on AMD SEV-SNP hardware.",
"properties": {
"measurements": {
"type": "array",
+ "description": "Code measurements of acceptable enclaves.",
"items": {
"type": "string",
"format": "byte"
- },
- "description": "Code measurements of acceptable enclaves.",
- "x-typespec-name": "bytes[]"
+ }
},
"hostData": {
"type": "object",
- "additionalProperties": {
- "type": "string",
- "format": "byte"
- },
"description": "Collection of acceptable host data values.",
- "x-typespec-name": "Record"
+ "additionalProperties": {
+ "format": "byte",
+ "type": "string"
+ }
},
"uvmEndorsements": {
"type": "object",
- "additionalProperties": {
- "type": "string",
- "format": "byte"
- },
"description": "Collection of acceptable UVM endorsements.",
- "x-typespec-name": "Record"
+ "additionalProperties": {
+ "format": "byte",
+ "type": "string"
+ }
}
},
- "description": "Join policy fields specific to nodes running on AMD SEV-SNP hardware.",
"required": [
"measurements",
"hostData",
@@ -2093,6 +2079,7 @@
},
"ServiceState.SnpQuoteInfo": {
"type": "object",
+ "description": "Attestation information for AMD SEV-SNP containers.",
"properties": {
"uvmEndorsements": {
"type": "string",
@@ -2105,7 +2092,6 @@
"description": "Base-64 encoded SNP TCB endorsements."
}
},
- "description": "Attestation information for AMD SEV-SNP containers.",
"required": [
"uvmEndorsements",
"endorsedTcb"
@@ -2127,6 +2113,7 @@
},
"Transactions.CommittedTransaction": {
"type": "object",
+ "description": "Description of latest committed transaction.",
"properties": {
"transactionId": {
"$ref": "#/definitions/transactionId",
@@ -2137,7 +2124,6 @@
"description": "Status of this transaction."
}
},
- "description": "Description of latest committed transaction.",
"required": [
"transactionId",
"status"
@@ -2145,26 +2131,26 @@
},
"Transactions.NamedTransaction": {
"type": "object",
+ "description": "Description of a named transaction's current state.",
"properties": {
"status": {
"$ref": "#/definitions/Transactions.TransactionStatus",
"description": "Status of this transaction."
}
},
- "description": "Description of a named transaction's current state.",
"required": [
"status"
]
},
"Transactions.Transaction": {
"type": "object",
+ "description": "Common transaction information.",
"properties": {
"status": {
"$ref": "#/definitions/Transactions.TransactionStatus",
"description": "Status of this transaction."
}
},
- "description": "Common transaction information.",
"required": [
"status"
]
@@ -2251,18 +2237,18 @@
"Azure.Core.Foundations.ApiVersionParameter": {
"name": "api-version",
"in": "query",
- "required": true,
"description": "The API version to use for this operation.",
- "x-ms-client-name": "apiVersion",
+ "required": true,
"type": "string",
"minLength": 1,
- "x-ms-parameter-location": "method"
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "apiVersion"
},
"CoseSignature.body": {
"name": "body",
"in": "body",
- "required": true,
"description": "A raw CoseSign1 signature. See CCF docs for required headers and body schema: https://microsoft.github.io/CCF/main/use_apps/issue_commands.html#cose-schemas",
+ "required": true,
"schema": {
"type": "string",
"format": "binary"
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/connectedvmware.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/connectedvmware.json
new file mode 100644
index 000000000000..7e97e74f564e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/connectedvmware.json
@@ -0,0 +1,8652 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure Arc VMware Management Service API",
+ "description": "Self service experience for VMware.",
+ "version": "2023-03-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow.",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.ConnectedVMwarevSphere/operations": {
+ "get": {
+ "description": "Returns list of all operations.",
+ "operationId": "Operations_List",
+ "x-ms-examples": {
+ "ListOperations": {
+ "$ref": "./examples/ListOperations.json"
+ }
+ },
+ "tags": [
+ "Operations"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Operation details.",
+ "schema": {
+ "$ref": "#/definitions/operationsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/assessPatches": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_AssessPatches",
+ "x-ms-examples": {
+ "Assess patch state of a machine.": {
+ "$ref": "./examples/VirtualMachineAssessPatches.json"
+ }
+ },
+ "description": "The operation to assess patches on a vSphere VMware machine identity in Azure.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vSphere VMware machine."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineAssessPatchesResult"
+ }
+ },
+ "202": {
+ "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/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.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/installPatches": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_InstallPatches",
+ "description": "The operation to install patches on a vSphere VMware machine identity in Azure.",
+ "x-ms-examples": {
+ "Install patch state of a machine.": {
+ "$ref": "./examples/VirtualMachineInstallPatches.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group."
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vSphere VMware machine."
+ },
+ {
+ "name": "installPatchesInput",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstallPatchesParameters"
+ },
+ "description": "Input for InstallPatches as directly received by the API"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstallPatchesResult"
+ }
+ },
+ "202": {
+ "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/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.ConnectedVMwarevSphere/resourcePools/{resourcePoolName}": {
+ "put": {
+ "tags": [
+ "ResourcePools"
+ ],
+ "operationId": "ResourcePools_Create",
+ "description": "Create Or Update resourcePool.",
+ "summary": "Implements resourcePool PUT method.",
+ "x-ms-examples": {
+ "CreateResourcePool": {
+ "$ref": "./examples/CreateResourcePool.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "resourcePoolName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the resourcePool."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePool"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePool"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ResourcePool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "ResourcePools"
+ ],
+ "operationId": "ResourcePools_Get",
+ "summary": "Gets a resourcePool.",
+ "description": "Implements resourcePool GET method.",
+ "x-ms-examples": {
+ "GetResourcePool": {
+ "$ref": "./examples/GetResourcePool.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "resourcePoolName",
+ "description": "Name of the resourcePool.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ResourcePool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ResourcePools"
+ ],
+ "operationId": "ResourcePools_Update",
+ "summary": "Updates a resourcePool.",
+ "description": "API to update certain properties of the resourcePool resource.",
+ "x-ms-examples": {
+ "UpdateResourcePool": {
+ "$ref": "./examples/UpdateResourcePool.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "resourcePoolName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the resourcePool."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ResourcePools"
+ ],
+ "operationId": "ResourcePools_Delete",
+ "summary": "Deletes an resourcePool.",
+ "description": "Implements resourcePool DELETE method.",
+ "x-ms-examples": {
+ "DeleteResourcePool": {
+ "$ref": "./examples/DeleteResourcePool.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "resourcePoolName",
+ "description": "Name of the resourcePool.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/resourcePools": {
+ "get": {
+ "tags": [
+ "ResourcePools"
+ ],
+ "operationId": "ResourcePools_List",
+ "summary": "Implements GET resourcePools in a subscription.",
+ "description": "List of resourcePools in a subscription.",
+ "x-ms-examples": {
+ "ListResourcePools": {
+ "$ref": "./examples/ListResourcePools.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ResourcePoolsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/resourcePools": {
+ "get": {
+ "tags": [
+ "ResourcePools"
+ ],
+ "operationId": "ResourcePools_ListByResourceGroup",
+ "summary": "Implements GET resourcePools in a resource group.",
+ "description": "List of resourcePools in a resource group.",
+ "x-ms-examples": {
+ "ListResourcePoolsByResourceGroup": {
+ "$ref": "./examples/ListResourcePoolsByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ResourcePoolsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/clusters/{clusterName}": {
+ "put": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Create",
+ "description": "Create Or Update cluster.",
+ "summary": "Implements cluster PUT method.",
+ "x-ms-examples": {
+ "CreateCluster": {
+ "$ref": "./examples/CreateCluster.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "clusterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the cluster."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Get",
+ "summary": "Gets a cluster.",
+ "description": "Implements cluster GET method.",
+ "x-ms-examples": {
+ "GetCluster": {
+ "$ref": "./examples/GetCluster.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "clusterName",
+ "description": "Name of the cluster.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Update",
+ "summary": "Updates a cluster.",
+ "description": "API to update certain properties of the cluster resource.",
+ "x-ms-examples": {
+ "UpdateCluster": {
+ "$ref": "./examples/UpdateCluster.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "clusterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the cluster."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Delete",
+ "summary": "Deletes an cluster.",
+ "description": "Implements cluster DELETE method.",
+ "x-ms-examples": {
+ "DeleteCluster": {
+ "$ref": "./examples/DeleteCluster.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "clusterName",
+ "description": "Name of the cluster.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/clusters": {
+ "get": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_List",
+ "summary": "Implements GET clusters in a subscription.",
+ "description": "List of clusters in a subscription.",
+ "x-ms-examples": {
+ "ListClusters": {
+ "$ref": "./examples/ListClusters.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ClustersList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/clusters": {
+ "get": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_ListByResourceGroup",
+ "summary": "Implements GET clusters in a resource group.",
+ "description": "List of clusters in a resource group.",
+ "x-ms-examples": {
+ "ListClustersByResourceGroup": {
+ "$ref": "./examples/ListClustersByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ClustersList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/hosts/{hostName}": {
+ "put": {
+ "tags": [
+ "Hosts"
+ ],
+ "operationId": "Hosts_Create",
+ "description": "Create Or Update host.",
+ "summary": "Implements host PUT method.",
+ "x-ms-examples": {
+ "CreateHost": {
+ "$ref": "./examples/CreateHost.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "hostName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the host."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/Host"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/Host"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Host"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "Hosts"
+ ],
+ "operationId": "Hosts_Get",
+ "summary": "Gets a host.",
+ "description": "Implements host GET method.",
+ "x-ms-examples": {
+ "GetHost": {
+ "$ref": "./examples/GetHost.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "hostName",
+ "description": "Name of the host.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Host"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Hosts"
+ ],
+ "operationId": "Hosts_Update",
+ "summary": "Updates a host.",
+ "description": "API to update certain properties of the host resource.",
+ "x-ms-examples": {
+ "UpdateHost": {
+ "$ref": "./examples/UpdateHost.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "hostName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the host."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/Host"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Hosts"
+ ],
+ "operationId": "Hosts_Delete",
+ "summary": "Deletes an host.",
+ "description": "Implements host DELETE method.",
+ "x-ms-examples": {
+ "DeleteHost": {
+ "$ref": "./examples/DeleteHost.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "hostName",
+ "description": "Name of the host.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/hosts": {
+ "get": {
+ "tags": [
+ "Hosts"
+ ],
+ "operationId": "Hosts_List",
+ "summary": "Implements GET hosts in a subscription.",
+ "description": "List of hosts in a subscription.",
+ "x-ms-examples": {
+ "ListHosts": {
+ "$ref": "./examples/ListHosts.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HostsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/hosts": {
+ "get": {
+ "tags": [
+ "Hosts"
+ ],
+ "operationId": "Hosts_ListByResourceGroup",
+ "summary": "Implements GET hosts in a resource group.",
+ "description": "List of hosts in a resource group.",
+ "x-ms-examples": {
+ "ListHostsByResourceGroup": {
+ "$ref": "./examples/ListHostsByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HostsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/datastores/{datastoreName}": {
+ "put": {
+ "tags": [
+ "Datastores"
+ ],
+ "operationId": "Datastores_Create",
+ "description": "Create Or Update datastore.",
+ "summary": "Implements datastore PUT method.",
+ "x-ms-examples": {
+ "CreateDatastore": {
+ "$ref": "./examples/CreateDatastore.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "datastoreName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the datastore."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/Datastore"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/Datastore"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Datastore"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "Datastores"
+ ],
+ "operationId": "Datastores_Get",
+ "summary": "Gets a datastore.",
+ "description": "Implements datastore GET method.",
+ "x-ms-examples": {
+ "GetDatastore": {
+ "$ref": "./examples/GetDatastore.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "datastoreName",
+ "description": "Name of the datastore.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Datastore"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Datastores"
+ ],
+ "operationId": "Datastores_Update",
+ "summary": "Updates a datastore.",
+ "description": "API to update certain properties of the datastore resource.",
+ "x-ms-examples": {
+ "UpdateDatastore": {
+ "$ref": "./examples/UpdateDatastore.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "datastoreName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the datastore."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/Datastore"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Datastores"
+ ],
+ "operationId": "Datastores_Delete",
+ "summary": "Deletes an datastore.",
+ "description": "Implements datastore DELETE method.",
+ "x-ms-examples": {
+ "DeleteDatastore": {
+ "$ref": "./examples/DeleteDatastore.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "datastoreName",
+ "description": "Name of the datastore.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/datastores": {
+ "get": {
+ "tags": [
+ "Datastores"
+ ],
+ "operationId": "Datastores_List",
+ "summary": "Implements GET datastores in a subscription.",
+ "description": "List of datastores in a subscription.",
+ "x-ms-examples": {
+ "ListDatastores": {
+ "$ref": "./examples/ListDatastores.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatastoresList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/datastores": {
+ "get": {
+ "tags": [
+ "Datastores"
+ ],
+ "operationId": "Datastores_ListByResourceGroup",
+ "summary": "Implements GET datastores in a resource group.",
+ "description": "List of datastores in a resource group.",
+ "x-ms-examples": {
+ "ListDatastoresByResourceGroup": {
+ "$ref": "./examples/ListDatastoresByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatastoresList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/vcenters/{vcenterName}": {
+ "put": {
+ "tags": [
+ "VCenters"
+ ],
+ "operationId": "VCenters_Create",
+ "description": "Create Or Update vCenter.",
+ "summary": "Implements vCenter PUT method.",
+ "x-ms-examples": {
+ "CreateVCenter": {
+ "$ref": "./examples/CreateVCenter.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/VCenter"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VCenter"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VCenter"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "VCenters"
+ ],
+ "operationId": "VCenters_Get",
+ "summary": "Gets a vCenter.",
+ "description": "Implements vCenter GET method.",
+ "x-ms-examples": {
+ "GetVCenter": {
+ "$ref": "./examples/GetVCenter.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VCenter"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VCenters"
+ ],
+ "operationId": "VCenters_Update",
+ "summary": "Updates a vCenter.",
+ "description": "API to update certain properties of the vCenter resource.",
+ "x-ms-examples": {
+ "UpdateVCenter": {
+ "$ref": "./examples/UpdateVCenter.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VCenter"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VCenters"
+ ],
+ "operationId": "VCenters_Delete",
+ "summary": "Deletes an vCenter.",
+ "description": "Implements vCenter DELETE method.",
+ "x-ms-examples": {
+ "DeleteVCenter": {
+ "$ref": "./examples/DeleteVCenter.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/vcenters": {
+ "get": {
+ "tags": [
+ "VCenters"
+ ],
+ "operationId": "VCenters_List",
+ "summary": "Implements GET vCenters in a subscription.",
+ "description": "List of vCenters in a subscription.",
+ "x-ms-examples": {
+ "ListVCenters": {
+ "$ref": "./examples/ListVCenters.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VCentersList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/vcenters": {
+ "get": {
+ "tags": [
+ "VCenters"
+ ],
+ "operationId": "VCenters_ListByResourceGroup",
+ "summary": "Implements GET vCenters in a resource group.",
+ "description": "List of vCenters in a resource group.",
+ "x-ms-examples": {
+ "ListVCentersByResourceGroup": {
+ "$ref": "./examples/ListVCentersByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VCentersList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}": {
+ "put": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_CreateOrUpdate",
+ "description": "Create Or Update virtual machine.",
+ "summary": "Implements virtual machine PUT method.",
+ "x-ms-examples": {
+ "CreateVirtualMachine": {
+ "$ref": "./examples/CreateVirtualMachine.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the virtual machine resource."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Get",
+ "summary": "Gets a virtual machine.",
+ "description": "Implements virtual machine GET method.",
+ "x-ms-examples": {
+ "GetVirtualMachine": {
+ "$ref": "./examples/GetVirtualMachine.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the virtual machine resource."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Update",
+ "summary": "Updates a virtual machine.",
+ "description": "API to update certain properties of the virtual machine resource.",
+ "x-ms-examples": {
+ "UpdateVirtualMachine": {
+ "$ref": "./examples/UpdateVirtualMachine.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the virtual machine resource."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Delete",
+ "summary": "Deletes an virtual machine.",
+ "description": "Implements virtual machine DELETE method.",
+ "x-ms-examples": {
+ "DeleteVirtualMachine": {
+ "$ref": "./examples/DeleteVirtualMachine.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "description": "Name of the virtual machine resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "deleteFromHost",
+ "description": "Whether to delete the VM from the vCenter.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/stop": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Stop",
+ "description": "Stop virtual machine.",
+ "summary": "Implements the operation to stop a virtual machine.",
+ "x-ms-examples": {
+ "StopVirtualMachine": {
+ "$ref": "./examples/StopVirtualMachine.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "description": "Name of the virtual machine resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Virtualmachine stop action payload.",
+ "schema": {
+ "$ref": "#/definitions/StopVirtualMachineOptions"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/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.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/start": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Start",
+ "description": "Start virtual machine.",
+ "summary": "Implements the operation to start a virtual machine.",
+ "x-ms-examples": {
+ "StartVirtualMachine": {
+ "$ref": "./examples/StartVirtualMachine.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "description": "Name of the virtual machine resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/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.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/restart": {
+ "post": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_Restart",
+ "description": "Restart virtual machine.",
+ "summary": "Implements the operation to restart a virtual machine.",
+ "x-ms-examples": {
+ "RestartVirtualMachine": {
+ "$ref": "./examples/RestartVirtualMachine.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "description": "Name of the virtual machine resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_ListAll",
+ "summary": "Implements GET virtualMachines in a subscription.",
+ "description": "List of virtualMachines in a subscription.",
+ "x-ms-examples": {
+ "ListVirtualMachines": {
+ "$ref": "./examples/ListVirtualMachines.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachinesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines": {
+ "get": {
+ "tags": [
+ "VirtualMachines"
+ ],
+ "operationId": "VirtualMachines_List",
+ "summary": "Implements GET virtualMachines in a resource group.",
+ "description": "List of virtualMachines in a resource group.",
+ "x-ms-examples": {
+ "ListVirtualMachinesByResourceGroup": {
+ "$ref": "./examples/ListVirtualMachinesByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachinesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineTemplates/{virtualMachineTemplateName}": {
+ "put": {
+ "tags": [
+ "VirtualMachineTemplates"
+ ],
+ "operationId": "VirtualMachineTemplates_Create",
+ "description": "Create Or Update virtual machine template.",
+ "x-ms-examples": {
+ "CreateVirtualMachineTemplate": {
+ "$ref": "./examples/CreateVirtualMachineTemplate.json"
+ }
+ },
+ "summary": "Implements virtual machine template PUT method.",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineTemplateName",
+ "description": "Name of the virtual machine template resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplate"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplate"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineTemplates"
+ ],
+ "operationId": "VirtualMachineTemplates_Get",
+ "summary": "Gets a virtual machine template.",
+ "description": "Implements virtual machine template GET method.",
+ "x-ms-examples": {
+ "GetVirtualMachineTemplate": {
+ "$ref": "./examples/GetVirtualMachineTemplate.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineTemplateName",
+ "description": "Name of the virtual machine template resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplate"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineTemplates"
+ ],
+ "operationId": "VirtualMachineTemplates_Update",
+ "summary": "Updates a virtual machine template.",
+ "description": "API to update certain properties of the virtual machine template resource.",
+ "x-ms-examples": {
+ "UpdateVirtualMachineTemplate": {
+ "$ref": "./examples/UpdateVirtualMachineTemplate.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineTemplateName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the virtual machine template resource."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplate"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineTemplates"
+ ],
+ "operationId": "VirtualMachineTemplates_Delete",
+ "summary": "Deletes an virtual machine template.",
+ "description": "Implements virtual machine template DELETE method.",
+ "x-ms-examples": {
+ "DeleteVirtualMachineTemplate": {
+ "$ref": "./examples/DeleteVirtualMachineTemplate.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineTemplateName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the virtual machine template resource."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineTemplates": {
+ "get": {
+ "tags": [
+ "VirtualMachineTemplates"
+ ],
+ "operationId": "VirtualMachineTemplates_List",
+ "summary": "Implements GET virtualMachineTemplates in a subscription.",
+ "description": "List of virtualMachineTemplates in a subscription.",
+ "x-ms-examples": {
+ "ListVirtualMachineTemplates": {
+ "$ref": "./examples/ListVirtualMachineTemplates.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplatesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineTemplates": {
+ "get": {
+ "tags": [
+ "VirtualMachineTemplates"
+ ],
+ "operationId": "VirtualMachineTemplates_ListByResourceGroup",
+ "summary": "Implements GET virtualMachineTemplates in a resource group.",
+ "description": "List of virtualMachineTemplates in a resource group.",
+ "x-ms-examples": {
+ "ListVirtualMachineTemplatesByResourceGroup": {
+ "$ref": "./examples/ListVirtualMachineTemplatesByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineTemplatesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualNetworks/{virtualNetworkName}": {
+ "put": {
+ "tags": [
+ "VirtualNetworks"
+ ],
+ "operationId": "VirtualNetworks_Create",
+ "description": "Create Or Update virtual network.",
+ "summary": "Implements virtual network PUT method.",
+ "x-ms-examples": {
+ "CreateVirtualNetwork": {
+ "$ref": "./examples/CreateVirtualNetwork.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualNetworkName",
+ "description": "Name of the virtual network resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetwork"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetwork"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetwork"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualNetworks"
+ ],
+ "operationId": "VirtualNetworks_Get",
+ "summary": "Gets a virtual network.",
+ "description": "Implements virtual network GET method.",
+ "x-ms-examples": {
+ "GetVirtualNetwork": {
+ "$ref": "./examples/GetVirtualNetwork.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualNetworkName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the virtual network resource."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetwork"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualNetworks"
+ ],
+ "operationId": "VirtualNetworks_Update",
+ "summary": "Updates a virtual network.",
+ "description": "API to update certain properties of the virtual network resource.",
+ "x-ms-examples": {
+ "UpdateVirtualNetwork": {
+ "$ref": "./examples/UpdateVirtualNetwork.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualNetworkName",
+ "description": "Name of the virtual network resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetwork"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualNetworks"
+ ],
+ "operationId": "VirtualNetworks_Delete",
+ "summary": "Deletes an virtual network.",
+ "description": "Implements virtual network DELETE method.",
+ "x-ms-examples": {
+ "DeleteVirtualNetwork": {
+ "$ref": "./examples/DeleteVirtualNetwork.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualNetworkName",
+ "description": "Name of the virtual network resource.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConnectedVMwarevSphere/virtualNetworks": {
+ "get": {
+ "tags": [
+ "VirtualNetworks"
+ ],
+ "operationId": "VirtualNetworks_List",
+ "summary": "Implements GET virtualNetworks in a subscription.",
+ "description": "List of virtualNetworks in a subscription.",
+ "x-ms-examples": {
+ "ListVirtualNetworks": {
+ "$ref": "./examples/ListVirtualNetworks.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworksList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualNetworks": {
+ "get": {
+ "tags": [
+ "VirtualNetworks"
+ ],
+ "operationId": "VirtualNetworks_ListByResourceGroup",
+ "summary": "Implements GET virtualNetworks in a resource group.",
+ "description": "List of virtualNetworks in a resource group.",
+ "x-ms-examples": {
+ "ListVirtualNetworksByResourceGroup": {
+ "$ref": "./examples/ListVirtualNetworksByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualNetworksList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/vcenters/{vcenterName}/inventoryItems/{inventoryItemName}": {
+ "put": {
+ "tags": [
+ "InventoryItems"
+ ],
+ "operationId": "InventoryItems_Create",
+ "description": "Create Or Update InventoryItem.",
+ "summary": "Implements InventoryItem PUT method.",
+ "x-ms-examples": {
+ "CreateInventoryItem": {
+ "$ref": "./examples/CreateInventoryItem.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "in": "path",
+ "name": "inventoryItemName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the inventoryItem."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/InventoryItem"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/InventoryItem"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "InventoryItems"
+ ],
+ "operationId": "InventoryItems_Get",
+ "summary": "Gets InventoryItem.",
+ "description": "Implements InventoryItem GET method.",
+ "x-ms-examples": {
+ "GetInventoryItem": {
+ "$ref": "./examples/GetInventoryItem.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "in": "path",
+ "name": "inventoryItemName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the inventoryItem."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InventoryItem"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "InventoryItems"
+ ],
+ "operationId": "InventoryItems_Delete",
+ "summary": "Deletes an inventoryItem.",
+ "description": "Implements inventoryItem DELETE method.",
+ "x-ms-examples": {
+ "DeleteInventoryItem": {
+ "$ref": "./examples/DeleteInventoryItem.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "in": "path",
+ "name": "inventoryItemName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the inventoryItem."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/vcenters/{vcenterName}/inventoryItems": {
+ "get": {
+ "tags": [
+ "InventoryItems"
+ ],
+ "operationId": "InventoryItems_ListByVCenter",
+ "summary": "Implements GET inventoryItems in a vCenter.",
+ "description": "Returns the list of inventoryItems of the given vCenter.",
+ "x-ms-examples": {
+ "InventoryItemsListByVCenter": {
+ "$ref": "./examples/InventoryItems_ListByVCenter.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "vcenterName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vCenter."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InventoryItemsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/hybridIdentityMetadata/{metadataName}": {
+ "put": {
+ "tags": [
+ "HybridIdentityMetadata"
+ ],
+ "operationId": "HybridIdentityMetadata_Create",
+ "description": "Create Or Update HybridIdentityMetadata.",
+ "summary": "Implements HybridIdentityMetadata PUT method.",
+ "x-ms-examples": {
+ "CreateHybridIdentityMetadata": {
+ "$ref": "./examples/CreateHybridIdentityMetadata.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "in": "path",
+ "name": "metadataName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the hybridIdentityMetadata."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/HybridIdentityMetadata"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/HybridIdentityMetadata"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "HybridIdentityMetadata"
+ ],
+ "operationId": "HybridIdentityMetadata_Get",
+ "summary": "Gets HybridIdentityMetadata.",
+ "description": "Implements HybridIdentityMetadata GET method.",
+ "x-ms-examples": {
+ "GetHybridIdentityMetadata": {
+ "$ref": "./examples/GetHybridIdentityMetadata.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "in": "path",
+ "name": "metadataName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the HybridIdentityMetadata."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HybridIdentityMetadata"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "HybridIdentityMetadata"
+ ],
+ "operationId": "HybridIdentityMetadata_Delete",
+ "summary": "Deletes an HybridIdentityMetadata.",
+ "description": "Implements HybridIdentityMetadata DELETE method.",
+ "x-ms-examples": {
+ "DeleteHybridIdentityMetadata": {
+ "$ref": "./examples/DeleteHybridIdentityMetadata.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "in": "path",
+ "name": "metadataName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the HybridIdentityMetadata."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/hybridIdentityMetadata": {
+ "get": {
+ "tags": [
+ "HybridIdentityMetadata"
+ ],
+ "operationId": "HybridIdentityMetadata_List",
+ "summary": "Implements GET HybridIdentityMetadata in a vm.",
+ "description": "Returns the list of HybridIdentityMetadata of the given vm.",
+ "x-ms-examples": {
+ "HybridIdentityMetadataListByVm": {
+ "$ref": "./examples/HybridIdentityMetadata_ListByVm.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/HybridIdentityMetadataList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/extensions/{extensionName}": {
+ "put": {
+ "tags": [
+ "MachineExtensions"
+ ],
+ "operationId": "MachineExtensions_CreateOrUpdate",
+ "description": "The operation to create or update the extension.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine where the extension should be created or updated."
+ },
+ {
+ "name": "extensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MachineExtension"
+ },
+ "description": "Parameters supplied to the Create Machine Extension operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MachineExtension"
+ }
+ },
+ "201": {
+ "description": "HTTP 201 (Created) if the operation was successfully started and will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/MachineExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update a Machine Extension (PUT)": {
+ "$ref": "./examples/PUTExtension.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "patch": {
+ "tags": [
+ "MachineExtensions"
+ ],
+ "operationId": "MachineExtensions_Update",
+ "description": "The operation to update the extension.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine where the extension should be created or updated."
+ },
+ {
+ "name": "extensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine extension."
+ },
+ {
+ "name": "extensionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MachineExtensionUpdate"
+ },
+ "description": "Parameters supplied to the Create Machine Extension operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MachineExtension"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/MachineExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update a Machine Extension (PATCH)": {
+ "$ref": "./examples/UpdateExtension.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "tags": [
+ "MachineExtensions"
+ ],
+ "operationId": "MachineExtensions_Delete",
+ "description": "The operation to delete the extension.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine where the extension should be deleted."
+ },
+ {
+ "name": "extensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine extension."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete a Machine Extension": {
+ "$ref": "./examples/DELETEExtension.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "MachineExtensions"
+ ],
+ "operationId": "MachineExtensions_Get",
+ "description": "The operation to get the extension.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine containing the extension."
+ },
+ {
+ "name": "extensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine extension."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MachineExtension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Machine Extension": {
+ "$ref": "./examples/GETExtension.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/extensions": {
+ "get": {
+ "tags": [
+ "MachineExtensions"
+ ],
+ "operationId": "MachineExtensions_List",
+ "description": "The operation to get all extensions of a non-Azure machine",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine containing the extension."
+ },
+ {
+ "name": "$expand",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The expand expression to apply on the operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MachineExtensionsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Get all Machine Extensions": {
+ "$ref": "./examples/LISTExtension.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/upgradeExtensions": {
+ "post": {
+ "tags": [
+ "MachineExtensions Upgrade"
+ ],
+ "operationId": "UpgradeExtensions",
+ "description": "The operation to Upgrade Machine Extensions.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine containing the extension."
+ },
+ {
+ "name": "extensionUpgradeParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MachineExtensionUpgrade"
+ },
+ "description": "Parameters supplied to the Upgrade Extensions operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Upgrade Machine Extensions": {
+ "$ref": "./examples/Extensions_Upgrade.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/guestAgents/{name}": {
+ "put": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgents_Create",
+ "description": "Create Or Update GuestAgent.",
+ "summary": "Implements GuestAgent PUT method.",
+ "x-ms-examples": {
+ "CreateGuestAgent": {
+ "$ref": "./examples/CreateGuestAgent.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "in": "path",
+ "name": "name",
+ "required": true,
+ "type": "string",
+ "description": "Name of the guestAgents."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgents_Get",
+ "summary": "Gets GuestAgent.",
+ "description": "Implements GuestAgent GET method.",
+ "x-ms-examples": {
+ "GetGuestAgent": {
+ "$ref": "./examples/GetGuestAgent.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "in": "path",
+ "name": "name",
+ "required": true,
+ "type": "string",
+ "description": "Name of the GuestAgent."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgents_Delete",
+ "summary": "Deletes an GuestAgent.",
+ "description": "Implements GuestAgent DELETE method.",
+ "x-ms-examples": {
+ "DeleteGuestAgent": {
+ "$ref": "./examples/DeleteGuestAgent.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "in": "path",
+ "name": "name",
+ "required": true,
+ "type": "string",
+ "description": "Name of the GuestAgent."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachines/{virtualMachineName}/guestAgents": {
+ "get": {
+ "tags": [
+ "GuestAgents"
+ ],
+ "operationId": "GuestAgents_List",
+ "summary": "Implements GET GuestAgent in a vm.",
+ "description": "Returns the list of GuestAgent of the given vm.",
+ "x-ms-examples": {
+ "GuestAgentListByVm": {
+ "$ref": "./examples/GuestAgent_ListByVm.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/subscriptionId"
+ },
+ {
+ "$ref": "#/parameters/resourceGroupName"
+ },
+ {
+ "in": "path",
+ "name": "virtualMachineName",
+ "required": true,
+ "type": "string",
+ "description": "Name of the vm."
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/GuestAgentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default": {
+ "put": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_CreateOrUpdate",
+ "description": "The operation to create or update a virtual machine instance. Please note some properties can be set only during virtual machine instance creation.",
+ "summary": "Implements virtual machine PUT method.",
+ "x-ms-examples": {
+ "CreateVirtualMachine": {
+ "$ref": "./examples/CreateVirtualMachineInstance.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_Get",
+ "summary": "Gets a virtual machine.",
+ "description": "Retrieves information about a virtual machine instance.",
+ "x-ms-examples": {
+ "GetVirtualMachine": {
+ "$ref": "./examples/GetVirtualMachineInstance.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_Update",
+ "summary": "Updates a virtual machine.",
+ "description": "The operation to update a virtual machine instance.",
+ "x-ms-examples": {
+ "UpdateVirtualMachine": {
+ "$ref": "./examples/UpdateVirtualMachineInstance.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Resource properties to update.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstanceUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_Delete",
+ "summary": "Deletes an virtual machine.",
+ "description": "The operation to delete a virtual machine instance.",
+ "x-ms-examples": {
+ "DeleteVirtualMachine": {
+ "$ref": "./examples/DeleteVirtualMachineInstance.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "query",
+ "name": "deleteFromHost",
+ "description": "Whether to delete the VM from the vCenter.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "in": "query",
+ "name": "force",
+ "description": "Whether force delete was specified.",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances": {
+ "get": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_List",
+ "summary": "Implements List virtual machine instances.",
+ "description": "Lists all of the virtual machine instances within the specified parent resource.",
+ "x-ms-examples": {
+ "GetVirtualMachine": {
+ "$ref": "./examples/ListVirtualMachineInstances.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineInstancesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/stop": {
+ "post": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_Stop",
+ "description": "The operation to power off (stop) a virtual machine instance.",
+ "summary": "Implements the operation to stop a virtual machine.",
+ "x-ms-examples": {
+ "StopVirtualMachine": {
+ "$ref": "./examples/StopVirtualMachineInstance.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Virtualmachine stop action payload.",
+ "schema": {
+ "$ref": "#/definitions/StopVirtualMachineOptions"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/start": {
+ "post": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_Start",
+ "description": "The operation to start a virtual machine instance.",
+ "summary": "Implements the operation to start a virtual machine.",
+ "x-ms-examples": {
+ "StartVirtualMachine": {
+ "$ref": "./examples/StartVirtualMachineInstance.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/restart": {
+ "post": {
+ "tags": [
+ "VirtualMachineInstances"
+ ],
+ "operationId": "VirtualMachineInstances_Restart",
+ "description": "The operation to restart a virtual machine instance.",
+ "summary": "Implements the operation to restart a virtual machine.",
+ "x-ms-examples": {
+ "RestartVirtualMachine": {
+ "$ref": "./examples/RestartVirtualMachineInstance.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/hybridIdentityMetadata/default": {
+ "get": {
+ "tags": [
+ "VmInstanceHybridIdentityMetadata"
+ ],
+ "operationId": "VmInstanceHybridIdentityMetadata_Get",
+ "summary": "Gets HybridIdentityMetadata.",
+ "description": "Implements HybridIdentityMetadata GET method.",
+ "x-ms-examples": {
+ "GetHybridIdentityMetadata": {
+ "$ref": "./examples/GetVmInstanceHybridIdentityMetadata.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VmInstanceHybridIdentityMetadata"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/hybridIdentityMetadata": {
+ "get": {
+ "tags": [
+ "VmInstanceHybridIdentityMetadata"
+ ],
+ "operationId": "VmInstanceHybridIdentityMetadata_List",
+ "summary": "Implements GET HybridIdentityMetadata in a vm.",
+ "description": "Returns the list of HybridIdentityMetadata of the given vm.",
+ "x-ms-examples": {
+ "HybridIdentityMetadataListByVm": {
+ "$ref": "./examples/HybridIdentityMetadata_ListByVmInstance.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/VmInstanceHybridIdentityMetadataList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents/default": {
+ "put": {
+ "tags": [
+ "VMInstanceGuestAgents"
+ ],
+ "operationId": "VMInstanceGuestAgents_Create",
+ "description": "Create Or Update GuestAgent.",
+ "summary": "Implements GuestAgent PUT method.",
+ "x-ms-examples": {
+ "CreateGuestAgent": {
+ "$ref": "./examples/CreateVMInstanceGuestAgent.json"
+ }
+ },
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Request payload.",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Arm resource update successful.",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "get": {
+ "tags": [
+ "VMInstanceGuestAgents"
+ ],
+ "operationId": "VMInstanceGuestAgents_Get",
+ "summary": "Gets GuestAgent.",
+ "description": "Implements GuestAgent GET method.",
+ "x-ms-examples": {
+ "GetGuestAgent": {
+ "$ref": "./examples/GetVMInstanceGuestAgent.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "VMInstanceGuestAgents"
+ ],
+ "operationId": "VMInstanceGuestAgents_Delete",
+ "summary": "Deletes an GuestAgent.",
+ "description": "Implements GuestAgent DELETE method.",
+ "x-ms-examples": {
+ "DeleteGuestAgent": {
+ "$ref": "./examples/DeleteVMInstanceGuestAgent.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents": {
+ "get": {
+ "tags": [
+ "VMInstanceGuestAgents"
+ ],
+ "operationId": "VMInstanceGuestAgents_List",
+ "summary": "Implements GET GuestAgent in a vm.",
+ "description": "Returns the list of GuestAgent of the given vm.",
+ "x-ms-examples": {
+ "GuestAgentListByVm": {
+ "$ref": "./examples/VMInstanceGuestAgent_ListByVm.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/resourceUriParameter"
+ },
+ {
+ "$ref": "#/parameters/api-version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/GuestAgentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ResourcePatch": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags."
+ }
+ },
+ "description": "Object containing updates for patch operations."
+ },
+ "ResourcePoolProperties": {
+ "description": "Describes the properties of a Resource Pool.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this resource pool resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the resource pool.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the resource pool.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the resource pool.",
+ "type": "string",
+ "readOnly": true
+ },
+ "cpuSharesLevel": {
+ "description": "Gets or sets CPUSharesLevel which specifies the CPU allocation level for this pool.\r\nThis property is used in relative allocation between resource consumers.",
+ "type": "string",
+ "readOnly": true
+ },
+ "cpuReservationMHz": {
+ "format": "int64",
+ "description": "Gets or sets CPUReservationMHz which specifies the CPU size in MHz that is guaranteed\r\nto be available.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "cpuLimitMHz": {
+ "format": "int64",
+ "description": "Gets or sets CPULimitMHz which specifies a CPU usage limit in MHz.\r\nUtilization will not exceed this limit even if there are available resources.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "memSharesLevel": {
+ "description": "Gets or sets CPUSharesLevel which specifies the memory allocation level for this pool.\r\nThis property is used in relative allocation between resource consumers.",
+ "type": "string",
+ "readOnly": true
+ },
+ "memReservationMB": {
+ "format": "int64",
+ "description": "Gets or sets MemReservationMB which specifies the guaranteed available memory in\r\nmegabytes.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "memLimitMB": {
+ "format": "int64",
+ "description": "Gets or sets MemLimitMB specifies a memory usage limit in megabytes.\r\nUtilization will not exceed the specified limit even if there are available resources.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "memOverallUsageGB": {
+ "format": "int64",
+ "description": "Gets the used physical memory on the pool in GB.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "memCapacityGB": {
+ "format": "int64",
+ "description": "Gets the total amount of physical memory on the pool in GB.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "cpuOverallUsageMHz": {
+ "format": "int64",
+ "description": "Gets the used CPU usage across all cores on the pool in MHz.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "cpuCapacityMHz": {
+ "format": "int64",
+ "description": "Gets the max CPU usage across all cores on the pool in MHz.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "datastoreIds": {
+ "description": "Gets the datastore ARM ids.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "networkIds": {
+ "description": "Gets the network ARM ids.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "ResourcePool": {
+ "description": "Define the resourcePool.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/ResourcePoolProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "ResourcePoolsList": {
+ "description": "List of ResourcePools.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of ResourcePools.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of ResourcePools",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourcePool"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "VICredential": {
+ "description": "Username / Password Credentials to connect to vcenter.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "Gets or sets username to connect with the vCenter.",
+ "type": "string"
+ },
+ "password": {
+ "description": "Gets or sets the password to connect with the vCenter.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "ResourceStatus": {
+ "description": "The resource status information.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of the condition.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the condition.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reason": {
+ "description": "The reason for the condition's status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "A human readable message indicating details about the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "severity": {
+ "description": "Severity with which to treat failures of this type of condition.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastUpdatedAt": {
+ "description": "The last update time for this condition.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "VCenterProperties": {
+ "description": "Describes the properties of a VCenter.",
+ "required": [
+ "fqdn"
+ ],
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "fqdn": {
+ "description": "Gets or sets the FQDN/IPAddress of the vCenter.",
+ "type": "string"
+ },
+ "port": {
+ "format": "int32",
+ "description": "Gets or sets the port of the vCenter.",
+ "maximum": 65535,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "version": {
+ "description": "Gets or sets the version of the vCenter.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceUuid": {
+ "description": "Gets or sets the instance UUID of the vCenter.",
+ "type": "string",
+ "readOnly": true
+ },
+ "connectionStatus": {
+ "description": "Gets or sets the connection status to the vCenter.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "credentials": {
+ "description": "Username / Password Credentials to connect to vcenter.",
+ "$ref": "#/definitions/VICredential"
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "VirtualDiskUpdate": {
+ "description": "Defines the virtual disk update.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Gets or sets the name of the virtual disk.",
+ "type": "string"
+ },
+ "diskSizeGB": {
+ "format": "int32",
+ "description": "Gets or sets the disk total size.",
+ "type": "integer"
+ },
+ "deviceKey": {
+ "format": "int32",
+ "description": "Gets or sets the device key value.",
+ "type": "integer"
+ },
+ "diskMode": {
+ "description": "Gets or sets the disk mode.",
+ "$ref": "#/definitions/DiskMode"
+ },
+ "controllerKey": {
+ "description": "Gets or sets the controller id.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "unitNumber": {
+ "description": "Gets or sets the unit number of the disk on the controller.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "deviceName": {
+ "description": "Gets or sets the device name.",
+ "type": "string"
+ },
+ "diskType": {
+ "description": "Gets or sets the disk backing type.",
+ "$ref": "#/definitions/DiskType"
+ }
+ }
+ },
+ "VirtualDisk": {
+ "description": "Virtual disk model",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Gets or sets the name of the virtual disk.",
+ "type": "string"
+ },
+ "label": {
+ "description": "Gets or sets the label of the virtual disk in vCenter.",
+ "type": "string",
+ "readOnly": true
+ },
+ "diskObjectId": {
+ "description": "Gets or sets the disk object id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "diskSizeGB": {
+ "format": "int32",
+ "description": "Gets or sets the disk total size.",
+ "type": "integer"
+ },
+ "deviceKey": {
+ "format": "int32",
+ "description": "Gets or sets the device key value.",
+ "type": "integer"
+ },
+ "diskMode": {
+ "description": "Gets or sets the disk mode.",
+ "$ref": "#/definitions/DiskMode"
+ },
+ "controllerKey": {
+ "description": "Gets or sets the controller id.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "unitNumber": {
+ "description": "Gets or sets the unit number of the disk on the controller.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "deviceName": {
+ "description": "Gets or sets the device name.",
+ "type": "string"
+ },
+ "diskType": {
+ "description": "Gets or sets the disk backing type.",
+ "$ref": "#/definitions/DiskType"
+ }
+ }
+ },
+ "Condition": {
+ "description": "Condition defines an extension to status.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "Status of the condition.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reason": {
+ "description": "The reason for the condition's status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "A human readable message indicating details about the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "severity": {
+ "description": "Severity with which to treat failures of this type of condition.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "VCenter": {
+ "description": "Defines the vCenter.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VCenterProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "VCentersList": {
+ "description": "List of VCenters.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of VCenters.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of VCenters",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VCenter"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "OsType": {
+ "description": "Defines the different types of VM guest operating systems.",
+ "enum": [
+ "Windows",
+ "Linux",
+ "Other"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "OsType"
+ }
+ },
+ "PatchSettings": {
+ "type": "object",
+ "properties": {
+ "assessmentMode": {
+ "type": "string",
+ "description": "Specifies the assessment mode."
+ },
+ "patchMode": {
+ "type": "string",
+ "description": "Specifies the patch mode."
+ }
+ },
+ "description": "Specifies the patch settings."
+ },
+ "OsProfile": {
+ "description": "Specifies the operating system settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "computerName": {
+ "description": "Gets or sets computer name.",
+ "type": "string"
+ },
+ "adminUsername": {
+ "description": "Gets or sets administrator username.",
+ "type": "string"
+ },
+ "adminPassword": {
+ "description": "Gets or sets administrator password.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "guestId": {
+ "description": "Gets or sets the guestId.",
+ "type": "string"
+ },
+ "allowExtensionOperations": {
+ "description": "Gets or sets a value indicating whether the VM is ready for extension operations.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "osType": {
+ "description": "Gets or sets the type of the os.",
+ "$ref": "#/definitions/OsType"
+ },
+ "osName": {
+ "description": "Gets or sets os name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsRunningStatus": {
+ "description": "Gets or sets the current running status of VMware Tools running in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersionStatus": {
+ "description": "Gets or sets the current version status of VMware Tools installed in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersion": {
+ "description": "Gets or sets the current version of VMware Tools.",
+ "type": "string",
+ "readOnly": true
+ },
+ "windowsConfiguration": {
+ "type": "object",
+ "properties": {
+ "patchSettings": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/PatchSettings"
+ }
+ },
+ "description": "Specifies the windows configuration for update management."
+ },
+ "linuxConfiguration": {
+ "type": "object",
+ "properties": {
+ "patchSettings": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/PatchSettings"
+ }
+ },
+ "description": "Specifies the linux configuration for update management."
+ }
+ }
+ },
+ "OsProfileForVMInstance": {
+ "description": "Specifies the operating system settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "computerName": {
+ "description": "Gets or sets computer name.",
+ "type": "string"
+ },
+ "adminUsername": {
+ "description": "Gets or sets administrator username.",
+ "type": "string"
+ },
+ "adminPassword": {
+ "description": "Sets administrator password.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ },
+ "guestId": {
+ "description": "Gets or sets the guestId.",
+ "type": "string"
+ },
+ "osType": {
+ "description": "Gets or sets the type of the os.",
+ "$ref": "#/definitions/OsType"
+ },
+ "osSku": {
+ "description": "Gets or sets os sku.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsRunningStatus": {
+ "description": "Gets or sets the current running status of VMware Tools running in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersionStatus": {
+ "description": "Gets or sets the current version status of VMware Tools installed in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersion": {
+ "description": "Gets or sets the current version of VMware Tools.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "OsProfileUpdate": {
+ "description": "Specifies the operating system settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "windowsConfiguration": {
+ "type": "object",
+ "properties": {
+ "patchSettings": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/PatchSettings"
+ }
+ },
+ "description": "Specifies the windows configuration for update management."
+ },
+ "linuxConfiguration": {
+ "type": "object",
+ "properties": {
+ "patchSettings": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/PatchSettings"
+ }
+ },
+ "description": "Specifies the linux configuration for update management."
+ }
+ }
+ },
+ "HardwareProfile": {
+ "description": "Specifies the hardware settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "memorySizeMB": {
+ "format": "int32",
+ "description": "Gets or sets memory size in MBs for the vm.",
+ "type": "integer"
+ },
+ "numCPUs": {
+ "format": "int32",
+ "description": "Gets or sets the number of vCPUs for the vm.",
+ "type": "integer"
+ },
+ "numCoresPerSocket": {
+ "format": "int32",
+ "description": "Gets or sets the number of cores per socket for the vm. Defaults to 1 if unspecified.",
+ "type": "integer"
+ },
+ "cpuHotAddEnabled": {
+ "description": "Gets or sets a value indicating whether virtual processors can be added while this virtual machine is running.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "cpuHotRemoveEnabled": {
+ "description": "Gets or sets a value indicating whether virtual processors can be removed while this virtual machine is running.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "memoryHotAddEnabled": {
+ "description": "Gets or sets a value indicating whether memory can be added while this virtual machine is running.",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "NetworkProfileUpdate": {
+ "description": "Specifies the network interfaces of the virtual machine.",
+ "type": "object",
+ "properties": {
+ "networkInterfaces": {
+ "description": "Gets or sets the list of network interfaces associated with the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInterfaceUpdate"
+ }
+ }
+ }
+ },
+ "NetworkProfile": {
+ "description": "Specifies the network interfaces of the virtual machine.",
+ "type": "object",
+ "properties": {
+ "networkInterfaces": {
+ "description": "Gets or sets the list of network interfaces associated with the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInterface"
+ }
+ }
+ }
+ },
+ "SCSIControllerType": {
+ "description": "Defines the different types of SCSI controllers.",
+ "enum": [
+ "lsilogic",
+ "buslogic",
+ "pvscsi",
+ "lsilogicsas"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SCSIControllerType"
+ }
+ },
+ "VirtualSCSISharing": {
+ "description": "Defines the sharing mode for sharing the SCSI bus.",
+ "enum": [
+ "noSharing",
+ "physicalSharing",
+ "virtualSharing"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualSCSISharing"
+ }
+ },
+ "VirtualSCSIController": {
+ "description": "This data object type contains the properties of a SCSI controller device attached to a virtual machine that is reported by the controller.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Gets or sets the controller type.",
+ "$ref": "#/definitions/SCSIControllerType"
+ },
+ "controllerKey": {
+ "format": "int32",
+ "description": "Gets or sets the key of the controller.",
+ "type": "integer"
+ },
+ "busNumber": {
+ "format": "int32",
+ "description": "Gets or sets the bus number of the controller.",
+ "type": "integer"
+ },
+ "scsiCtlrUnitNumber": {
+ "format": "int32",
+ "description": "Gets or sets the SCSI controller unit number.",
+ "type": "integer"
+ },
+ "sharing": {
+ "description": "Gets or sets the sharing mode.",
+ "$ref": "#/definitions/VirtualSCSISharing"
+ }
+ }
+ },
+ "StorageProfile": {
+ "description": "Specifies the storage settings for the virtual machine disks.",
+ "type": "object",
+ "properties": {
+ "disks": {
+ "description": "Gets or sets the list of virtual disks associated with the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualDisk"
+ }
+ },
+ "scsiControllers": {
+ "description": "Gets or sets the list of virtual SCSI controllers associated with the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualSCSIController"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "StorageProfileUpdate": {
+ "description": "Specifies the storage settings for the virtual machine disks.",
+ "type": "object",
+ "properties": {
+ "disks": {
+ "description": "Gets or sets the list of virtual disks associated with the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualDiskUpdate"
+ }
+ }
+ }
+ },
+ "GuestAgentProfile": {
+ "description": "Specifies the guest agent settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "vmUuid": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies the VM's unique SMBIOS ID."
+ },
+ "status": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The status of the hybrid machine agent.",
+ "enum": [
+ "Connected",
+ "Disconnected",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "name": "StatusTypes",
+ "modelAsString": true
+ }
+ },
+ "lastStatusChange": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The time of the last status change."
+ },
+ "clientPublicKey": {
+ "description": "Gets or sets the Public Key provided by the client for enabling guest management.",
+ "type": "string"
+ },
+ "mssqlDiscovered": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Specifies whether any MS SQL instance is discovered on the machine."
+ },
+ "agentVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The hybrid machine agent full version."
+ },
+ "errorDetails": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail"
+ },
+ "description": "Details about the error state."
+ }
+ }
+ },
+ "GuestAgentProfileUpdate": {
+ "description": "Specifies the guest agent settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "clientPublicKey": {
+ "description": "Gets or sets the Public Key provided by the client for enabling guest management.",
+ "type": "string"
+ }
+ }
+ },
+ "PlacementProfile": {
+ "description": "Specifies the compute and storage placement settings for the virtual machine.",
+ "type": "object",
+ "properties": {
+ "resourcePoolId": {
+ "type": "string",
+ "description": "Gets or sets the ARM Id of the resourcePool resource on which this virtual machine will deploy."
+ },
+ "clusterId": {
+ "type": "string",
+ "description": "Gets or sets the ARM Id of the cluster resource on which this virtual machine will deploy."
+ },
+ "hostId": {
+ "type": "string",
+ "description": "Gets or sets the ARM Id of the host resource on which this virtual machine will deploy."
+ },
+ "datastoreId": {
+ "type": "string",
+ "description": "Gets or sets the ARM Id of the datastore resource on which the data for the virtual machine will be kept."
+ }
+ }
+ },
+ "UefiSettings": {
+ "type": "object",
+ "properties": {
+ "secureBootEnabled": {
+ "type": "boolean",
+ "description": "Specifies whether secure boot should be enabled on the virtual machine."
+ }
+ },
+ "description": "Specifies the security settings like secure boot used while creating the virtual machine."
+ },
+ "SecurityProfile": {
+ "type": "object",
+ "properties": {
+ "uefiSettings": {
+ "$ref": "#/definitions/UefiSettings",
+ "description": "Specifies the security settings like secure boot used while creating the virtual machine."
+ }
+ },
+ "description": "Specifies the Security profile settings for the virtual machine."
+ },
+ "InfrastructureProfile": {
+ "type": "object",
+ "properties": {
+ "templateId": {
+ "description": "Gets or sets the ARM Id of the template resource to deploy the virtual machine.",
+ "type": "string"
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this resource pool resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the virtual machine.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "folderPath": {
+ "description": "Gets or sets the folder path of the vm.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceUuid": {
+ "description": "Gets or sets the instance uuid of the vm.",
+ "type": "string",
+ "readOnly": true
+ },
+ "smbiosUuid": {
+ "type": "string",
+ "description": "Gets or sets the SMBIOS UUID of the vm."
+ },
+ "firmwareType": {
+ "description": "Firmware type",
+ "$ref": "#/definitions/FirmwareType"
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "description": "Specifies the vCenter infrastructure specific settings for the virtual machine."
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "description": "The extended location.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The extended location type."
+ },
+ "name": {
+ "type": "string",
+ "description": "The extended location name."
+ }
+ }
+ },
+ "VirtualMachineProperties": {
+ "description": "Describes the properties of a Virtual Machine.",
+ "type": "object",
+ "properties": {
+ "resourcePoolId": {
+ "description": "Gets or sets the ARM Id of the resourcePool resource on which this virtual machine will\r\ndeploy.",
+ "type": "string"
+ },
+ "templateId": {
+ "description": "Gets or sets the ARM Id of the template resource to deploy the virtual machine.",
+ "type": "string"
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this resource pool resides.",
+ "type": "string"
+ },
+ "placementProfile": {
+ "description": "Placement properties.",
+ "$ref": "#/definitions/PlacementProfile"
+ },
+ "osProfile": {
+ "description": "OS properties.",
+ "$ref": "#/definitions/OsProfile"
+ },
+ "hardwareProfile": {
+ "description": "Hardware properties.",
+ "$ref": "#/definitions/HardwareProfile"
+ },
+ "networkProfile": {
+ "description": "Network properties.",
+ "$ref": "#/definitions/NetworkProfile"
+ },
+ "storageProfile": {
+ "description": "Storage properties.",
+ "$ref": "#/definitions/StorageProfile"
+ },
+ "guestAgentProfile": {
+ "description": "Guest agent status properties.",
+ "$ref": "#/definitions/GuestAgentProfile"
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/SecurityProfile",
+ "description": "Gets the security profile."
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the virtual machine.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the virtual machine.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "folderPath": {
+ "description": "Gets or sets the folder path of the vm.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceUuid": {
+ "description": "Gets or sets the instance uuid of the vm.",
+ "type": "string",
+ "readOnly": true
+ },
+ "smbiosUuid": {
+ "type": "string",
+ "description": "Gets or sets the SMBIOS UUID of the vm."
+ },
+ "firmwareType": {
+ "description": "Firmware type",
+ "$ref": "#/definitions/FirmwareType"
+ },
+ "powerState": {
+ "description": "Gets the power state of the virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ },
+ "vmId": {
+ "description": "Gets or sets a unique identifier for the vm resource.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "VirtualMachineInstanceProperties": {
+ "description": "Describes the properties of a Virtual Machine Instance.",
+ "type": "object",
+ "properties": {
+ "placementProfile": {
+ "description": "Placement properties.",
+ "$ref": "#/definitions/PlacementProfile"
+ },
+ "osProfile": {
+ "description": "OS properties.",
+ "$ref": "#/definitions/OsProfileForVMInstance"
+ },
+ "hardwareProfile": {
+ "description": "Hardware properties.",
+ "$ref": "#/definitions/HardwareProfile"
+ },
+ "networkProfile": {
+ "description": "Network properties.",
+ "$ref": "#/definitions/NetworkProfile"
+ },
+ "storageProfile": {
+ "description": "Storage properties.",
+ "$ref": "#/definitions/StorageProfile"
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/SecurityProfile",
+ "description": "Gets the security profile."
+ },
+ "infrastructureProfile": {
+ "$ref": "#/definitions/InfrastructureProfile",
+ "description": "Gets the infrastructure profile."
+ },
+ "powerState": {
+ "description": "Gets the power state of the virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ },
+ "resourceUid": {
+ "description": "Gets or sets a unique identifier for the vm resource.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "VirtualMachine": {
+ "description": "Define the virtualMachine.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VirtualMachineProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ },
+ "identity": {
+ "$ref": "#/definitions/Identity",
+ "description": "The identity of the resource."
+ }
+ }
+ },
+ "VirtualMachineInstance": {
+ "description": "Define the virtualMachineInstance.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VirtualMachineInstanceProperties"
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ }
+ }
+ },
+ "VirtualMachineUpdateProperties": {
+ "description": "Describes the properties of a Virtual Machine.",
+ "type": "object",
+ "properties": {
+ "hardwareProfile": {
+ "$ref": "#/definitions/HardwareProfile"
+ },
+ "osProfile": {
+ "description": "OS properties.",
+ "$ref": "#/definitions/OsProfileUpdate"
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/StorageProfileUpdate"
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/NetworkProfileUpdate"
+ },
+ "guestAgentProfile": {
+ "$ref": "#/definitions/GuestAgentProfileUpdate"
+ }
+ }
+ },
+ "VirtualMachineInstanceUpdateProperties": {
+ "description": "Describes the properties of a Virtual Machine.",
+ "type": "object",
+ "properties": {
+ "hardwareProfile": {
+ "$ref": "#/definitions/HardwareProfile"
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/StorageProfileUpdate"
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/NetworkProfileUpdate"
+ }
+ }
+ },
+ "VirtualMachineUpdate": {
+ "description": "Defines the virtualMachineUpdate.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VirtualMachineUpdateProperties"
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "identity": {
+ "$ref": "#/definitions/Identity",
+ "description": "The identity of the resource."
+ }
+ }
+ },
+ "VirtualMachineInstanceUpdate": {
+ "description": "Defines the virtualMachineInstanceUpdate.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VirtualMachineInstanceUpdateProperties"
+ }
+ }
+ },
+ "VirtualMachinesList": {
+ "description": "List of VirtualMachines.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of VirtualMachines.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of VirtualMachines",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "VirtualMachineInstancesList": {
+ "description": "List of VirtualMachineInstances.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of VirtualMachines.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of VirtualMachines",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineInstance"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "StopVirtualMachineOptions": {
+ "description": "Defines the stop action properties.",
+ "type": "object",
+ "properties": {
+ "skipShutdown": {
+ "description": "Gets or sets a value indicating whether to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Defaults to false.",
+ "type": "boolean",
+ "default": false
+ }
+ }
+ },
+ "VirtualMachineTemplateProperties": {
+ "description": "Describes the properties of a Virtual Machine Template.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this template resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the virtual machine\r\ntemplate.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the virtual machine template.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the virtual machine template.",
+ "type": "string",
+ "readOnly": true
+ },
+ "memorySizeMB": {
+ "format": "int32",
+ "description": "Gets or sets memory size in MBs for the template.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "numCPUs": {
+ "format": "int32",
+ "description": "Gets or sets the number of vCPUs for the template.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "numCoresPerSocket": {
+ "format": "int32",
+ "description": "Gets or sets the number of cores per socket for the template.\r\nDefaults to 1 if unspecified.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "osType": {
+ "description": "Gets or sets the type of the os.",
+ "$ref": "#/definitions/OsType",
+ "readOnly": true
+ },
+ "osName": {
+ "description": "Gets or sets os name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "folderPath": {
+ "description": "Gets or sets the folder path of the template.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkInterfaces": {
+ "description": "Gets or sets the network interfaces of the template.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInterface"
+ },
+ "readOnly": true
+ },
+ "disks": {
+ "description": "Gets or sets the disks the template.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualDisk"
+ },
+ "readOnly": true
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersionStatus": {
+ "description": "Gets or sets the current version status of VMware Tools installed in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersion": {
+ "description": "Gets or sets the current version of VMware Tools.",
+ "type": "string",
+ "readOnly": true
+ },
+ "firmwareType": {
+ "description": "Firmware type",
+ "$ref": "#/definitions/FirmwareType",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterProperties": {
+ "description": "Describes the properties of a Cluster.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this cluster resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the cluster.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the cluster.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usedMemoryGB": {
+ "format": "int64",
+ "description": "Gets the used physical memory on the cluster in GB.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "totalMemoryGB": {
+ "format": "int64",
+ "description": "Gets the total amount of physical memory on the cluster in GB.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "usedCpuMHz": {
+ "format": "int64",
+ "description": "Gets the used CPU usage across all cores on the cluster in MHz.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "totalCpuMHz": {
+ "format": "int64",
+ "description": "Gets the max CPU usage across all cores on the cluster in MHz.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "datastoreIds": {
+ "description": "Gets the datastore ARM ids.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "networkIds": {
+ "description": "Gets the network ARM ids.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "Cluster": {
+ "description": "Define the cluster.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/ClusterProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "ClustersList": {
+ "description": "List of Clusters.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of Clusters.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of Clusters",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Cluster"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "HostProperties": {
+ "description": "Describes the properties of a Host.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this host resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the host.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the host.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the host.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "overallMemoryUsageGB": {
+ "format": "int64",
+ "description": "Gets the used physical memory on the host in GB.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "memorySizeGB": {
+ "format": "int64",
+ "description": "Gets the total amount of physical memory on the host in GB.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "overallCpuUsageMHz": {
+ "format": "int64",
+ "description": "Gets the used CPU usage across all cores in MHz.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "cpuMhz": {
+ "format": "int64",
+ "description": "Gets the max CPU usage across all cores in MHz.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "datastoreIds": {
+ "description": "Gets the datastore ARM ids.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "networkIds": {
+ "description": "Gets the network ARM ids.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "Host": {
+ "description": "Define the host.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/HostProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "HostsList": {
+ "description": "List of Hosts.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of Hosts.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of Hosts",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Host"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "DatastoreProperties": {
+ "description": "Describes the properties of a Datastore.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this datastore resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the datastore.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the datastore.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the datastore.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "capacityGB": {
+ "description": "Gets or sets Maximum capacity of this datastore in GBs.",
+ "format": "int64",
+ "type": "integer",
+ "readOnly": true
+ },
+ "freeSpaceGB": {
+ "description": "Gets or sets Available space of this datastore in GBs.",
+ "format": "int64",
+ "type": "integer",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Provisioning state of the resource.",
+ "readOnly": true
+ }
+ }
+ },
+ "ResourceProvisioningState": {
+ "type": "string",
+ "description": "The current deployment state of resource.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Updating",
+ "Deleting",
+ "Accepted",
+ "Created"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "Datastore": {
+ "description": "Define the datastore.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/DatastoreProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "DatastoresList": {
+ "description": "List of Datastores.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of Datastores.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of Datastores",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Datastore"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "VirtualMachineTemplate": {
+ "description": "Define the virtualMachineTemplate.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VirtualMachineTemplateProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "VirtualMachineTemplatesList": {
+ "description": "List of VirtualMachineTemplates.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of VirtualMachineTemplates.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of VirtualMachineTemplates",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachineTemplate"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "VirtualNetworkProperties": {
+ "description": "Describes the properties of a Virtual Network.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vCenterId": {
+ "description": "Gets or sets the ARM Id of the vCenter resource in which this template resides.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID for the virtual network.",
+ "type": "string"
+ },
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the virtual network.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the virtual network.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "VirtualNetwork": {
+ "description": "Define the virtualNetwork.",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VirtualNetworkProperties"
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Gets or sets the extended location."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ }
+ },
+ "VirtualNetworksList": {
+ "description": "List of VirtualNetworks.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of VirtualNetworks.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of VirtualNetworks",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualNetwork"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "NetworkInterfaceUpdate": {
+ "description": "Defines the network interface update.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Gets or sets the name of the network interface.",
+ "type": "string"
+ },
+ "networkId": {
+ "description": "Gets or sets the ARM Id of the network resource to connect the virtual machine.",
+ "type": "string"
+ },
+ "nicType": {
+ "description": "NIC type",
+ "$ref": "#/definitions/NICType"
+ },
+ "powerOnBoot": {
+ "description": "Gets or sets the power on boot.",
+ "$ref": "#/definitions/PowerOnBootOption"
+ },
+ "deviceKey": {
+ "format": "int32",
+ "description": "Gets or sets the device key value.",
+ "type": "integer"
+ }
+ }
+ },
+ "NetworkInterface": {
+ "description": "Network Interface model",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Gets or sets the name of the network interface.",
+ "type": "string"
+ },
+ "label": {
+ "description": "Gets or sets the label of the virtual network in vCenter that the nic is connected to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "ipAddresses": {
+ "description": "Gets or sets the nic ip addresses.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "macAddress": {
+ "description": "Gets or sets the NIC MAC address.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkId": {
+ "description": "Gets or sets the ARM Id of the network resource to connect the virtual machine.",
+ "type": "string"
+ },
+ "nicType": {
+ "description": "NIC type",
+ "$ref": "#/definitions/NICType"
+ },
+ "powerOnBoot": {
+ "description": "Gets or sets the power on boot.",
+ "$ref": "#/definitions/PowerOnBootOption"
+ },
+ "networkMoRefId": {
+ "description": "Gets or sets the vCenter MoRef (Managed Object Reference) ID of the virtual network\r\nthat the nic is connected to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkMoName": {
+ "description": "Gets or sets the name of the virtual network in vCenter that the nic is connected to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "deviceKey": {
+ "format": "int32",
+ "description": "Gets or sets the device key value.",
+ "type": "integer"
+ },
+ "ipSettings": {
+ "description": "Gets or sets the ipsettings.",
+ "$ref": "#/definitions/NicIPSettings"
+ }
+ }
+ },
+ "PowerOnBootOption": {
+ "description": "Defines the options for power on boot.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "PowerOnBootOption"
+ }
+ },
+ "DiskMode": {
+ "description": "Defines the different types of disk modes.",
+ "enum": [
+ "persistent",
+ "independent_persistent",
+ "independent_nonpersistent"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DiskMode"
+ }
+ },
+ "DiskType": {
+ "description": "Defines the different types of disks.",
+ "enum": [
+ "flat",
+ "pmem",
+ "rawphysical",
+ "rawvirtual",
+ "sparse",
+ "sesparse",
+ "unknown"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DiskType"
+ }
+ },
+ "NICType": {
+ "description": "NIC type",
+ "type": "string",
+ "enum": [
+ "vmxnet3",
+ "vmxnet2",
+ "vmxnet",
+ "e1000",
+ "e1000e",
+ "pcnet32"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "NICType"
+ }
+ },
+ "FirmwareType": {
+ "description": "Firmware type",
+ "type": "string",
+ "enum": [
+ "bios",
+ "efi"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "FirmwareType"
+ }
+ },
+ "IPAddressAllocationMethod": {
+ "description": "IP address allocation method.",
+ "enum": [
+ "unset",
+ "dynamic",
+ "static",
+ "linklayer",
+ "random",
+ "other"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IPAddressAllocationMethod"
+ }
+ },
+ "NicIPAddressSettings": {
+ "description": "IP address information for a virtual network adapter reported by the fabric.",
+ "type": "object",
+ "properties": {
+ "allocationMethod": {
+ "description": "Gets the ip address allocation method.",
+ "type": "string",
+ "readOnly": true
+ },
+ "ipAddress": {
+ "description": "Gets the ip address for the nic.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subnetMask": {
+ "description": "Gets the mask.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "NicIPSettings": {
+ "description": "Defines the network interface ip settings.",
+ "type": "object",
+ "properties": {
+ "allocationMethod": {
+ "description": "Gets or sets the nic allocation method.",
+ "$ref": "#/definitions/IPAddressAllocationMethod"
+ },
+ "dnsServers": {
+ "description": "Gets or sets the dns servers.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "gateway": {
+ "description": "Gets or sets the gateway.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "ipAddress": {
+ "description": "Gets or sets the ip address for the nic.",
+ "type": "string"
+ },
+ "subnetMask": {
+ "description": "Gets or sets the mask.",
+ "type": "string"
+ },
+ "primaryWinsServer": {
+ "description": "Gets or sets the primary server.",
+ "type": "string",
+ "readOnly": true
+ },
+ "secondaryWinsServer": {
+ "description": "Gets or sets the secondary server.",
+ "type": "string",
+ "readOnly": true
+ },
+ "ipAddressInfo": {
+ "description": "Gets or sets the IP address information being reported for this NIC. This contains the same IPv4 information above plus IPV6 information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NicIPAddressSettings"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "operation": {
+ "description": "Operation provided by provider",
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of the operation"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is data action or not.",
+ "type": "boolean"
+ },
+ "display": {
+ "type": "object",
+ "description": "Properties of the operation",
+ "properties": {
+ "provider": {
+ "type": "string",
+ "description": "Provider name"
+ },
+ "resource": {
+ "type": "string",
+ "description": "Resource name"
+ },
+ "operation": {
+ "type": "string",
+ "description": "Operation name"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the operation"
+ }
+ }
+ }
+ }
+ },
+ "operationsList": {
+ "description": "Lists the operations available.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of operations",
+ "type": "array",
+ "items": {
+ "description": "Operation.",
+ "$ref": "#/definitions/operation"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "InventoryItemsList": {
+ "description": "List of InventoryItems.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of InventoryItems.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of InventoryItems",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InventoryItem"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "InventoryItem": {
+ "description": "Defines the inventory item.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/InventoryItemProperties"
+ },
+ "kind": {
+ "type": "string",
+ "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "InventoryItemProperties": {
+ "description": "Describes the properties of an Inventory Item.",
+ "required": [
+ "inventoryType"
+ ],
+ "discriminator": "inventoryType",
+ "type": "object",
+ "properties": {
+ "inventoryType": {
+ "description": "They inventory type.",
+ "$ref": "#/definitions/InventoryType"
+ },
+ "managedResourceId": {
+ "description": "Gets or sets the tracked resource id corresponding to the inventory resource.",
+ "type": "string"
+ },
+ "moRefId": {
+ "description": "Gets or sets the MoRef (Managed Object Reference) ID for the inventory item.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the inventory item.",
+ "type": "string"
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "ResourcePoolInventoryItem": {
+ "description": "The resource pool inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "properties": {
+ "parent": {
+ "description": "Parent resourcePool inventory resource details.",
+ "$ref": "#/definitions/InventoryItemDetails"
+ }
+ },
+ "x-ms-discriminator-value": "ResourcePool"
+ },
+ "VirtualMachineInventoryItem": {
+ "description": "The VM inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "properties": {
+ "osType": {
+ "description": "Gets or sets the type of the os.",
+ "$ref": "#/definitions/OsType"
+ },
+ "osName": {
+ "description": "Gets or sets os name.",
+ "type": "string"
+ },
+ "ipAddresses": {
+ "description": "Gets or sets the nic ip addresses.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "folderPath": {
+ "description": "Gets or sets the folder path of the vm.",
+ "type": "string"
+ },
+ "host": {
+ "description": "Host inventory resource details.",
+ "$ref": "#/definitions/InventoryItemDetails"
+ },
+ "resourcePool": {
+ "description": "ResourcePool inventory resource details.",
+ "$ref": "#/definitions/InventoryItemDetails"
+ },
+ "cluster": {
+ "description": "Cluster inventory resource details.",
+ "$ref": "#/definitions/InventoryItemDetails"
+ },
+ "instanceUuid": {
+ "description": "Gets or sets the instance uuid of the vm.",
+ "type": "string"
+ },
+ "smbiosUuid": {
+ "type": "string",
+ "description": "Gets or sets the SMBIOS UUID of the vm."
+ },
+ "powerState": {
+ "description": "Gets the power state of the virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsRunningStatus": {
+ "description": "Gets or sets the current running status of VMware Tools running in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersionStatus": {
+ "description": "Gets or sets the current version status of VMware Tools installed in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersion": {
+ "description": "Gets or sets the current version of VMware Tools.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "x-ms-discriminator-value": "VirtualMachine"
+ },
+ "VirtualMachineTemplateInventoryItem": {
+ "description": "The VM Template inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "properties": {
+ "memorySizeMB": {
+ "format": "int32",
+ "description": "Gets or sets memory size in MBs for the template.",
+ "type": "integer"
+ },
+ "numCPUs": {
+ "format": "int32",
+ "description": "Gets or sets the number of vCPUs for the template.",
+ "type": "integer"
+ },
+ "numCoresPerSocket": {
+ "format": "int32",
+ "description": "Gets or sets the number of cores per socket for the template.\r\nDefaults to 1 if unspecified.",
+ "type": "integer"
+ },
+ "osType": {
+ "description": "Gets or sets the type of the os.",
+ "$ref": "#/definitions/OsType"
+ },
+ "osName": {
+ "description": "Gets or sets os name.",
+ "type": "string"
+ },
+ "toolsVersionStatus": {
+ "description": "Gets or sets the current version status of VMware Tools installed in the guest operating system.",
+ "type": "string",
+ "readOnly": true
+ },
+ "toolsVersion": {
+ "description": "Gets or sets the current version of VMware Tools.",
+ "type": "string",
+ "readOnly": true
+ },
+ "folderPath": {
+ "description": "Gets or sets the folder path of the template.",
+ "type": "string"
+ }
+ },
+ "x-ms-discriminator-value": "VirtualMachineTemplate"
+ },
+ "VirtualNetworkInventoryItem": {
+ "description": "The Virtual network inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "VirtualNetwork"
+ },
+ "ClusterInventoryItem": {
+ "description": "The cluster inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "Cluster"
+ },
+ "DatastoreInventoryItem": {
+ "description": "The datastore inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "properties": {
+ "capacityGB": {
+ "format": "int64",
+ "description": "Gets or sets Maximum capacity of this datastore, in GBs.",
+ "type": "integer"
+ },
+ "freeSpaceGB": {
+ "format": "int64",
+ "description": "Gets or sets Available space of this datastore, in GBs.",
+ "type": "integer"
+ }
+ },
+ "x-ms-discriminator-value": "Datastore"
+ },
+ "HostInventoryItem": {
+ "description": "The host inventory item.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InventoryItemProperties"
+ }
+ ],
+ "properties": {
+ "parent": {
+ "description": "Parent host inventory resource details.",
+ "$ref": "#/definitions/InventoryItemDetails"
+ }
+ },
+ "x-ms-discriminator-value": "Host"
+ },
+ "InventoryType": {
+ "type": "string",
+ "description": "The inventory type.",
+ "enum": [
+ "ResourcePool",
+ "VirtualMachine",
+ "VirtualMachineTemplate",
+ "VirtualNetwork",
+ "Cluster",
+ "Datastore",
+ "Host"
+ ],
+ "x-ms-enum": {
+ "name": "InventoryType",
+ "modelAsString": true
+ }
+ },
+ "InventoryItemDetails": {
+ "description": "Describes the properties of an Inventory Item reference.",
+ "type": "object",
+ "properties": {
+ "inventoryItemId": {
+ "description": "Gets or sets the inventory Item ID for the resource.",
+ "type": "string"
+ },
+ "moName": {
+ "description": "Gets or sets the vCenter Managed Object name for the resource.",
+ "type": "string"
+ },
+ "inventoryType": {
+ "description": "The inventory type.",
+ "$ref": "#/definitions/InventoryType"
+ }
+ }
+ },
+ "HybridIdentityMetadataList": {
+ "description": "List of HybridIdentityMetadata.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of HybridIdentityMetadata.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of HybridIdentityMetadata",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HybridIdentityMetadata"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "HybridIdentityMetadata": {
+ "description": "Defines the HybridIdentityMetadata.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/HybridIdentityMetadataProperties"
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "HybridIdentityMetadataProperties": {
+ "description": "Describes the properties of Hybrid Identity Metadata for a Virtual Machine.",
+ "type": "object",
+ "properties": {
+ "vmId": {
+ "description": "Gets or sets the Vm Id.",
+ "type": "string"
+ },
+ "publicKey": {
+ "description": "Gets or sets the Public Key.",
+ "type": "string"
+ },
+ "identity": {
+ "$ref": "#/definitions/Identity",
+ "description": "The identity of the resource.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "VmInstanceHybridIdentityMetadataList": {
+ "description": "List of HybridIdentityMetadata.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of HybridIdentityMetadata.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of HybridIdentityMetadata",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VmInstanceHybridIdentityMetadata"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "VmInstanceHybridIdentityMetadata": {
+ "description": "Defines the HybridIdentityMetadata.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/VmInstanceHybridIdentityMetadataProperties"
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "VmInstanceHybridIdentityMetadataProperties": {
+ "description": "Describes the properties of Hybrid Identity Metadata for a Virtual Machine.",
+ "type": "object",
+ "properties": {
+ "resourceUid": {
+ "description": "The unique identifier for the resource.",
+ "type": "string"
+ },
+ "publicKey": {
+ "description": "Gets or sets the Public Key.",
+ "type": "string"
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "Identity": {
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal id of managed service identity."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant of managed service identity."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of managed service identity.",
+ "enum": [
+ "None",
+ "SystemAssigned"
+ ],
+ "x-ms-enum": {
+ "name": "IdentityType",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "Managed service identity."
+ },
+ "MachineExtension": {
+ "x-ms-azure-resource": true,
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/MachineExtensionProperties",
+ "description": "Describes Machine Extension Properties."
+ },
+ "location": {
+ "description": "Gets or sets the location.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "description": "The system data."
+ },
+ "tags": {
+ "description": "Gets or sets the Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "Gets or sets the name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Gets or sets the Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Gets or sets the type of the resource.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "description": "Describes a Machine Extension."
+ },
+ "MachineExtensionUpdate": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/MachineExtensionUpdateProperties",
+ "description": "Describes Machine Extension Update Properties."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ResourcePatch"
+ }
+ ],
+ "description": "Describes a Machine Extension Update."
+ },
+ "MachineExtensionProperties": {
+ "type": "object",
+ "properties": {
+ "forceUpdateTag": {
+ "type": "string",
+ "description": "How the extension handler should be forced to update even if the extension configuration has not changed."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The name of the extension handler publisher."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version available."
+ },
+ "autoUpgradeMinorVersion": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true."
+ },
+ "settings": {
+ "type": "object",
+ "description": "Json formatted public settings for the extension."
+ },
+ "protectedSettings": {
+ "type": "object",
+ "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.",
+ "x-ms-secret": true
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The provisioning state, which only appears in the response."
+ },
+ "instanceView": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/MachineExtensionInstanceView"
+ }
+ ],
+ "description": "The machine extension instance view."
+ }
+ },
+ "description": "Describes the properties of a Machine Extension."
+ },
+ "MachineExtensionUpdateProperties": {
+ "type": "object",
+ "properties": {
+ "forceUpdateTag": {
+ "type": "string",
+ "description": "How the extension handler should be forced to update even if the extension configuration has not changed."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "The name of the extension handler publisher."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version available."
+ },
+ "autoUpgradeMinorVersion": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true."
+ },
+ "settings": {
+ "type": "object",
+ "description": "Json formatted public settings for the extension."
+ },
+ "protectedSettings": {
+ "type": "object",
+ "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.",
+ "x-ms-secret": true
+ }
+ },
+ "description": "Describes the properties of a Machine Extension."
+ },
+ "MachineExtensionInstanceView": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The machine extension name."
+ },
+ "type": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Specifies the version of the script handler."
+ },
+ "status": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The status code."
+ },
+ "level": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The level code.",
+ "enum": [
+ "Info",
+ "Warning",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "name": "StatusLevelTypes",
+ "modelAsString": true
+ }
+ },
+ "displayStatus": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The short localizable label for the status."
+ },
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The detailed status message, including for alerts and error messages."
+ },
+ "time": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The time of the status."
+ }
+ },
+ "description": "Instance view status."
+ }
+ },
+ "description": "Describes the Machine Extension Instance View."
+ },
+ "MachineExtensionsListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineExtension"
+ },
+ "description": "The list of extensions"
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions."
+ }
+ },
+ "description": "Describes the Machine Extensions List Result."
+ },
+ "TargetVersion": {
+ "type": "string",
+ "description": "Extension Upgrade Target Version."
+ },
+ "ExtensionTargetProperties": {
+ "type": "object",
+ "properties": {
+ "targetVersion": {
+ "type": "object",
+ "$ref": "#/definitions/TargetVersion",
+ "description": "Properties for the specified Extension to Upgrade."
+ }
+ },
+ "description": "Describes the Machine Extension Target Version Properties"
+ },
+ "ExtensionTarget": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "object",
+ "$ref": "#/definitions/ExtensionTargetProperties"
+ },
+ "description": "Describes the Machine Extension Target Properties"
+ },
+ "MachineExtensionUpgrade": {
+ "type": "object",
+ "properties": {
+ "extensionTargets": {
+ "$ref": "#/definitions/ExtensionTarget",
+ "description": "Describes the Extension Target Properties."
+ }
+ },
+ "description": "Describes the Machine Extension Upgrade Properties"
+ },
+ "ProvisioningAction": {
+ "description": "Defines the different types of operations for guest agent.",
+ "enum": [
+ "install",
+ "uninstall",
+ "repair"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ProvisioningAction"
+ }
+ },
+ "GuestCredential": {
+ "description": "Username / Password Credentials to connect to guest.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "Gets or sets username to connect with the guest.",
+ "type": "string"
+ },
+ "password": {
+ "description": "Gets or sets the password to connect with the guest.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "HttpProxyConfiguration": {
+ "description": "HTTP Proxy configuration for the VM.",
+ "type": "object",
+ "properties": {
+ "httpsProxy": {
+ "description": "Gets or sets httpsProxy url.",
+ "type": "string"
+ }
+ }
+ },
+ "GuestAgentList": {
+ "description": "List of GuestAgent.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "Url to follow for getting next page of GuestAgent.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of GuestAgent",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GuestAgent"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "GuestAgent": {
+ "description": "Defines the GuestAgent.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource",
+ "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags."
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Resource properties.",
+ "$ref": "#/definitions/GuestAgentProperties"
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "GuestAgentProperties": {
+ "description": "Describes the properties of a Virtual Machine Guest Agent.",
+ "type": "object",
+ "properties": {
+ "uuid": {
+ "description": "Gets or sets a unique identifier for this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "credentials": {
+ "description": "Username / Password Credentials to provision guest agent.",
+ "$ref": "#/definitions/GuestCredential"
+ },
+ "privateLinkScopeResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The resource id of the private link scope this machine is assigned to, if any."
+ },
+ "httpProxyConfig": {
+ "description": "HTTP Proxy configuration for the VM.",
+ "$ref": "#/definitions/HttpProxyConfiguration"
+ },
+ "provisioningAction": {
+ "description": "Gets or sets the guest agent provisioning action.",
+ "$ref": "#/definitions/ProvisioningAction",
+ "type": "string"
+ },
+ "status": {
+ "description": "Gets or sets the guest agent status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customResourceName": {
+ "description": "Gets the name of the corresponding resource in Kubernetes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "description": "The resource status information.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceStatus"
+ },
+ "x-ms-identifiers": [
+ "type"
+ ]
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ResourceProvisioningState",
+ "description": "Gets the provisioning state.",
+ "readOnly": true
+ }
+ }
+ },
+ "VirtualMachineAssessPatchesResult": {
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Unknown\", \"Failed\", \"Succeeded\", or \"CompletedWithWarnings.\"",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Failed",
+ "Succeeded",
+ "CompletedWithWarnings"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStatus",
+ "modelAsString": true
+ }
+ },
+ "assessmentActivityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result."
+ },
+ "rebootPending": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "The overall reboot status of the VM. It will be true when partially installed patches require a reboot to complete installation but the reboot has not yet occurred."
+ },
+ "availablePatchCountByClassification": {
+ "$ref": "#/definitions/AvailablePatchCountByClassification",
+ "description": "Summarization of patches available for installation on the machine by classification."
+ },
+ "startDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "lastModifiedDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation finished."
+ },
+ "startedBy": {
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "User",
+ "Platform"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStartedBy",
+ "modelAsString": true
+ },
+ "description": "Indicates if operation was triggered by user or by platform."
+ },
+ "patchServiceUsed": {
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "Unknown",
+ "WU",
+ "WU_WSUS",
+ "YUM",
+ "APT",
+ "Zypper"
+ ],
+ "x-ms-enum": {
+ "name": "PatchServiceUsed",
+ "modelAsString": true
+ },
+ "description": "Specifies the patch service used for the operation."
+ },
+ "osType": {
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OsTypeUM",
+ "modelAsString": true
+ },
+ "description": "The operating system type of the machine."
+ },
+ "errorDetails": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail",
+ "readOnly": true,
+ "description": "The errors that were encountered during execution of the operation. The details array contains the list of them."
+ }
+ },
+ "description": "Describes the properties of an AssessPatches result."
+ },
+ "AvailablePatchCountByClassification": {
+ "type": "object",
+ "properties": {
+ "security": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of security patches available for installation."
+ },
+ "critical": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of critical patches available for installation."
+ },
+ "definition": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of definition patches available for installation."
+ },
+ "updateRollup": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of update Rollup patches available for installation."
+ },
+ "featurePack": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of feature pack patches available for installation."
+ },
+ "servicePack": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of service pack patches available for installation."
+ },
+ "tools": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of tools patches available for installation."
+ },
+ "updates": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of updates category patches available for installation."
+ },
+ "other": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of other patches available for installation."
+ }
+ },
+ "description": "Summarization of patches available for installation on the machine by classification."
+ },
+ "VirtualMachineInstallPatchesParameters": {
+ "type": "object",
+ "properties": {
+ "maximumDuration": {
+ "type": "string",
+ "description": "Specifies the maximum amount of time that the operation will run. It must be an ISO 8601-compliant duration string such as PT4H (4 hours)"
+ },
+ "rebootSetting": {
+ "type": "string",
+ "description": "Defines when it is acceptable to reboot a VM during a software update operation.",
+ "enum": [
+ "IfRequired",
+ "Never",
+ "Always"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchRebootSetting",
+ "modelAsString": true
+ }
+ },
+ "windowsParameters": {
+ "$ref": "#/definitions/WindowsParameters",
+ "description": "Input for InstallPatches on a Windows VM, as directly received by the API"
+ },
+ "linuxParameters": {
+ "$ref": "#/definitions/LinuxParameters",
+ "description": "Input for InstallPatches on a Linux VM, as directly received by the API"
+ }
+ },
+ "required": [
+ "maximumDuration",
+ "rebootSetting"
+ ],
+ "description": "Input for InstallPatches as directly received by the API"
+ },
+ "WindowsParameters": {
+ "type": "object",
+ "properties": {
+ "classificationsToInclude": {
+ "type": "array",
+ "description": "The update classifications to select when installing patches for Windows.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Critical",
+ "Security",
+ "UpdateRollUp",
+ "FeaturePack",
+ "ServicePack",
+ "Definition",
+ "Tools",
+ "Updates"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchClassification_Windows",
+ "modelAsString": true
+ }
+ }
+ },
+ "kbNumbersToInclude": {
+ "type": "array",
+ "description": "Kbs to include in the patch operation",
+ "items": {
+ "type": "string"
+ }
+ },
+ "kbNumbersToExclude": {
+ "type": "array",
+ "description": "Kbs to exclude in the patch operation",
+ "items": {
+ "type": "string"
+ }
+ },
+ "excludeKbsRequiringReboot": {
+ "type": "boolean",
+ "description": "Filters out Kbs that don't have an InstallationRebootBehavior of 'NeverReboots' when this is set to true."
+ },
+ "maxPatchPublishDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "This is used to install patches that were published on or before this given max published date."
+ }
+ },
+ "description": "Input for InstallPatches on a Windows VM, as directly received by the API"
+ },
+ "LinuxParameters": {
+ "type": "object",
+ "properties": {
+ "classificationsToInclude": {
+ "type": "array",
+ "description": "The update classifications to select when installing patches for Linux.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Critical",
+ "Security",
+ "Other"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchClassification_Linux",
+ "modelAsString": true
+ }
+ }
+ },
+ "packageNameMasksToInclude": {
+ "type": "array",
+ "description": "packages to include in the patch operation. Format: packageName_packageVersion",
+ "items": {
+ "type": "string"
+ }
+ },
+ "packageNameMasksToExclude": {
+ "type": "array",
+ "description": "packages to exclude in the patch operation. Format: packageName_packageVersion",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "description": "Input for InstallPatches on a Linux VM, as directly received by the API"
+ },
+ "VirtualMachineInstallPatchesResult": {
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The overall success or failure status of the operation. It remains \"InProgress\" until the operation completes. At that point it will become \"Failed\", \"Succeeded\", \"Unknown\" or \"CompletedWithWarnings.\"",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Failed",
+ "Succeeded",
+ "CompletedWithWarnings"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStatus",
+ "modelAsString": true
+ }
+ },
+ "installationActivityId": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The activity ID of the operation that produced this result."
+ },
+ "rebootStatus": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The reboot state of the VM following completion of the operation.",
+ "enum": [
+ "Unknown",
+ "NotNeeded",
+ "Required",
+ "Started",
+ "Failed",
+ "Completed"
+ ],
+ "x-ms-enum": {
+ "name": "VMGuestPatchRebootStatus",
+ "modelAsString": true
+ }
+ },
+ "maintenanceWindowExceeded": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "Whether the operation ran out of time before it completed all its intended actions."
+ },
+ "excludedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that were not installed due to the user blocking their installation."
+ },
+ "notSelectedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that were detected as available for install, but did not meet the operation's criteria."
+ },
+ "pendingPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that were identified as meeting the installation criteria, but were not able to be installed. Typically this happens when maintenanceWindowExceeded == true."
+ },
+ "installedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches successfully installed."
+ },
+ "failedPatchCount": {
+ "type": "integer",
+ "readOnly": true,
+ "format": "int32",
+ "description": "The number of patches that could not be installed due to some issue. See errors for details."
+ },
+ "startDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation began."
+ },
+ "lastModifiedDateTime": {
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time",
+ "description": "The UTC timestamp when the operation finished."
+ },
+ "startedBy": {
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "User",
+ "Platform"
+ ],
+ "x-ms-enum": {
+ "name": "PatchOperationStartedBy",
+ "modelAsString": true
+ },
+ "description": "Indicates if operation was triggered by user or by platform."
+ },
+ "patchServiceUsed": {
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "Unknown",
+ "WU",
+ "WU_WSUS",
+ "YUM",
+ "APT",
+ "Zypper"
+ ],
+ "x-ms-enum": {
+ "name": "PatchServiceUsed",
+ "modelAsString": true
+ },
+ "description": "Specifies the patch service used for the operation."
+ },
+ "osType": {
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "Windows",
+ "Linux"
+ ],
+ "x-ms-enum": {
+ "name": "OsTypeUM",
+ "modelAsString": true
+ },
+ "description": "The operating system type of the machine."
+ },
+ "errorDetails": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail",
+ "readOnly": true,
+ "description": "The errors that were encountered during execution of the operation. The details array contains the list of them."
+ }
+ },
+ "description": "The result summary of an installation operation."
+ }
+ },
+ "parameters": {
+ "subscriptionId": {
+ "in": "path",
+ "name": "subscriptionId",
+ "description": "The Subscription ID.",
+ "required": true,
+ "type": "string"
+ },
+ "api-version": {
+ "in": "query",
+ "name": "api-version",
+ "description": "Client Api Version.",
+ "required": true,
+ "type": "string"
+ },
+ "resourceGroupName": {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "The Resource Group Name.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "resourceUriParameter": {
+ "in": "path",
+ "name": "resourceUri",
+ "description": "The fully qualified Azure Resource manager identifier of the Hybrid Compute machine resource to be extended.",
+ "required": true,
+ "type": "string",
+ "x-ms-skip-url-encoding": true,
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateCluster.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateCluster.json
new file mode 100644
index 000000000000..cc1e1e822f9d
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateCluster.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "clusterName": "HRCluster",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Clusters/HRCluster",
+ "name": "HRCluster",
+ "type": "Microsoft.ConnectedVMwarevSphere/Clusters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Clusters/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/Clusters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateDatastore.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateDatastore.json
new file mode 100644
index 000000000000..32d3d61bcb19
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateDatastore.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "datastoreName": "HRDatastore",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Datastores/HRDatastore",
+ "name": "HRDatastore",
+ "type": "Microsoft.ConnectedVMwarevSphere/Datastores",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Datastores/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/Datastores",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateGuestAgent.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateGuestAgent.json
new file mode 100644
index 000000000000..4c259cad7369
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateGuestAgent.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm",
+ "name": "default",
+ "body": {
+ "properties": {
+ "provisioningAction": "install",
+ "credentials": {
+ "username": "tempuser",
+ "password": ""
+ },
+ "httpProxyConfig": {
+ "httpsProxy": "http://192.1.2.3:8080"
+ },
+ "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/ContosoVm/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/ContosoVm/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateHost.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateHost.json
new file mode 100644
index 000000000000..df459bbfc8ba
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateHost.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "hostName": "HRHost",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Hosts/HRHost",
+ "name": "HRHost",
+ "type": "Microsoft.ConnectedVMwarevSphere/Hosts",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Hosts/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/Hosts",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateHybridIdentityMetadata.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateHybridIdentityMetadata.json
new file mode 100644
index 000000000000..a00e6f9ca367
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateHybridIdentityMetadata.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm",
+ "metadataName": "default",
+ "body": {
+ "properties": {
+ "vmId": "f8b82dff-38ef-4220-99ef-d3a3f86ddc6c",
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VitualMachines/ContosoVm/hybridIdentityMetadatas/default",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachines/hybridIdentityMetadatas",
+ "properties": {
+ "vmId": "f8b82dff-38ef-4220-99ef-d3a3f86ddc6c",
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2",
+ "identity": {
+ "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d",
+ "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateInventoryItem.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateInventoryItem.json
new file mode 100644
index 000000000000..421fefe5e363
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateInventoryItem.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter",
+ "inventoryItemName": "testItem",
+ "body": {
+ "properties": {
+ "inventoryType": "ResourcePool"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter/InventoryItems/testItem",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters/InventoryItems",
+ "properties": {
+ "inventoryType": "ResourcePool"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateResourcePool.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateResourcePool.json
new file mode 100644
index 000000000000..ba35845d534d
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateResourcePool.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "resourcePoolName": "HRPool",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "name": "HRPool",
+ "type": "Microsoft.ConnectedVMwarevSphere/ResourcePools",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/ResourcePools",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVCenter.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVCenter.json
new file mode 100644
index 000000000000..5a8cccff1fc5
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVCenter.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "port": 1234,
+ "credentials": {
+ "username": "tempuser",
+ "password": ""
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "name": "ContosoVCenter",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "port": 1234,
+ "credentials": {
+ "username": "tempuser"
+ },
+ "version": "1.0",
+ "instanceUuid": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "name": "ContosoVCenter",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "port": 1234,
+ "credentials": {
+ "username": "tempuser"
+ },
+ "version": "1.0",
+ "instanceUuid": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVMInstanceGuestAgent.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVMInstanceGuestAgent.json
new file mode 100644
index 000000000000..95e8968adae8
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVMInstanceGuestAgent.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM",
+ "body": {
+ "properties": {
+ "provisioningAction": "install",
+ "credentials": {
+ "username": "tempuser",
+ "password": ""
+ },
+ "httpProxyConfig": {
+ "httpsProxy": "http://192.1.2.3:8080"
+ },
+ "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachine.json
new file mode 100644
index 000000000000..d64b4b6323d1
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachine.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/DemoVM",
+ "name": "DemoVM",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachineInstance.json
new file mode 100644
index 000000000000..3979d3d37238
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachineInstance.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM",
+ "body": {
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "infrastructureProfile": {
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter"
+ },
+ "placementProfile": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "infrastructureProfile": {
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ },
+ "placementProfile": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool"
+ },
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/ContosoAgent/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "infrastructureProfile": {
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ },
+ "placementProfile": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool"
+ },
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachineTemplate.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachineTemplate.json
new file mode 100644
index 000000000000..2ffd26331265
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualMachineTemplate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineTemplateName": "WebFrontEndTemplate",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "name": "WebFrontEndTemplate",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualNetwork.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualNetwork.json
new file mode 100644
index 000000000000..8836a49b84e1
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/CreateVirtualNetwork.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualNetworkName": "ProdNetwork",
+ "body": {
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualNetworks/ProdNetwork",
+ "name": "ProdNetwork",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualNetworks",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualNetworks/ContosoAgent",
+ "name": "ContosoAgent",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualNetworks",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DELETEExtension.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DELETEExtension.json
new file mode 100644
index 000000000000..ddb69d9f38df
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DELETEExtension.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "virtualMachineName": "myMachine",
+ "extensionName": "MMA",
+ "api-version": "2023-03-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteCluster.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteCluster.json
new file mode 100644
index 000000000000..043a59cb93fd
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteCluster.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "clusterName": "HRCluster"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteDatastore.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteDatastore.json
new file mode 100644
index 000000000000..bf7fc38306f1
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteDatastore.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "datastoreName": "HRDatastore"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteGuestAgent.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteGuestAgent.json
new file mode 100644
index 000000000000..6e9e01883458
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteGuestAgent.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm",
+ "name": "default"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteHost.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteHost.json
new file mode 100644
index 000000000000..71b27ad76de4
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteHost.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "hostName": "HRHost"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteHybridIdentityMetadata.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteHybridIdentityMetadata.json
new file mode 100644
index 000000000000..e193ce325548
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteHybridIdentityMetadata.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm",
+ "metadataName": "default"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteInventoryItem.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteInventoryItem.json
new file mode 100644
index 000000000000..ede344f9ad24
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteInventoryItem.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter",
+ "inventoryItemName": "testItem"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteResourcePool.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteResourcePool.json
new file mode 100644
index 000000000000..1d09fcc8e81d
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteResourcePool.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "resourcePoolName": "HRPool"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVCenter.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVCenter.json
new file mode 100644
index 000000000000..cac4069ac742
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVCenter.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVMInstanceGuestAgent.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVMInstanceGuestAgent.json
new file mode 100644
index 000000000000..acb3e1f87542
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVMInstanceGuestAgent.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachine.json
new file mode 100644
index 000000000000..4e76cc589be5
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachine.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachineInstance.json
new file mode 100644
index 000000000000..acb3e1f87542
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachineInstance.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachineTemplate.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachineTemplate.json
new file mode 100644
index 000000000000..18e699083471
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualMachineTemplate.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineTemplateName": "WebFrontEndTemplate"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualNetwork.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualNetwork.json
new file mode 100644
index 000000000000..b041b8267571
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/DeleteVirtualNetwork.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualNetworkName": "ProdNetwork"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/Extensions_Upgrade.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/Extensions_Upgrade.json
new file mode 100644
index 000000000000..23c8ea73ae3d
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/Extensions_Upgrade.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "virtualMachineName": "myMachine",
+ "api-version": "2023-03-01-preview",
+ "extensionUpgradeParameters": {
+ "extensionTargets": {
+ "Microsoft.Compute.CustomScriptExtension": {
+ "targetVersion": "1.10"
+ },
+ "Microsoft.Azure.Monitoring": {
+ "targetVersion": "2.0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2023-04-25-preview/examples/GETExtension.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GETExtension.json
similarity index 78%
rename from specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2023-04-25-preview/examples/GETExtension.json
rename to specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GETExtension.json
index c000528229b0..dec7862e9bb4 100644
--- a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2023-04-25-preview/examples/GETExtension.json
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GETExtension.json
@@ -2,26 +2,23 @@
"parameters": {
"subscriptionId": "{subscriptionId}",
"resourceGroupName": "myResourceGroup",
- "machineName": "myMachine",
+ "virtualMachineName": "myMachine",
"extensionName": "CustomScriptExtension",
- "api-version": "2023-04-25-preview"
+ "api-version": "2023-03-01-preview"
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension",
"name": "CustomScriptExtension",
- "type": "Microsoft.HybridCompute/machines/extensions",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
"location": "eastus2euap",
"properties": {
"publisher": "Microsoft.Compute",
"type": "string",
"typeHandlerVersion": "1.10.3",
"autoUpgradeMinorVersion": false,
- "settings": {
- "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\""
- },
- "protectedSettings": {},
+ "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}",
"provisioningState": "Succeeded",
"instanceView": {
"name": "CustomScriptExtension",
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetCluster.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetCluster.json
new file mode 100644
index 000000000000..479ce3683f8d
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetCluster.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "clusterName": "HRCluster"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Clusters/HRCluster",
+ "name": "HRCluster",
+ "type": "Microsoft.ConnectedVMwarevSphere/Clusters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetDatastore.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetDatastore.json
new file mode 100644
index 000000000000..d1e81f832172
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetDatastore.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "datastoreName": "HRDatastore"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Datastores/HRDatastore",
+ "name": "HRDatastore",
+ "type": "Microsoft.ConnectedVMwarevSphere/Datastores",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetGuestAgent.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetGuestAgent.json
new file mode 100644
index 000000000000..9d63f7944235
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetGuestAgent.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm",
+ "name": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VitualMachines/ContosoVm/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachines/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetHost.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetHost.json
new file mode 100644
index 000000000000..a80b73ee171e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetHost.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "hostName": "HRHost"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Hosts/HRHost",
+ "name": "HRHost",
+ "type": "Microsoft.ConnectedVMwarevSphere/Hosts",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetHybridIdentityMetadata.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetHybridIdentityMetadata.json
new file mode 100644
index 000000000000..7fb60eb1e615
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetHybridIdentityMetadata.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm",
+ "metadataName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VitualMachines/ContosoVm/hybridIdentityMetadatas/default",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachines/hybridIdentityMetadatas",
+ "properties": {
+ "vmId": "f8b82dff-38ef-4220-99ef-d3a3f86ddc6c",
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2",
+ "identity": {
+ "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d",
+ "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetInventoryItem.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetInventoryItem.json
new file mode 100644
index 000000000000..6d078c0248b3
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetInventoryItem.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter",
+ "inventoryItemName": "testItem"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter/InventoryItems/testItem",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters/InventoryItems",
+ "properties": {
+ "inventoryType": "ResourcePool"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetResourcePool.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetResourcePool.json
new file mode 100644
index 000000000000..56220819b26b
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetResourcePool.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "resourcePoolName": "HRPool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "name": "HRPool",
+ "type": "Microsoft.ConnectedVMwarevSphere/ResourcePools",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVCenter.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVCenter.json
new file mode 100644
index 000000000000..507581489d86
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVCenter.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "name": "ContosoVCenter",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "port": 1234,
+ "credentials": {
+ "username": "tempuser"
+ },
+ "version": "1.0",
+ "instanceUuid": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVMInstanceGuestAgent.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVMInstanceGuestAgent.json
new file mode 100644
index 000000000000..02b7ab95a50f
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVMInstanceGuestAgent.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachine.json
new file mode 100644
index 000000000000..7d5e94f4dbc9
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachine.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/DemoVM",
+ "name": "DemoVM",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachineInstance.json
new file mode 100644
index 000000000000..78e932ef7d27
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachineInstance.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "infrastructureProfile": {
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ },
+ "placementProfile": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool"
+ },
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachineTemplate.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachineTemplate.json
new file mode 100644
index 000000000000..16520173452e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualMachineTemplate.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineTemplateName": "WebFrontEndTemplate"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "name": "WebFrontEndTemplate",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualNetwork.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualNetwork.json
new file mode 100644
index 000000000000..b6fbfe84a370
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVirtualNetwork.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualNetworkName": "ProdNetwork"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualNetworks/ProdNetwork",
+ "name": "ProdNetwork",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualNetworks",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVmInstanceHybridIdentityMetadata.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVmInstanceHybridIdentityMetadata.json
new file mode 100644
index 000000000000..fc3c8a114ca6
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GetVmInstanceHybridIdentityMetadata.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/VitualMachineInstances/default/hybridIdentityMetadata/default",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachineInstances/hybridIdentityMetadata",
+ "properties": {
+ "resourceUid": "f8b82dff-38ef-4220-99ef-d3a3f86ddc6c",
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GuestAgent_ListByVm.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GuestAgent_ListByVm.json
new file mode 100644
index 000000000000..a7dd821b070c
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/GuestAgent_ListByVm.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VitualMachines/ContosoVm/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachines/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/HybridIdentityMetadata_ListByVm.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/HybridIdentityMetadata_ListByVm.json
new file mode 100644
index 000000000000..f0500261dfeb
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/HybridIdentityMetadata_ListByVm.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "ContosoVm"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VitualMachines/ContosoVm/hybridIdentityMetadatas/default",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachines/hybridIdentityMetadatas",
+ "properties": {
+ "vmId": "f8b82dff-38ef-4220-99ef-d3a3f86ddc6c",
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2",
+ "identity": {
+ "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d",
+ "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/HybridIdentityMetadata_ListByVmInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/HybridIdentityMetadata_ListByVmInstance.json
new file mode 100644
index 000000000000..911537970628
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/HybridIdentityMetadata_ListByVmInstance.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineInstances/default/hybridIdentityMetadata/default",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineInstances/hybridIdentityMetadata",
+ "properties": {
+ "resourceUid": "f8b82dff-38ef-4220-99ef-d3a3f86ddc6c",
+ "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/InventoryItems_ListByVCenter.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/InventoryItems_ListByVCenter.json
new file mode 100644
index 000000000000..1f3b78cf6911
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/InventoryItems_ListByVCenter.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter/InventoryItems/testItem",
+ "name": "testItem",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters/InventoryItems",
+ "properties": {
+ "inventoryType": "ResourcePool"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2023-04-25-preview/examples/LISTExtension.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/LISTExtension.json
similarity index 90%
rename from specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2023-04-25-preview/examples/LISTExtension.json
rename to specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/LISTExtension.json
index e1f17f9a3296..b8c3326d6f7a 100644
--- a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2023-04-25-preview/examples/LISTExtension.json
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/LISTExtension.json
@@ -2,8 +2,8 @@
"parameters": {
"subscriptionId": "{subscriptionId}",
"resourceGroupName": "myResourceGroup",
- "machineName": "myMachine",
- "api-version": "2023-04-25-preview"
+ "virtualMachineName": "myMachine",
+ "api-version": "2023-03-01-preview"
},
"responses": {
"200": {
@@ -13,7 +13,7 @@
"id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension",
"name": "CustomScriptExtension",
"location": "eastus2euap",
- "type": "Microsoft.HybridCompute/machines/extensions",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
"properties": {
"publisher": "Microsoft.Compute",
"type": "CustomScriptExtension",
@@ -41,7 +41,7 @@
"id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/winosupdateextension",
"name": "winosupdateextension",
"location": "eastus2euap",
- "type": "Microsoft.HybridCompute/machines/extensions",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
"properties": {
"publisher": "microsoft.softwareupdatemanagement.test",
"type": "windowsosupdateextension",
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListClusters.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListClusters.json
new file mode 100644
index 000000000000..3268dd12ca6e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListClusters.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Clusters/HRCluster",
+ "name": "HRCluster",
+ "type": "Microsoft.ConnectedVMwarevSphere/Clusters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListClustersByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListClustersByResourceGroup.json
new file mode 100644
index 000000000000..4facb1ca5aa3
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListClustersByResourceGroup.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Clusters/HRCluster",
+ "name": "HRCluster",
+ "type": "Microsoft.ConnectedVMwarevSphere/Clusters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListDatastores.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListDatastores.json
new file mode 100644
index 000000000000..10bd363ae782
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListDatastores.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Datastores/HRDatastore",
+ "name": "HRDatastore",
+ "type": "Microsoft.ConnectedVMwarevSphere/Datastores",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListDatastoresByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListDatastoresByResourceGroup.json
new file mode 100644
index 000000000000..ec1ca0433e09
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListDatastoresByResourceGroup.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Datastores/HRDatastore",
+ "name": "HRDatastore",
+ "type": "Microsoft.ConnectedVMwarevSphere/Datastores",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListHosts.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListHosts.json
new file mode 100644
index 000000000000..7cd4af262ab0
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListHosts.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Hosts/HRHost",
+ "name": "HRHost",
+ "type": "Microsoft.ConnectedVMwarevSphere/Hosts",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListHostsByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListHostsByResourceGroup.json
new file mode 100644
index 000000000000..c7d53ee55dc8
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListHostsByResourceGroup.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Hosts/HRHost",
+ "name": "HRHost",
+ "type": "Microsoft.ConnectedVMwarevSphere/Hosts",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListOperations.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListOperations.json
new file mode 100644
index 000000000000..9b67cc29d6c9
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListOperations.json
@@ -0,0 +1,203 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "microsoft.vmware/vcenters/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "vcenters",
+ "operation": "Gets/List vcenters resources",
+ "description": "Read vcenters"
+ }
+ },
+ {
+ "name": "microsoft.vmware/vcenters/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "vcenters",
+ "operation": "Create/update vcenters resources",
+ "description": "Writes vcenters"
+ }
+ },
+ {
+ "name": "microsoft.vmware/vcenters/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "vcenters",
+ "operation": "Deletes vcenters resource",
+ "description": "Deletes vcenters"
+ }
+ },
+ {
+ "name": "microsoft.vmware/resourcepools/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "resourcepools",
+ "operation": "Gets/List resourcepools resources",
+ "description": "Read resourcepools"
+ }
+ },
+ {
+ "name": "microsoft.vmware/resourcepools/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "resourcepools",
+ "operation": "Create/update resourcepools resources",
+ "description": "Writes resourcepools"
+ }
+ },
+ {
+ "name": "microsoft.vmware/resourcepools/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "resourcepools",
+ "operation": "Deletes resourcepools resource",
+ "description": "Deletes resourcepools"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachines/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachines",
+ "operation": "Gets/List virtualmachines resources",
+ "description": "Read virtualmachines"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachines/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachines",
+ "operation": "Create/update virtualmachines resources",
+ "description": "Writes virtualmachines"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachines/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachines",
+ "operation": "Deletes virtualmachines resource",
+ "description": "Deletes virtualmachines"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachinetemplates/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachinetemplates",
+ "operation": "Gets/List virtualmachinetemplates resources",
+ "description": "Read virtualmachinetemplates"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachinetemplates/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachinetemplates",
+ "operation": "Create/update virtualmachinetemplates resources",
+ "description": "Writes virtualmachinetemplates"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachinetemplates/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachinetemplates",
+ "operation": "Deletes virtualmachinetemplates resource",
+ "description": "Deletes virtualmachinetemplates"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualnetworks/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualnetworks",
+ "operation": "Gets/List virtualnetworks resources",
+ "description": "Read virtualnetworks"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualnetworks/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualnetworks",
+ "operation": "Create/update virtualnetworks resources",
+ "description": "Writes virtualnetworks"
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualnetworks/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualnetworks",
+ "operation": "Deletes virtualnetworks resource",
+ "description": "Deletes virtualnetworks"
+ }
+ },
+ {
+ "name": "microsoft.vmware/arczones/deploy/action",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "arczones",
+ "operation": "Deploy on arczone.",
+ "description": "Deploy on arczone."
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualmachinetemplates/clone/action",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualmachinetemplates",
+ "operation": "Clone on virtual machine templates.",
+ "description": "Clone on virtual machine templates."
+ }
+ },
+ {
+ "name": "microsoft.vmware/resourcepools/deploy/action",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "resourcepools",
+ "operation": "Deploy on resource pool.",
+ "description": "Deploy on resource pool."
+ }
+ },
+ {
+ "name": "microsoft.vmware/virtualnetworks/join/action",
+ "isDataAction": false,
+ "display": {
+ "provider": "microsoft.vmware",
+ "resource": "virtualnetworks",
+ "operation": "Join virtual network.",
+ "description": "Join virtual network."
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListResourcePools.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListResourcePools.json
new file mode 100644
index 000000000000..1b816c5aa7ff
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListResourcePools.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "name": "HRPool",
+ "type": "Microsoft.ConnectedVMwarevSphere/ResourcePools",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListResourcePoolsByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListResourcePoolsByResourceGroup.json
new file mode 100644
index 000000000000..da043ec9e23e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListResourcePoolsByResourceGroup.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "name": "HRPool",
+ "type": "Microsoft.ConnectedVMwarevSphere/ResourcePools",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVCenters.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVCenters.json
new file mode 100644
index 000000000000..973d985caabe
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVCenters.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "name": "ContosoVCenter",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "port": 1234,
+ "credentials": {
+ "username": "tempuser"
+ },
+ "version": "1.0",
+ "instanceUuid": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVCentersByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVCentersByResourceGroup.json
new file mode 100644
index 000000000000..399ab75c819d
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVCentersByResourceGroup.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "name": "ContosoVCenter",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "port": 1234,
+ "credentials": {
+ "username": "tempuser"
+ },
+ "version": "1.0",
+ "instanceUuid": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineInstances.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineInstances.json
new file mode 100644
index 000000000000..9faafc4b2b45
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineInstances.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "infrastructureProfile": {
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ },
+ "placementProfile": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool"
+ },
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineTemplates.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineTemplates.json
new file mode 100644
index 000000000000..de3c933032d5
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineTemplates.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "name": "WebFrontEndTemplate",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineTemplatesByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineTemplatesByResourceGroup.json
new file mode 100644
index 000000000000..e8e05c680b2e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachineTemplatesByResourceGroup.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "name": "WebFrontEndTemplate",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachines.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachines.json
new file mode 100644
index 000000000000..a9c87111e93c
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachines.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/DemoVM",
+ "name": "DemoVM",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachinesByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachinesByResourceGroup.json
new file mode 100644
index 000000000000..e1bf5ad45046
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualMachinesByResourceGroup.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/DemoVM",
+ "name": "DemoVM",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualNetworks.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualNetworks.json
new file mode 100644
index 000000000000..b53535db919e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualNetworks.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualNetworks/ProdNetwork",
+ "name": "ProdNetwork",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualNetworks",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualNetworksByResourceGroup.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualNetworksByResourceGroup.json
new file mode 100644
index 000000000000..ab46e5d1adee
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/ListVirtualNetworksByResourceGroup.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualNetworks/ProdNetwork",
+ "name": "ProdNetwork",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualNetworks",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/PUTExtension.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/PUTExtension.json
new file mode 100644
index 000000000000..45486d766a97
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/PUTExtension.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "virtualMachineName": "myMachine",
+ "extensionName": "CustomScriptExtension",
+ "api-version": "2023-03-01-preview",
+ "extensionParameters": {
+ "location": "eastus2euap",
+ "properties": {
+ "publisher": "Microsoft.Compute",
+ "typeHandlerVersion": "1.10",
+ "type": "CustomScriptExtension",
+ "settings": {
+ "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\""
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension",
+ "name": "CustomScriptExtension",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
+ "location": "eastus2euap",
+ "properties": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}",
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "name": "CustomScriptExtension",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.10.3",
+ "status": {
+ "code": "success",
+ "level": "Information",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2020-08-08T20:42:10.999Z"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension",
+ "name": "CustomScriptExtension",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
+ "location": "eastus2euap",
+ "properties": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}",
+ "provisioningState": "Created",
+ "instanceView": {
+ "name": "CustomScriptExtension",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.10.3",
+ "status": {}
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/RestartVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/RestartVirtualMachine.json
new file mode 100644
index 000000000000..233c28bf927e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/RestartVirtualMachine.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/RestartVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/RestartVirtualMachineInstance.json
new file mode 100644
index 000000000000..0d7170a01163
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/RestartVirtualMachineInstance.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StartVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StartVirtualMachine.json
new file mode 100644
index 000000000000..233c28bf927e
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StartVirtualMachine.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StartVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StartVirtualMachineInstance.json
new file mode 100644
index 000000000000..0d7170a01163
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StartVirtualMachineInstance.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StopVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StopVirtualMachine.json
new file mode 100644
index 000000000000..267dafc5fabe
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StopVirtualMachine.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM",
+ "body": {
+ "skipShutdown": true
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StopVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StopVirtualMachineInstance.json
new file mode 100644
index 000000000000..f138c54a035f
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/StopVirtualMachineInstance.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM",
+ "body": {
+ "skipShutdown": true
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateCluster.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateCluster.json
new file mode 100644
index 000000000000..f025a588946c
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateCluster.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "clusterName": "HRCluster",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Clusters/HRCluster",
+ "name": "HRCluster",
+ "type": "Microsoft.ConnectedVMwarevSphere/Clusters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateDatastore.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateDatastore.json
new file mode 100644
index 000000000000..4d3855438770
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateDatastore.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "datastoreName": "HRDatastore",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Datastores/HRDatastore",
+ "name": "HRDatastore",
+ "type": "Microsoft.ConnectedVMwarevSphere/Datastores",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateExtension.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateExtension.json
new file mode 100644
index 000000000000..d2ac6e4a73c4
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateExtension.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscriptionId}",
+ "resourceGroupName": "myResourceGroup",
+ "virtualMachineName": "myMachine",
+ "extensionName": "CustomScriptExtension",
+ "api-version": "2023-03-01-preview",
+ "extensionParameters": {
+ "properties": {
+ "publisher": "Microsoft.Compute",
+ "typeHandlerVersion": "1.10",
+ "type": "CustomScriptExtension",
+ "settings": {
+ "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\""
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension",
+ "name": "CustomScriptExtension",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
+ "location": "eastus2euap",
+ "properties": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}",
+ "provisioningState": "Succeeded",
+ "instanceView": {
+ "name": "CustomScriptExtension",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.10.3",
+ "status": {
+ "code": "success",
+ "level": "Information",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2020-01-08T20:42:10.999Z"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/Machines/myMachine/Extensions/CustomScriptExtension",
+ "name": "CustomScriptExtension",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines/extensions",
+ "location": "eastus2euap",
+ "properties": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}",
+ "provisioningState": "Created",
+ "instanceView": {
+ "name": "CustomScriptExtension",
+ "type": "CustomScriptExtension",
+ "typeHandlerVersion": "1.10.3",
+ "status": {}
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateHost.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateHost.json
new file mode 100644
index 000000000000..0b455078a6e1
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateHost.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "hostName": "HRHost",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/Hosts/HRHost",
+ "name": "HRHost",
+ "type": "Microsoft.ConnectedVMwarevSphere/Hosts",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateResourcePool.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateResourcePool.json
new file mode 100644
index 000000000000..360ac0502c9b
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateResourcePool.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "resourcePoolName": "HRPool",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "name": "HRPool",
+ "type": "Microsoft.ConnectedVMwarevSphere/ResourcePools",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVCenter.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVCenter.json
new file mode 100644
index 000000000000..a4f8ccae2908
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVCenter.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "vcenterName": "ContosoVCenter",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "name": "ContosoVCenter",
+ "type": "Microsoft.ConnectedVMwarevSphere/VCenters",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "fqdn": "ContosoVMware.contoso.com",
+ "credentials": {
+ "username": "tempuser"
+ },
+ "port": 1234,
+ "version": "1.0",
+ "instanceUuid": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachine.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachine.json
new file mode 100644
index 000000000000..da683fc52166
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachine.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineName": "DemoVM",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/DemoVM",
+ "name": "DemoVM",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachines/DemoVM",
+ "name": "DemoVM",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool",
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Created"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachineInstance.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachineInstance.json
new file mode 100644
index 000000000000..164fed6679c7
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachineInstance.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM",
+ "body": {
+ "properties": {
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachines",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "properties": {
+ "infrastructureProfile": {
+ "templateId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
+ },
+ "placementProfile": {
+ "resourcePoolId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/ResourcePools/HRPool"
+ },
+ "osProfile": {
+ "computerName": "DemoVM",
+ "osType": "Windows"
+ },
+ "hardwareProfile": {
+ "memorySizeMB": 4196,
+ "numCPUs": 4
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachineTemplate.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachineTemplate.json
new file mode 100644
index 000000000000..792e35d43644
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualMachineTemplate.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualMachineTemplateName": "WebFrontEndTemplate",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates/WebFrontEndTemplate",
+ "name": "WebFrontEndTemplate",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualMachineTemplates",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualNetwork.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualNetwork.json
new file mode 100644
index 000000000000..8dd16b652dbe
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/UpdateVirtualNetwork.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "testrg",
+ "virtualNetworkName": "ProdNetwork",
+ "body": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VirtualNetworks/ProdNetwork",
+ "name": "ProdNetwork",
+ "type": "Microsoft.ConnectedVMwarevSphere/VirtualNetworks",
+ "location": "East US",
+ "extendedLocation": {
+ "type": "customLocation",
+ "name": "/subscriptions/a5015e1c-867f-4533-8541-85cd470d0cfb/resourceGroups/demoRG/providers/Microsoft.ExtendedLocation/customLocations/contoso"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "vCenterId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ConnectedVMwarevSphere/VCenters/ContosoVCenter",
+ "moRefId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VMInstanceGuestAgent_ListByVm.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VMInstanceGuestAgent_ListByVm.json
new file mode 100644
index 000000000000..f1f1bfdc06fc
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VMInstanceGuestAgent_ListByVm.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-03-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents/default",
+ "name": "default",
+ "type": "Microsoft.ConnectedVMwarevSphere/VitualMachineInstances/guestAgents",
+ "properties": {
+ "provisioningAction": "install",
+ "status": "connected",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VirtualMachineAssessPatches.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VirtualMachineAssessPatches.json
new file mode 100644
index 000000000000..2d6709ae1611
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VirtualMachineAssessPatches.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroupName",
+ "virtualMachineName": "myMachineName",
+ "api-version": "2023-03-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "Succeeded",
+ "assessmentActivityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "rebootPending": true,
+ "startDateTime": "2022-01-15T02:15:20.9340000Z",
+ "lastModifiedDateTime": "2022-01-15T02:16:06.9740000Z",
+ "availablePatchCountByClassification": {
+ "security": 0,
+ "updateRollup": 1,
+ "featurePack": 0,
+ "servicePack": 0,
+ "definition": 0,
+ "critical": 0,
+ "updates": 1,
+ "tools": 0
+ },
+ "startedBy": "User",
+ "osType": "Windows",
+ "errorDetails": null
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VirtualMachineInstallPatches.json b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VirtualMachineInstallPatches.json
new file mode 100644
index 000000000000..920763b14f02
--- /dev/null
+++ b/specification/connectedvmware/resource-manager/Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/examples/VirtualMachineInstallPatches.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "myResourceGroupName",
+ "virtualMachineName": "myMachineName",
+ "api-version": "2023-03-01-preview",
+ "installPatchesInput": {
+ "maximumDuration": "PT3H",
+ "rebootSetting": "IfRequired",
+ "windowsParameters": {
+ "classificationsToInclude": [
+ "Critical",
+ "Security"
+ ],
+ "maxPatchPublishDate": "2022-01-15T02:36:43.0539904+00:00"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "status": "Succeeded",
+ "installationActivityId": "68f8b292-dfc2-4646-9781-33cc88631968",
+ "rebootStatus": "Completed",
+ "maintenanceWindowExceeded": false,
+ "excludedPatchCount": 0,
+ "notSelectedPatchCount": 0,
+ "pendingPatchCount": 2,
+ "installedPatchCount": 3,
+ "failedPatchCount": 0,
+ "startDateTime": "2022-01-15T02:15:06.9740000Z",
+ "lastModifiedDateTime": "2021-01-15T02:16:06.9740000Z",
+ "startedBy": "User",
+ "osType": "Windows",
+ "errorDetails": null
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ConnectedVMwarevSphere/locations/WESTEUROPE/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-03-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/connectedvmware/resource-manager/readme.md b/specification/connectedvmware/resource-manager/readme.md
index a7003b8f100b..9cfc800bffe0 100644
--- a/specification/connectedvmware/resource-manager/readme.md
+++ b/specification/connectedvmware/resource-manager/readme.md
@@ -24,17 +24,46 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor
These are the global settings for the vmware.
-```yaml
+``` yaml
openapi-type: arm
openapi-subtype: rpaas
-tag: package-2022-07-15-preview
+tag: package-preview-2023-03
+```
+
+
+### Tag: package-preview-2023-03
+
+These settings apply only when `--tag=package-preview-2023-03` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2023-03'
+input-file:
+ - Microsoft.ConnectedVMwarevSphere/preview/2023-03-01-preview/connectedvmware.json
+suppressions:
+ - code: LroPostReturn
+ reason: All POST actions are long running operations and never return 200 in the response.
+ where:
+ - $.paths["/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/stop"].post
+ - $.paths["/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/start"].post
+ - $.paths["/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/restart"].post
+
+ - code: GetCollectionOnlyHasValueAndNextLink
+ reason: GET instance API for ARM extension resources are being flagged as Get Collection APIs.
+ where:
+ - $.paths["/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default"].get.responses["200"].schema.properties
+ - $.paths["/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/hybridIdentityMetadata/default"].get.responses["200"].schema.properties
+ - $.paths["/{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/guestAgents/default"].get.responses["200"].schema.properties
+
+ - code: TopLevelResourcesListBySubscription
+ reason: VirtualMachineInstance resource is an ARM extension resource and does not support List by subscription API.
+ where:
+ - $.definitions.VirtualMachineInstance
```
### Tag: package-2020-10-01-preview
These settings apply only when `--tag=package-2020-10-01-preview` is specified on the command line.
-```yaml $(tag) == 'package-2020-10-01-preview'
+``` yaml $(tag) == 'package-2020-10-01-preview'
input-file:
- Microsoft.ConnectedVMwarevSphere/preview/2020-10-01-preview/connectedvmware.json
```
@@ -43,7 +72,7 @@ input-file:
These settings apply only when `--tag=package-2022-01-10-preview` is specified on the command line.
-```yaml $(tag) == 'package-2022-01-10-preview'
+``` yaml $(tag) == 'package-2022-01-10-preview'
input-file:
- Microsoft.ConnectedVMwarevSphere/preview/2022-01-10-preview/connectedvmware.json
```
@@ -52,7 +81,7 @@ input-file:
These settings apply only when `--tag=package-2022-07-15-preview` is specified on the command line.
-```yaml $(tag) == 'package-2022-07-15-preview'
+``` yaml $(tag) == 'package-2022-07-15-preview'
input-file:
- Microsoft.ConnectedVMwarevSphere/preview/2022-07-15-preview/connectedvmware.json
```
@@ -66,7 +95,7 @@ input-file:
This section describes what SDK should be generated by the automatic system.
This is not used by Autorest itself.
-```yaml $(swagger-to-sdk)
+``` yaml $(swagger-to-sdk)
swagger-to-sdk:
- repo: azure-sdk-for-python-track2
- repo: azure-sdk-for-java
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/consumption.json
index ad4b4601e2d5..e162b97c6358 100644
--- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/consumption.json
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/consumption.json
@@ -1905,6 +1905,29 @@
}
}
},
+ "SavingsPlan": {
+ "type": "object",
+ "description": "The properties of the SavingsPlan.",
+ "properties": {
+ "term": {
+ "description": "SavingsPlan term",
+ "type": "string",
+ "readOnly": true
+ },
+ "marketPrice": {
+ "description": "SavingsPlan Market Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "effectivePrice": {
+ "description": "SavingsPlan Effective Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
"UsageDetail": {
"type": "object",
"discriminator": "kind",
@@ -4612,6 +4635,11 @@
"description": "Offer Id",
"type": "string",
"readOnly": true
+ },
+ "savingsPlan": {
+ "description": "SavingsPlan Details",
+ "$ref": "#/definitions/SavingsPlan",
+ "readOnly": true
}
}
},
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/examples/PriceSheet.json
index 39a2df866a19..8e83bb24e478 100644
--- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/examples/PriceSheet.json
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2022-09-01/examples/PriceSheet.json
@@ -20,7 +20,12 @@
"partNumber": "XX-11110",
"unitPrice": 0.00328,
"currencyCode": "EUR",
- "offerId": "OfferId 1"
+ "offerId": "OfferId 1",
+ "savingsPlan": {
+ "term": "P3Y",
+ "effectivePrice": 0.002,
+ "marketPrice": 0.00328
+ }
}
]
}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json
index 85e97f868e47..76aa46f2c1c4 100644
--- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json
@@ -1911,6 +1911,29 @@
}
}
},
+ "SavingsPlan": {
+ "description": "The properties of the SavingsPlan.",
+ "type": "object",
+ "properties": {
+ "term": {
+ "description": "SavingsPlan term",
+ "type": "string",
+ "readOnly": true
+ },
+ "marketPrice": {
+ "description": "SavingsPlan Market Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "effectivePrice": {
+ "description": "SavingsPlan Effective Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
"UsageDetail": {
"type": "object",
"discriminator": "kind",
@@ -4618,6 +4641,11 @@
"description": "Offer Id",
"type": "string",
"readOnly": true
+ },
+ "savingsPlan": {
+ "description": "SavingsPlan Details",
+ "$ref": "#/definitions/SavingsPlan",
+ "readOnly": true
}
}
},
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/PriceSheet.json
index 6605296044fa..0bcc54480709 100644
--- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/PriceSheet.json
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/PriceSheet.json
@@ -20,7 +20,12 @@
"partNumber": "XX-11110",
"unitPrice": 0.00328,
"currencyCode": "EUR",
- "offerId": "OfferId 1"
+ "offerId": "OfferId 1",
+ "savingsPlan": {
+ "term": "P3Y",
+ "effectivePrice": 0.002,
+ "marketPrice": 0.00328
+ }
}
]
}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/consumption.json
index 03376d88ddc5..05cdfdfac91f 100644
--- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/consumption.json
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/consumption.json
@@ -1914,6 +1914,29 @@
}
}
},
+ "SavingsPlan": {
+ "type": "object",
+ "description": "The properties of the SavingsPlan.",
+ "properties": {
+ "term": {
+ "description": "SavingsPlan term",
+ "type": "string",
+ "readOnly": true
+ },
+ "marketPrice": {
+ "description": "SavingsPlan Market Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "effectivePrice": {
+ "description": "SavingsPlan Effective Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
"UsageDetail": {
"type": "object",
"discriminator": "kind",
@@ -4621,6 +4644,11 @@
"description": "Offer Id",
"type": "string",
"readOnly": true
+ },
+ "savingsPlan": {
+ "description": "SavingsPlan Details",
+ "$ref": "#/definitions/SavingsPlan",
+ "readOnly": true
}
}
},
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/examples/PriceSheet.json
index 73214f0baa23..bbe08a459cfb 100644
--- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/examples/PriceSheet.json
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-05-01/examples/PriceSheet.json
@@ -20,7 +20,12 @@
"partNumber": "XX-11110",
"unitPrice": 0.00328,
"currencyCode": "EUR",
- "offerId": "OfferId 1"
+ "offerId": "OfferId 1",
+ "savingsPlan": {
+ "term": "P3Y",
+ "effectivePrice": 0.002,
+ "marketPrice": 0.00328
+ }
}
]
}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption.json
new file mode 100644
index 000000000000..95bd46ddaab1
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption.json
@@ -0,0 +1,6078 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-11-01",
+ "title": "ConsumptionManagementClient",
+ "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow.",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/{scope}/providers/Microsoft.Consumption/usageDetails": {
+ "get": {
+ "tags": [
+ "UsageDetails"
+ ],
+ "operationId": "UsageDetails_List",
+ "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later.\n\n**Note:Microsoft will be retiring the Consumption Usage Details API at some point in the future. We do not recommend that you take a new dependency on this API. Please use the Cost Details API instead. We will notify customers once a date for retirement has been determined.For Learn more,see [Generate Cost Details Report - Create Operation](https://learn.microsoft.com/en-us/rest/api/cost-management/generate-cost-details-report/create-operation?tabs=HTTP)**",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "UsageDetailsList-Legacy": {
+ "$ref": "./examples/UsageDetailsList.json"
+ },
+ "UsageDetailsListFilterByTag-Legacy": {
+ "$ref": "./examples/UsageDetailsListFilterByTag.json"
+ },
+ "UsageDetailsListForBillingPeriod-Legacy": {
+ "$ref": "./examples/UsageDetailsListForBillingPeriod.json"
+ },
+ "UsageDetailsExpand-Legacy": {
+ "$ref": "./examples/UsageDetailsExpand.json"
+ },
+ "UsageDetailsListByMetricActualCost-Legacy": {
+ "$ref": "./examples/UsageDetailsListByMetricActualCost.json"
+ },
+ "UsageDetailsListByMetricAmortizedCost-Legacy": {
+ "$ref": "./examples/UsageDetailsListByMetricAmortizedCost.json"
+ },
+ "UsageDetailsListByMetricUsage-Legacy": {
+ "$ref": "./examples/UsageDetailsListByMetricUsage.json"
+ },
+ "BillingAccountUsageDetailsList-Legacy": {
+ "$ref": "./examples/UsageDetailsListByBillingAccount.json"
+ },
+ "BillingAccountUsageDetailsListForBillingPeriod-Legacy": {
+ "$ref": "./examples/UsageDetailsListForBillingPeriodByBillingAccount.json"
+ },
+ "DepartmentUsageDetailsList-Legacy": {
+ "$ref": "./examples/UsageDetailsListByDepartment.json"
+ },
+ "DepartmentUsageDetailsListForBillingPeriod-Legacy": {
+ "$ref": "./examples/UsageDetailsListForBillingPeriodByDepartment.json"
+ },
+ "EnrollmentAccountUsageDetailsList-Legacy": {
+ "$ref": "./examples/UsageDetailsListByEnrollmentAccount.json"
+ },
+ "EnrollmentAccountUsageDetailsListForBillingPeriod-Legacy": {
+ "$ref": "./examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json"
+ },
+ "ManagementGroupUsageDetailsList-Legacy": {
+ "$ref": "./examples/UsageDetailsListByManagementGroup.json"
+ },
+ "ManagementGroupUsageDetailsListForBillingPeriod-Legacy": {
+ "$ref": "./examples/UsageDetailsListForBillingPeriodByManagementGroup.json"
+ },
+ "BillingAccountUsageDetailsList-Modern": {
+ "$ref": "./examples/UsageDetailsListByMCABillingAccount.json"
+ },
+ "BillingProfileUsageDetailsList-Modern": {
+ "$ref": "./examples/UsageDetailsListByMCABillingProfile.json"
+ },
+ "InvoiceSectionUsageDetailsList-Modern": {
+ "$ref": "./examples/UsageDetailsListByMCAInvoiceSection.json"
+ },
+ "CustomerUsageDetailsList-Modern": {
+ "$ref": "./examples/UsageDetailsListByMCACustomer.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeUsageDetailsParameter"
+ },
+ {
+ "name": "$expand",
+ "description": "May be used to expand the properties/additionalInfo or properties/meterDetails within a list of usage details. By default, these fields are not included when listing usage details.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$filter",
+ "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$skiptoken",
+ "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$top",
+ "description": "May be used to limit the number of results to the most recent N usageDetails.",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 1000
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/metricParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/UsageDetailsListResult"
+ }
+ },
+ "204": {
+ "description": "No Content. The request has succeeded but returned no results."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{scope}/providers/Microsoft.Consumption/marketplaces": {
+ "get": {
+ "tags": [
+ "Marketplaces"
+ ],
+ "x-ms-odata": "#/definitions/Marketplace",
+ "operationId": "Marketplaces_List",
+ "description": "Lists the marketplaces for a scope at the defined scope. Marketplaces are available via this API only for May 1, 2014 or later.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "SubscriptionMarketplacesList": {
+ "$ref": "./examples/MarketplacesList.json"
+ },
+ "SubscriptionMarketplacesListForBillingPeriod": {
+ "$ref": "./examples/MarketplacesListForBillingPeriod.json"
+ },
+ "BillingAccountMarketplacesList": {
+ "$ref": "./examples/MarketplacesByBillingAccountList.json"
+ },
+ "BillingAccountMarketplacesListForBillingPeriod": {
+ "$ref": "./examples/MarketplacesByBillingAccountListForBillingPeriod.json"
+ },
+ "DepartmentMarketplacesList": {
+ "$ref": "./examples/MarketplacesByDepartmentList.json"
+ },
+ "DepartmentMarketplacesListForBillingPeriod": {
+ "$ref": "./examples/MarketplacesByDepartment_ListByBillingPeriod.json"
+ },
+ "EnrollmentAccountMarketplacesList": {
+ "$ref": "./examples/MarketplacesByEnrollmentAccountList.json"
+ },
+ "EnrollmentAccountMarketplacesListForBillingPeriod": {
+ "$ref": "./examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json"
+ },
+ "ManagementGroupMarketplacesList": {
+ "$ref": "./examples/MarketplacesByManagementGroupList.json"
+ },
+ "ManagementGroupMarketplacesListForBillingPeriod": {
+ "$ref": "./examples/MarketplacesByManagementGroup_ListForBillingPeriod.json"
+ }
+ },
+ "parameters": [
+ {
+ "name": "$filter",
+ "description": "May be used to filter marketplaces by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$top",
+ "description": "May be used to limit the number of results to the most recent N marketplaces.",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 1000
+ },
+ {
+ "name": "$skiptoken",
+ "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/scopeMarketplaceParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/MarketplacesListResult"
+ }
+ },
+ "204": {
+ "description": "An empty response is sent when there is no information available within the selected scope."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{scope}/providers/Microsoft.Consumption/budgets": {
+ "get": {
+ "tags": [
+ "Budgets"
+ ],
+ "operationId": "Budgets_List",
+ "description": "Lists all budgets for the defined scope.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "BudgetsList": {
+ "$ref": "./examples/BudgetsList.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeBudgetParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/BudgetsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}": {
+ "get": {
+ "tags": [
+ "Budgets"
+ ],
+ "operationId": "Budgets_Get",
+ "description": "Gets the budget for the scope by budget name.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "Budget": {
+ "$ref": "./examples/Budget.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeBudgetParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/budgetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Budget"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Budgets"
+ ],
+ "operationId": "Budgets_CreateOrUpdate",
+ "description": "The operation to create or update a budget. You can optionally provide an eTag if desired as a form of concurrency control. To obtain the latest eTag for a given budget, perform a get operation prior to your put operation.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "CreateOrUpdateBudget": {
+ "$ref": "./examples/CreateOrUpdateBudget.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeBudgetParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/budgetNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Budget"
+ },
+ "description": "Parameters supplied to the Create Budget operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Budget"
+ }
+ },
+ "201": {
+ "description": "Created.",
+ "schema": {
+ "$ref": "#/definitions/Budget"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Budgets"
+ ],
+ "operationId": "Budgets_Delete",
+ "description": "The operation to delete a budget.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "DeleteBudget": {
+ "$ref": "./examples/DeleteBudget.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeBudgetParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/budgetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/{scope}/providers/Microsoft.Consumption/tags": {
+ "get": {
+ "tags": [
+ "Tags"
+ ],
+ "operationId": "Tags_Get",
+ "description": "Get all available tag keys for the defined scope",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "Tags_Get": {
+ "$ref": "./examples/Tags.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeTagsParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/TagsResult"
+ }
+ },
+ "204": {
+ "description": "An empty response is sent when there is no information available within the selected scope."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/{scope}/providers/Microsoft.Consumption/charges": {
+ "get": {
+ "tags": [
+ "Charges"
+ ],
+ "operationId": "Charges_List",
+ "description": "Lists the charges based for the defined scope.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ChargesListForEnrollmentAccount-Legacy": {
+ "$ref": "./examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json"
+ },
+ "ChangesForBillingPeriodByEnrollmentAccount-Legacy": {
+ "$ref": "./examples/ChargesForBillingPeriodByEnrollmentAccount.json"
+ },
+ "ChargesListByDepartment-Legacy": {
+ "$ref": "./examples/ChargesListForDepartmentFilterByStartEndDate.json"
+ },
+ "ChangesForBillingPeriodByDepartment-Legacy": {
+ "$ref": "./examples/ChargesForBillingPeriodByDepartment.json"
+ },
+ "ChargesListByBillingAccount-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingAccount.json"
+ },
+ "ChargesListByBillingAccountGroupByBillingProfileId-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json"
+ },
+ "ChargesListByBillingAccountGroupByInvoiceSectionId-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json"
+ },
+ "ChargesListByBillingAccountGroupByCustomerId-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingAccountGroupByCustomerId.json"
+ },
+ "ChargesListByBillingProfile-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingProfile.json"
+ },
+ "ChargesListByBillingProfileInvoiceSection-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingProfileInvoiceSection.json"
+ },
+ "ChargesListByBillingProfileGroupByInvoiceSectionId-Modern": {
+ "$ref": "./examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json"
+ },
+ "ChargesListByInvoiceSectionId-Modern": {
+ "$ref": "./examples/ChargesListByModernInvoiceSectionId.json"
+ },
+ "ChargesListByCustomer-Modern": {
+ "$ref": "./examples/ChargesListByModernCustomer.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeChargesParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "startDate",
+ "in": "query",
+ "description": "Start date",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "endDate",
+ "in": "query",
+ "description": "End date",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "$filter",
+ "description": "May be used to filter charges by properties/usageEnd (Utc time), properties/usageStart (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$apply",
+ "description": "May be used to group charges for billingAccount scope by properties/billingProfileId, properties/invoiceSectionId, properties/customerId (specific for Partner Led), or for billingProfile scope by properties/invoiceSectionId.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ChargesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances": {
+ "get": {
+ "tags": [
+ "Balances"
+ ],
+ "operationId": "Balances_GetByBillingAccount",
+ "description": "Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "Balances": {
+ "$ref": "./examples/BalancesByBillingAccount.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Balance"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances": {
+ "get": {
+ "tags": [
+ "Balances"
+ ],
+ "operationId": "Balances_GetForBillingPeriodByBillingAccount",
+ "description": "Gets the balances for a scope by billing period and billingAccountId. Balances are available via this API only for May 1, 2014 or later.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "Balances": {
+ "$ref": "./examples/BalancesByBillingAccountForBillingPeriod.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/billingPeriodNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Balance"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries": {
+ "get": {
+ "tags": [
+ "ReservationSummaries"
+ ],
+ "operationId": "ReservationsSummaries_ListByReservationOrder",
+ "description": "Lists the reservations summaries for daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationSummariesDaily": {
+ "$ref": "./examples/ReservationSummariesDaily.json"
+ },
+ "ReservationSummariesMonthly": {
+ "$ref": "./examples/ReservationSummariesMonthly.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/reservationOrderIdParameter"
+ },
+ {
+ "$ref": "#/parameters/grainParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationSummariesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationSummaries": {
+ "get": {
+ "tags": [
+ "ReservationSummaries"
+ ],
+ "operationId": "ReservationsSummaries_ListByReservationOrderAndReservation",
+ "description": "Lists the reservations summaries for daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationSummariesDailyWithReservationId": {
+ "$ref": "./examples/ReservationSummariesDailyWithReservationId.json"
+ },
+ "ReservationSummariesMonthlyWithReservationId": {
+ "$ref": "./examples/ReservationSummariesMonthlyWithReservationId.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/reservationOrderIdParameter"
+ },
+ {
+ "$ref": "#/parameters/reservationIdParameter"
+ },
+ {
+ "$ref": "#/parameters/grainParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationSummariesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceScope}/providers/Microsoft.Consumption/reservationSummaries": {
+ "get": {
+ "tags": [
+ "ReservationSummaries"
+ ],
+ "operationId": "ReservationsSummaries_List",
+ "description": "Lists the reservations summaries for the defined scope daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationSummariesDailyWithBillingAccountId": {
+ "$ref": "./examples/ReservationSummariesDailyWithBillingAccountId.json"
+ },
+ "ReservationSummariesMonthlyWithBillingAccountId": {
+ "$ref": "./examples/ReservationSummariesMonthlyWithBillingAccountId.json"
+ },
+ "ReservationSummariesDailyWithBillingProfileId": {
+ "$ref": "./examples/ReservationSummariesDailyWithBillingProfileId.json"
+ },
+ "ReservationSummariesMonthlyWithBillingProfileId": {
+ "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileId.json"
+ },
+ "ReservationSummariesMonthlyWithBillingProfileIdReservationId": {
+ "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeReservationsSummariesParameter"
+ },
+ {
+ "$ref": "#/parameters/grainParameter"
+ },
+ {
+ "name": "startDate",
+ "in": "query",
+ "description": "Start date. Only applicable when querying with billing profile",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "endDate",
+ "in": "query",
+ "description": "End date. Only applicable when querying with billing profile",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "$filter",
+ "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "reservationId",
+ "in": "query",
+ "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "reservationOrderId",
+ "in": "query",
+ "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationSummariesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationDetails": {
+ "get": {
+ "tags": [
+ "ReservationDetails"
+ ],
+ "operationId": "ReservationsDetails_ListByReservationOrder",
+ "description": "Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationDetails": {
+ "$ref": "./examples/ReservationDetails.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/reservationOrderIdParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'",
+ "in": "query",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationDetailsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationDetails": {
+ "get": {
+ "tags": [
+ "ReservationDetails"
+ ],
+ "operationId": "ReservationsDetails_ListByReservationOrderAndReservation",
+ "description": "Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationDetailsWithReservationId": {
+ "$ref": "./examples/ReservationDetailsWithReservationId.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/reservationOrderIdParameter"
+ },
+ {
+ "$ref": "#/parameters/reservationIdParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ",
+ "in": "query",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationDetailsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceScope}/providers/Microsoft.Consumption/reservationDetails": {
+ "get": {
+ "tags": [
+ "ReservationDetails"
+ ],
+ "operationId": "ReservationsDetails_List",
+ "description": "Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationDetailsByBillingAccountId": {
+ "$ref": "./examples/ReservationDetailsByBillingAccountId.json"
+ },
+ "ReservationDetailsByBillingProfileId": {
+ "$ref": "./examples/ReservationDetailsByBillingProfileId.json"
+ },
+ "ReservationDetailsByBillingProfileIdReservationId": {
+ "$ref": "./examples/ReservationDetailsByBillingProfileIdReservationId.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/scopeReservationDetailsParameter"
+ },
+ {
+ "name": "startDate",
+ "in": "query",
+ "description": "Start date. Only applicable when querying with billing profile",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "endDate",
+ "in": "query",
+ "description": "End date. Only applicable when querying with billing profile",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "$filter",
+ "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "reservationId",
+ "in": "query",
+ "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "name": "reservationOrderId",
+ "in": "query",
+ "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationDetailsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendations": {
+ "get": {
+ "tags": [
+ "ReservationRecommendations"
+ ],
+ "operationId": "ReservationRecommendations_List",
+ "description": "List of recommendations for purchasing reserved instances.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationRecommendationsBySubscription-Legacy": {
+ "$ref": "./examples/ReservationRecommendationsBySubscription.json"
+ },
+ "ReservationRecommendationsByResourceGroup-Legacy": {
+ "$ref": "./examples/ReservationRecommendationsByResourceGroup.json"
+ },
+ "ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod-Legacy": {
+ "$ref": "./examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json"
+ },
+ "ReservationRecommendationsByBillingAccount-Legacy": {
+ "$ref": "./examples/ReservationRecommendationsByBillingAccount.json"
+ },
+ "ReservationRecommendationsByBillingProfile-Modern": {
+ "$ref": "./examples/ReservationRecommendationsByBillingProfile.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/filterParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/scopeReservationRecommendationsParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationRecommendationsListResult"
+ }
+ },
+ "204": {
+ "description": "An empty response is sent when there are no recommendations."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendationDetails": {
+ "get": {
+ "tags": [
+ "ReservationRecommendationDetails"
+ ],
+ "operationId": "ReservationRecommendationDetails_Get",
+ "description": "Details of a reservation recommendation for what-if analysis of reserved instances.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationRecommendationsBySubscription-Legacy": {
+ "$ref": "./examples/ReservationRecommendationDetailsBySubscription.json"
+ },
+ "ReservationRecommendationsByResourceGroup-Legacy": {
+ "$ref": "./examples/ReservationRecommendationDetailsByResourceGroup.json"
+ },
+ "ReservationRecommendationsByBillingAccount-Legacy": {
+ "$ref": "./examples/ReservationRecommendationDetailsByBillingAccount.json"
+ },
+ "ReservationRecommendationsByBillingProfile-Modern": {
+ "$ref": "./examples/ReservationRecommendationDetailsByBillingProfile.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/scopeReservationRecommendationDetailsParameter"
+ },
+ {
+ "$ref": "#/parameters/scopeParameter"
+ },
+ {
+ "$ref": "#/parameters/regionParameter"
+ },
+ {
+ "$ref": "#/parameters/termParameter"
+ },
+ {
+ "$ref": "#/parameters/lookBackPeriodParameter"
+ },
+ {
+ "$ref": "#/parameters/productParameter"
+ },
+ {
+ "$ref": "#/parameters/recommendationDetailsFilterParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationRecommendationDetailsModel"
+ }
+ },
+ "204": {
+ "description": "An empty response is sent when there are no recommendation details."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/HighCasedErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions": {
+ "get": {
+ "tags": [
+ "ReservationTransactions"
+ ],
+ "operationId": "ReservationTransactions_List",
+ "description": "List of transactions for reserved instances on billing account scope. Note: The refund transactions are posted along with its purchase transaction (i.e. in the purchase billing month). For example, The refund is requested in May 2021. This refund transaction will have event date as May 2021 but the billing month as April 2020 when the reservation purchase was made. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationTransactionsByEnrollmentNumber": {
+ "$ref": "./examples/ReservationTransactionsListByEnrollmentNumber.json"
+ }
+ },
+ "parameters": [
+ {
+ "name": "$filter",
+ "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge'. Note: API returns data for the entire start date's and end date's billing month. For example, filter properties/eventDate+ge+2020-01-01+AND+properties/eventDate+le+2020-12-29 will include data for the entire December 2020 month (i.e. will contain records for dates December 30 and 31)",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/useMarkupIfPartnerParameter"
+ },
+ {
+ "$ref": "#/parameters/previewMarkupPercentage"
+ },
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ReservationTransactionsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/reservationTransactions": {
+ "get": {
+ "tags": [
+ "ReservationTransactions"
+ ],
+ "operationId": "ReservationTransactions_ListByBillingProfile",
+ "description": "List of transactions for reserved instances on billing profile scope. The refund transactions are posted along with its purchase transaction (i.e. in the purchase billing month). For example, The refund is requested in May 2021. This refund transaction will have event date as May 2021 but the billing month as April 2020 when the reservation purchase was made. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "ReservationTransactionsByBillingProfileId": {
+ "$ref": "./examples/ReservationTransactionsListByBillingProfileId.json"
+ }
+ },
+ "parameters": [
+ {
+ "name": "$filter",
+ "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge'. Note: API returns data for the entire start date's and end date's billing month. For example, filter properties/eventDate+ge+2020-01-01+AND+properties/eventDate+le+2020-12-29 will include data for entire December 2020 month (i.e. will contain records for dates December 30 and 31)",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/billingProfileIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ModernReservationTransactionsListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/pricesheets/default": {
+ "get": {
+ "tags": [
+ "PriceSheet"
+ ],
+ "operationId": "PriceSheet_Get",
+ "description": "Gets the price sheet for a subscription. Price sheet is available via this API only for May 1, 2014 or later.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "PriceSheet": {
+ "$ref": "./examples/PriceSheet.json"
+ }
+ },
+ "parameters": [
+ {
+ "name": "$expand",
+ "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$skiptoken",
+ "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$top",
+ "description": "May be used to limit the number of results to the top N results.",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 1000
+ },
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PriceSheetResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default": {
+ "get": {
+ "tags": [
+ "PriceSheet"
+ ],
+ "operationId": "PriceSheet_GetByBillingPeriod",
+ "description": "Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "PriceSheetForBillingPeriod": {
+ "$ref": "./examples/PriceSheetForBillingPeriod.json"
+ },
+ "PriceSheetExpand": {
+ "$ref": "./examples/PriceSheetExpand.json"
+ }
+ },
+ "parameters": [
+ {
+ "name": "$expand",
+ "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$skiptoken",
+ "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "$top",
+ "description": "May be used to limit the number of results to the top N results.",
+ "in": "query",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 1000
+ },
+ {
+ "$ref": "#/parameters/subscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/billingPeriodNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PriceSheetResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Consumption/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "operationId": "Operations_List",
+ "description": "Lists all of the available consumption REST API operations.",
+ "x-ms-examples": {
+ "OperationList": {
+ "$ref": "./examples/OperationList.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Consumption/aggregatedcost": {
+ "get": {
+ "tags": [
+ "AggregatedCost"
+ ],
+ "operationId": "AggregatedCost_GetByManagementGroup",
+ "description": "Provides the aggregate cost of a management group and all child management groups by current billing period.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "AggregatedCostByManagementGroup": {
+ "$ref": "./examples/AggregatedCostByManagementGroup.json"
+ },
+ "AggregatedCostByManagementGroupFilterByDate": {
+ "$ref": "./examples/AggregatedCostByManagementGroupFilterByDate.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/managementGroupIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "May be used to filter aggregated cost by properties/usageStart (Utc time), properties/usageEnd (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ManagementGroupAggregatedCostResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/aggregatedCost": {
+ "get": {
+ "tags": [
+ "AggregatedCost"
+ ],
+ "operationId": "AggregatedCost_GetForBillingPeriodByManagementGroup",
+ "description": "Provides the aggregate cost of a management group and all child management groups by specified billing period",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "AggregatedCostListForBillingPeriodByManagementGroup": {
+ "$ref": "./examples/AggregatedCostForBillingPeriodByManagementGroup.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/managementGroupIdParameter"
+ },
+ {
+ "$ref": "#/parameters/billingPeriodNameParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ManagementGroupAggregatedCostResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events": {
+ "get": {
+ "tags": [
+ "Events"
+ ],
+ "operationId": "Events_ListByBillingProfile",
+ "description": "Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "EventsListByBillingProfile": {
+ "$ref": "./examples/EventsListByBillingProfile.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/billingProfileIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/startDateParameter"
+ },
+ {
+ "$ref": "#/parameters/endDateParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Events"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/events": {
+ "get": {
+ "tags": [
+ "Events"
+ ],
+ "operationId": "Events_ListByBillingAccount",
+ "description": "Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "EventsGetByBillingAccount-Contributor": {
+ "$ref": "./examples/EventsGetByBillingAccount-Contributor.json"
+ },
+ "EventsGetByBillingAccount": {
+ "$ref": "./examples/EventsGetByBillingAccount.json"
+ },
+ "EventsGetByBillingAccountWithFilters-Contributor.json": {
+ "$ref": "./examples/EventsGetByBillingAccountWithFilters-Contributor.json"
+ },
+ "EventsGetByBillingAccountWithFilters": {
+ "$ref": "./examples/EventsGetByBillingAccountWithFilters.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "May be used to filter the events by lotId, lotSource etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Events"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots": {
+ "get": {
+ "tags": [
+ "Lots"
+ ],
+ "operationId": "Lots_ListByBillingProfile",
+ "description": "Lists all Azure credits for a billing account or a billing profile. The API is only supported for Microsoft Customer Agreements (MCA) billing accounts.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "LotsListByBillingProfile": {
+ "$ref": "./examples/LotsListByBillingProfile.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/billingProfileIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Lots"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/lots": {
+ "get": {
+ "tags": [
+ "Lots"
+ ],
+ "operationId": "Lots_ListByBillingAccount",
+ "description": "Lists all Microsoft Azure consumption commitments for a billing account. The API is only supported for Microsoft Customer Agreements (MCA) and Direct Enterprise Agreement (EA) billing accounts.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "LotsListByBillingAccount-Primary": {
+ "$ref": "./examples/LotsListByBillingAccount-Primary.json"
+ },
+ "LotsListByBillingAccount-Contributor": {
+ "$ref": "./examples/LotsListByBillingAccount-Contributor.json"
+ },
+ "LotsListByBillingAccount": {
+ "$ref": "./examples/LotsListByBillingAccount.json"
+ },
+ "LotsListByBillingAccountWithStatusFilter-Primary": {
+ "$ref": "./examples/LotsListByBillingAccountWithFilters-Primary.json"
+ },
+ "LotsListByBillingAccountWithStatusFilter-Contributor": {
+ "$ref": "./examples/LotsListByBillingAccountWithFilters-Contributor.json"
+ },
+ "LotsListByBillingAccountWithStatusFilter": {
+ "$ref": "./examples/LotsListByBillingAccountWithFilters.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Lots"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}/providers/Microsoft.Consumption/lots": {
+ "get": {
+ "tags": [
+ "Lots"
+ ],
+ "operationId": "Lots_ListByCustomer",
+ "description": "Lists all Azure credits for a customer. The API is only supported for Microsoft Partner Agreements (MPA) billing accounts.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "LotsListByCustomer": {
+ "$ref": "./examples/LotsListByCustomer.json"
+ },
+ "LotsListByCustomerWithFilter": {
+ "$ref": "./examples/LotsListByCustomerWithFilters.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/customerIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ },
+ {
+ "name": "$filter",
+ "description": "May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. Tag filter is a key value pair string where key and value is separated by a colon (:).",
+ "in": "query",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Lots"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary": {
+ "get": {
+ "tags": [
+ "Credits"
+ ],
+ "operationId": "Credits_Get",
+ "description": "The credit summary by billingAccountId and billingProfileId.",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-examples": {
+ "CreditSummaryByBillingProfile": {
+ "$ref": "./examples/CreditSummaryByBillingProfile.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "#/parameters/billingProfileIdParameter"
+ },
+ {
+ "$ref": "#/parameters/apiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/CreditSummary"
+ }
+ },
+ "204": {
+ "description": "No Content. The request has succeeded but returned no results."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "MeterDetails": {
+ "description": "The properties of the meter detail.",
+ "properties": {
+ "meterName": {
+ "description": "The name of the meter, within the given meter category",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterCategory": {
+ "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterSubCategory": {
+ "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..",
+ "type": "string",
+ "readOnly": true
+ },
+ "unit": {
+ "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterLocation": {
+ "description": "The location in which the Azure service is available.",
+ "type": "string",
+ "readOnly": true
+ },
+ "totalIncludedQuantity": {
+ "description": "The total included quantity associated with the offer.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "pretaxStandardRate": {
+ "description": "The pretax listing price.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "serviceName": {
+ "description": "The name of the service.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceTier": {
+ "description": "The service tier.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SavingsPlan": {
+ "type": "object",
+ "description": "The properties of the SavingsPlan.",
+ "properties": {
+ "term": {
+ "description": "SavingsPlan term",
+ "type": "string",
+ "readOnly": true
+ },
+ "marketPrice": {
+ "description": "SavingsPlan Market Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "effectivePrice": {
+ "description": "SavingsPlan Effective Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
+ "UsageDetail": {
+ "type": "object",
+ "discriminator": "kind",
+ "description": "An usage detail resource.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "type": "string",
+ "description": "Specifies the kind of usage details.",
+ "enum": [
+ "legacy",
+ "modern"
+ ],
+ "x-ms-enum": {
+ "name": "UsageDetailsKind",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "kind"
+ ]
+ },
+ "UsageDetailsListResult": {
+ "description": "Result of listing usage details. It contains a list of available usage details in reverse chronological order by billing period.",
+ "properties": {
+ "value": {
+ "description": "The list of usage details.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/UsageDetail"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "LegacyUsageDetail": {
+ "description": "Legacy usage detail.",
+ "type": "object",
+ "x-ms-discriminator-value": "legacy",
+ "properties": {
+ "properties": {
+ "description": "Properties for legacy usage details",
+ "$ref": "#/definitions/LegacyUsageDetailProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/UsageDetail"
+ }
+ ],
+ "required": [
+ "properties"
+ ]
+ },
+ "LegacyUsageDetailProperties": {
+ "description": "The properties of the legacy usage detail.",
+ "properties": {
+ "billingAccountId": {
+ "description": "Billing Account identifier.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingAccountName": {
+ "description": "Billing Account Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingPeriodStartDate": {
+ "description": "The billing period start date.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "billingPeriodEndDate": {
+ "description": "The billing period end date.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "billingProfileId": {
+ "description": "Billing Profile identifier.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileName": {
+ "description": "Billing Profile Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "accountOwnerId": {
+ "description": "Account Owner Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "accountName": {
+ "description": "Account Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subscriptionId": {
+ "description": "Subscription guid.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subscriptionName": {
+ "description": "Subscription name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "date": {
+ "description": "Date for the usage record.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "product": {
+ "description": "Product name for the consumed service or purchase. Not available for Marketplace.",
+ "type": "string",
+ "readOnly": true
+ },
+ "partNumber": {
+ "description": "Part Number of the service used. Can be used to join with the price sheet. Not available for marketplace.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterId": {
+ "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "meterDetails": {
+ "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.",
+ "$ref": "#/definitions/MeterDetailsResponse",
+ "readOnly": true
+ },
+ "quantity": {
+ "description": "The usage quantity.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "effectivePrice": {
+ "description": "Effective Price that's charged for the usage.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "cost": {
+ "description": "The amount of cost before tax.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "unitPrice": {
+ "description": "Unit Price is the price applicable to you. (your EA or other contract price).",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "billingCurrency": {
+ "description": "Billing Currency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceLocation": {
+ "description": "Resource Location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "consumedService": {
+ "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceId": {
+ "description": "Unique identifier of the Azure Resource Manager usage detail resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceName": {
+ "description": "Resource Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceInfo1": {
+ "description": "Service-specific metadata.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceInfo2": {
+ "description": "Legacy field with optional service-specific metadata.",
+ "type": "string",
+ "readOnly": true
+ },
+ "additionalInfo": {
+ "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceSection": {
+ "description": "Invoice Section Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costCenter": {
+ "description": "The cost center of this department if it is a department and a cost center is provided.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceGroup": {
+ "description": "Resource Group Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationId": {
+ "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationName": {
+ "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "productOrderId": {
+ "description": "Product Order Id. For reservations this is the Reservation Order ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "productOrderName": {
+ "description": "Product Order Name. For reservations this is the SKU that was purchased.",
+ "type": "string",
+ "readOnly": true
+ },
+ "offerId": {
+ "description": "Offer Id. Ex: MS-AZR-0017P, MS-AZR-0148P.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isAzureCreditEligible": {
+ "description": "Is Azure Credit Eligible.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "term": {
+ "description": "Term (in months). 1 month for monthly recurring purchase. 12 months for a 1 year reservation. 36 months for a 3 year reservation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherName": {
+ "description": "Publisher Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherType": {
+ "description": "Publisher Type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "planName": {
+ "description": "Plan Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "chargeType": {
+ "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.",
+ "type": "string",
+ "readOnly": true
+ },
+ "frequency": {
+ "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.",
+ "type": "string",
+ "readOnly": true
+ },
+ "payGPrice": {
+ "description": "Retail price for the resource.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "benefitId": {
+ "description": "Unique identifier for the applicable benefit.",
+ "type": "string",
+ "readOnly": true
+ },
+ "benefitName": {
+ "description": "Name of the applicable benefit.",
+ "type": "string",
+ "readOnly": true
+ },
+ "pricingModel": {
+ "description": "Identifier that indicates how the meter is priced.",
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "On Demand",
+ "Reservation",
+ "Spot"
+ ],
+ "x-ms-enum": {
+ "name": "pricingModelType",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ModernUsageDetail": {
+ "description": "Modern usage detail.",
+ "type": "object",
+ "x-ms-discriminator-value": "modern",
+ "properties": {
+ "properties": {
+ "description": "Properties for modern usage details",
+ "$ref": "#/definitions/ModernUsageDetailProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/UsageDetail"
+ }
+ ],
+ "required": [
+ "properties"
+ ]
+ },
+ "ModernUsageDetailProperties": {
+ "description": "The properties of the usage detail.",
+ "properties": {
+ "billingAccountId": {
+ "description": "Billing Account identifier.",
+ "type": "string",
+ "readOnly": true
+ },
+ "effectivePrice": {
+ "description": "Effective Price that's charged for the usage.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "pricingModel": {
+ "description": "Identifier that indicates how the meter is priced",
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "On Demand",
+ "Reservation",
+ "Spot"
+ ],
+ "x-ms-enum": {
+ "name": "pricingModelType",
+ "modelAsString": true
+ }
+ },
+ "billingAccountName": {
+ "description": "Name of the Billing Account.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingPeriodStartDate": {
+ "description": "Billing Period Start Date as in the invoice.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "billingPeriodEndDate": {
+ "description": "Billing Period End Date as in the invoice.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "billingProfileId": {
+ "description": "Identifier for the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileName": {
+ "description": "Name of the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subscriptionGuid": {
+ "description": "Unique Microsoft generated identifier for the Azure Subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "subscriptionName": {
+ "description": "Name of the Azure Subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "date": {
+ "description": "Date for the usage record.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "product": {
+ "description": "Name of the product that has accrued charges by consumption or purchase as listed in the invoice. Not available for Marketplace.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterId": {
+ "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "meterName": {
+ "description": "Identifies the name of the meter against which consumption is measured.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterRegion": {
+ "description": "Identifies the location of the datacenter for certain services that are priced based on datacenter location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterCategory": {
+ "description": "Identifies the top-level service for the usage.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterSubCategory": {
+ "description": "Defines the type or sub-category of Azure service that can affect the rate.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceFamily": {
+ "description": "List the service family for the product purchased or charged (Example: Storage ; Compute).",
+ "type": "string",
+ "readOnly": true
+ },
+ "quantity": {
+ "description": "Measure the quantity purchased or consumed.The amount of the meter used during the billing period.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "unitOfMeasure": {
+ "description": "Identifies the Unit that the service is charged in. For example, GB, hours, 10,000 s.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceName": {
+ "description": "Instance Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costInUSD": {
+ "description": "Estimated extendedCost or blended cost before tax in USD.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "unitPrice": {
+ "description": "Unit Price is the price applicable to you. (your EA or other contract price).",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "billingCurrencyCode": {
+ "description": "The currency defining the billed cost.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceLocation": {
+ "description": "Name of the resource location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "consumedService": {
+ "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceInfo1": {
+ "description": "Service-specific metadata.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceInfo2": {
+ "description": "Legacy field with optional service-specific metadata.",
+ "type": "string",
+ "readOnly": true
+ },
+ "additionalInfo": {
+ "description": "Additional details of this usage item. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceSectionId": {
+ "description": "Identifier of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceSectionName": {
+ "description": "Name of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costCenter": {
+ "description": "The cost center of this department if it is a department and a cost center is provided.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceGroup": {
+ "description": "Name of the Azure resource group used for cohesive lifecycle management of resources.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationId": {
+ "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationName": {
+ "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "productOrderId": {
+ "description": "The identifier for the asset or Azure plan name that the subscription belongs to. For example: Azure Plan. For reservations this is the Reservation Order ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "productOrderName": {
+ "description": "Product Order Name. For reservations this is the SKU that was purchased.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isAzureCreditEligible": {
+ "description": "Determines if the cost is eligible to be paid for using Azure credits.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "term": {
+ "description": "Term (in months). Displays the term for the validity of the offer. For example. In case of reserved instances it displays 12 months for yearly term of reserved instance. For one time purchases or recurring purchases, the terms displays 1 month; This is not applicable for Azure consumption.",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherName": {
+ "description": "Name of the publisher of the service including Microsoft or Third Party publishers.",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherType": {
+ "description": "Type of publisher that identifies if the publisher is first party, third party reseller or third party agency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "chargeType": {
+ "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.",
+ "type": "string",
+ "readOnly": true
+ },
+ "frequency": {
+ "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costInBillingCurrency": {
+ "description": "ExtendedCost or blended cost before tax in billed currency.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "costInPricingCurrency": {
+ "description": "ExtendedCost or blended cost before tax in pricing currency to correlate with prices.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "exchangeRate": {
+ "description": "Exchange rate used in conversion from pricing currency to billing currency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "exchangeRateDate": {
+ "description": "Date on which exchange rate used in conversion from pricing currency to billing currency.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "invoiceId": {
+ "description": "Invoice ID as on the invoice where the specific transaction appears.",
+ "type": "string",
+ "readOnly": true
+ },
+ "previousInvoiceId": {
+ "description": "Reference to an original invoice there is a refund (negative cost). This is populated only when there is a refund.",
+ "type": "string",
+ "readOnly": true
+ },
+ "pricingCurrencyCode": {
+ "description": "Pricing Billing Currency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "productIdentifier": {
+ "description": "Identifier for the product that has accrued charges by consumption or purchase . This is the concatenated key of productId and SkuId in partner center.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceLocationNormalized": {
+ "description": "Resource Location Normalized.",
+ "type": "string",
+ "readOnly": true
+ },
+ "servicePeriodStartDate": {
+ "description": "Start date for the rating period when the service usage was rated for charges. The prices for Azure services are determined for the rating period.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "servicePeriodEndDate": {
+ "description": "End date for the period when the service usage was rated for charges. The prices for Azure services are determined based on the rating period.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "customerTenantId": {
+ "description": "Identifier of the customer's AAD tenant.",
+ "type": "string",
+ "readOnly": true
+ },
+ "customerName": {
+ "description": "Name of the customer's AAD tenant.",
+ "type": "string",
+ "readOnly": true
+ },
+ "partnerTenantId": {
+ "description": "Identifier for the partner's AAD tenant.",
+ "type": "string",
+ "readOnly": true
+ },
+ "partnerName": {
+ "description": "Name of the partner' AAD tenant.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resellerMpnId": {
+ "description": "MPNId for the reseller associated with the subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resellerName": {
+ "description": "Reseller Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherId": {
+ "description": "Publisher Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "marketPrice": {
+ "description": "Market Price that's charged for the usage.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "exchangeRatePricingToBilling": {
+ "description": "Exchange Rate from pricing currency to billing currency.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "paygCostInBillingCurrency": {
+ "description": "The amount of PayG cost before tax in billing currency.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "paygCostInUSD": {
+ "description": "The amount of PayG cost before tax in US Dollar currency.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "partnerEarnedCreditRate": {
+ "description": "Rate of discount applied if there is a partner earned credit (PEC) based on partner admin link access.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "partnerEarnedCreditApplied": {
+ "description": "Flag to indicate if partner earned credit has been applied or not.",
+ "type": "string",
+ "readOnly": true
+ },
+ "payGPrice": {
+ "description": "Retail price for the resource.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "benefitId": {
+ "description": "Unique identifier for the applicable benefit.",
+ "type": "string",
+ "readOnly": true
+ },
+ "benefitName": {
+ "description": "Name of the applicable benefit.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provider": {
+ "description": "Identifier for Product Category or Line Of Business, Ex - Azure, Microsoft 365, AWS e.t.c",
+ "type": "string",
+ "readOnly": true
+ },
+ "costAllocationRuleName": {
+ "description": "Name for Cost Allocation Rule.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Marketplace": {
+ "description": "A marketplace resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/MarketplaceProperties",
+ "title": "Marketplace properties"
+ }
+ }
+ },
+ "MarketplacesListResult": {
+ "description": "Result of listing marketplaces. It contains a list of available marketplaces in reverse chronological order by billing period.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of marketplaces.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/Marketplace"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "MarketplaceProperties": {
+ "description": "The properties of the marketplace usage detail.",
+ "type": "object",
+ "properties": {
+ "billingPeriodId": {
+ "description": "The id of the billing period resource that the usage belongs to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageStart": {
+ "description": "The start of the date time range covered by the usage detail.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "usageEnd": {
+ "description": "The end of the date time range covered by the usage detail.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "resourceRate": {
+ "description": "The marketplace resource rate.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "offerName": {
+ "description": "The type of offer.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceGroup": {
+ "description": "The name of resource group.",
+ "type": "string",
+ "readOnly": true
+ },
+ "additionalInfo": {
+ "description": "Additional information.",
+ "type": "string",
+ "readOnly": true
+ },
+ "orderNumber": {
+ "description": "The order number.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceName": {
+ "description": "The name of the resource instance that the usage is about.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceId": {
+ "description": "The uri of the resource instance that the usage is about.",
+ "type": "string",
+ "readOnly": true
+ },
+ "currency": {
+ "description": "The ISO currency in which the meter is charged, for example, USD.",
+ "type": "string",
+ "readOnly": true
+ },
+ "consumedQuantity": {
+ "description": "The quantity of usage.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "unitOfMeasure": {
+ "description": "The unit of measure.",
+ "type": "string",
+ "readOnly": true
+ },
+ "pretaxCost": {
+ "description": "The amount of cost before tax.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "isEstimated": {
+ "description": "The estimated usage is subject to change.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "meterId": {
+ "description": "The meter id (GUID).",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "subscriptionGuid": {
+ "description": "Subscription guid.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "subscriptionName": {
+ "description": "Subscription name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "accountName": {
+ "description": "Account name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "departmentName": {
+ "description": "Department name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "consumedService": {
+ "description": "Consumed service name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costCenter": {
+ "description": "The cost center of this department if it is a department and a costcenter exists",
+ "type": "string",
+ "readOnly": true
+ },
+ "additionalProperties": {
+ "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand.",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherName": {
+ "description": "The name of publisher.",
+ "type": "string",
+ "readOnly": true
+ },
+ "planName": {
+ "description": "The name of plan.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isRecurringCharge": {
+ "description": "Flag indicating whether this is a recurring charge or not.",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "Balance": {
+ "description": "A balance resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/BalanceProperties",
+ "title": "Balance properties"
+ }
+ }
+ },
+ "BalanceProperties": {
+ "description": "The properties of the balance.",
+ "type": "object",
+ "properties": {
+ "currency": {
+ "description": "The ISO currency in which the meter is charged, for example, USD.",
+ "type": "string",
+ "readOnly": true
+ },
+ "beginningBalance": {
+ "description": "The beginning balance for the billing period.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "endingBalance": {
+ "description": "The ending balance for the billing period (for open periods this will be updated daily).",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "newPurchases": {
+ "description": "Total new purchase amount.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "adjustments": {
+ "description": "Total adjustment amount.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "utilized": {
+ "description": "Total Commitment usage.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "serviceOverage": {
+ "description": "Overage for Azure services.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "chargesBilledSeparately": {
+ "description": "Charges Billed separately.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "totalOverage": {
+ "description": "serviceOverage + chargesBilledSeparately.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "totalUsage": {
+ "description": "Azure service commitment + total Overage.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "azureMarketplaceServiceCharges": {
+ "description": "Total charges for Azure Marketplace.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "billingFrequency": {
+ "description": "The billing frequency.",
+ "type": "string",
+ "enum": [
+ "Month",
+ "Quarter",
+ "Year"
+ ],
+ "x-ms-enum": {
+ "name": "BillingFrequency",
+ "modelAsString": true
+ }
+ },
+ "priceHidden": {
+ "description": "Price is hidden or not.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "overageRefund": {
+ "description": "Overage Refunds",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "newPurchasesDetails": {
+ "description": "List of new purchases.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "the name of new purchase.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "the value of new purchase.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ },
+ "adjustmentDetails": {
+ "description": "List of Adjustments (Promo credit, SIE credit etc.).",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "the name of new adjustment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "the value of new adjustment.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationSummary": {
+ "description": "reservation summary resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ReservationSummaryProperties",
+ "title": "Reservation Summary properties"
+ }
+ }
+ },
+ "ReservationSummariesListResult": {
+ "description": "Result of listing reservation summaries.",
+ "properties": {
+ "value": {
+ "description": "The list of reservation summaries.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ReservationSummary"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationSummaryProperties": {
+ "description": "The properties of the reservation summary.",
+ "properties": {
+ "reservationOrderId": {
+ "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationId": {
+ "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "skuName": {
+ "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservedHours": {
+ "description": "This is the total hours reserved. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "usageDate": {
+ "description": "Data corresponding to the utilization record. If the grain of data is monthly, it will be first day of month.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "usedHours": {
+ "description": "Total used hours by the reservation",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "minUtilizationPercentage": {
+ "description": "This is the minimum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 10%, this field will return 10% for that day",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "avgUtilizationPercentage": {
+ "description": "This is average utilization for the entire time range. (day or month depending on the grain)",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "maxUtilizationPercentage": {
+ "description": "This is the maximum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 100%, this field will return 100% for that day.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "kind": {
+ "description": "The reservation kind.",
+ "type": "string",
+ "readOnly": true
+ },
+ "purchasedQuantity": {
+ "description": "This is the purchased quantity for the reservationId.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "remainingQuantity": {
+ "description": "This is the remaining quantity for the reservationId.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "totalReservedQuantity": {
+ "description": "This is the total count of instances that are reserved for the reservationId.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "usedQuantity": {
+ "description": "This is the used quantity for the reservationId.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "utilizedPercentage": {
+ "description": "This is the utilized percentage for the reservation Id.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationDetail": {
+ "description": "reservation detail resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ReservationDetailProperties",
+ "title": "Reservation Detail properties"
+ }
+ }
+ },
+ "ReservationDetailsListResult": {
+ "description": "Result of listing reservation details.",
+ "properties": {
+ "value": {
+ "description": "The list of reservation details.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ReservationDetail"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationDetailProperties": {
+ "description": "The properties of the reservation detail.",
+ "properties": {
+ "reservationOrderId": {
+ "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceFlexibilityRatio": {
+ "description": "The instance Flexibility Ratio.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceFlexibilityGroup": {
+ "description": "The instance Flexibility Group.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationId": {
+ "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "skuName": {
+ "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservedHours": {
+ "description": "This is the total hours reserved for the day. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "usageDate": {
+ "description": "The date on which consumption occurred.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "usedHours": {
+ "description": "This is the total hours used by the instance.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "instanceId": {
+ "description": "This identifier is the name of the resource or the fully qualified Resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "totalReservedQuantity": {
+ "description": "This is the total count of instances that are reserved for the reservationId.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "kind": {
+ "description": "The reservation kind.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendationDetailsModel": {
+ "description": "Reservation recommendation details.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "Resource Location."
+ },
+ "sku": {
+ "type": "string",
+ "description": "Resource sku"
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ReservationRecommendationDetailsProperties",
+ "title": "Reservation Recommendation details properties"
+ }
+ }
+ },
+ "ReservationRecommendationDetailsProperties": {
+ "description": "The properties of the reservation recommendation.",
+ "properties": {
+ "currency": {
+ "description": "An ISO 4217 currency code identifier for the costs and savings ",
+ "type": "string",
+ "readOnly": true
+ },
+ "resource": {
+ "description": "Resource specific properties.",
+ "$ref": "#/definitions/ReservationRecommendationDetailsResourceProperties",
+ "readOnly": true
+ },
+ "resourceGroup": {
+ "description": "Resource Group.",
+ "type": "string",
+ "readOnly": true
+ },
+ "savings": {
+ "description": "Savings information for the recommendation.",
+ "$ref": "#/definitions/ReservationRecommendationDetailsSavingsProperties",
+ "readOnly": true
+ },
+ "scope": {
+ "description": "Scope of the reservation, ex: Single or Shared.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usage": {
+ "description": "Historical usage details used to calculate the estimated savings.",
+ "$ref": "#/definitions/ReservationRecommendationDetailsUsageProperties",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendationDetailsCalculatedSavingsProperties": {
+ "description": "Details of estimated savings. The costs and savings are estimated for the term.",
+ "properties": {
+ "onDemandCost": {
+ "description": "The cost without reservation. Includes hardware and software cost.",
+ "type": "number",
+ "readOnly": true
+ },
+ "overageCost": {
+ "description": "Hardware and software cost of the resources not covered by the reservation.",
+ "type": "number",
+ "readOnly": true
+ },
+ "quantity": {
+ "description": "The quantity for calculated savings.",
+ "type": "number",
+ "readOnly": true
+ },
+ "reservationCost": {
+ "description": "Hardware cost of the resources covered by the reservation.",
+ "type": "number",
+ "readOnly": true
+ },
+ "totalReservationCost": {
+ "description": "Reservation cost + software cost of the resources covered by the reservation + overage cost.",
+ "type": "number",
+ "readOnly": true
+ },
+ "reservedUnitCount": {
+ "description": "The number of reserved units used to calculate savings. Always 1 for virtual machines.",
+ "type": "number"
+ },
+ "savings": {
+ "description": "The amount saved by purchasing the recommended quantity of reservation. This is equal to onDemandCost - totalReservationCost.",
+ "type": "number",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendationDetailsResourceProperties": {
+ "description": "Details of the resource.",
+ "properties": {
+ "appliedScopes": {
+ "description": "List of subscriptions for which the reservation is applied.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "onDemandRate": {
+ "description": "Hourly on-demand rate of the resource. Includes only hardware rate i.e, software rate is not included.",
+ "type": "number",
+ "readOnly": true
+ },
+ "product": {
+ "description": "Azure product ex: Standard_E8s_v3 etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "region": {
+ "description": "Azure resource region ex:EastUS, WestUS etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationRate": {
+ "description": "Hourly reservation rate of the resource. Varies based on the term.",
+ "type": "number",
+ "readOnly": true
+ },
+ "resourceType": {
+ "description": "The azure resource type.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendationDetailsSavingsProperties": {
+ "description": "Details of the estimated savings.",
+ "properties": {
+ "calculatedSavings": {
+ "description": "List of calculated savings.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ReservationRecommendationDetailsCalculatedSavingsProperties"
+ },
+ "x-ms-identifiers": []
+ },
+ "lookBackPeriod": {
+ "description": "Number of days of usage to look back used for computing the recommendation.",
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true
+ },
+ "recommendedQuantity": {
+ "description": "Number of recommended units of the resource.",
+ "type": "number",
+ "readOnly": true
+ },
+ "reservationOrderTerm": {
+ "description": "Term period of the reservation, ex: P1Y or P3Y.",
+ "type": "string",
+ "readOnly": true
+ },
+ "savingsType": {
+ "description": "Type of savings, ex: instance.",
+ "type": "string",
+ "readOnly": true
+ },
+ "unitOfMeasure": {
+ "description": "Measurement unit ex: hour etc.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendationDetailsUsageProperties": {
+ "description": "Details about historical usage data that has been used for computing the recommendation.",
+ "properties": {
+ "firstConsumptionDate": {
+ "description": "The first usage date used for looking back for computing the recommendation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastConsumptionDate": {
+ "description": "The last usage date used for looking back for computing the recommendation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lookBackUnitType": {
+ "description": "What the usage data values represent ex: virtual machine instance.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageData": {
+ "description": "The breakdown of historical resource usage. The values are in the order of usage between the firstConsumptionDate and the lastConsumptionDate.",
+ "type": "array",
+ "items": {
+ "type": "number"
+ },
+ "readOnly": true
+ },
+ "usageGrain": {
+ "description": "The grain of the values represented in the usage data ex: hourly.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendationsListResult": {
+ "description": "Result of listing reservation recommendations.",
+ "properties": {
+ "value": {
+ "description": "The list of reservation recommendations.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ReservationRecommendation"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ },
+ "previousLink": {
+ "description": "The link (url) to the previous page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationRecommendation": {
+ "description": "A reservation recommendation resource.",
+ "type": "object",
+ "discriminator": "kind",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ },
+ {
+ "$ref": "#/definitions/ResourceAttributes"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "type": "string",
+ "description": "Specifies the kind of reservation recommendation.",
+ "enum": [
+ "legacy",
+ "modern"
+ ],
+ "x-ms-enum": {
+ "name": "ReservationRecommendationKind",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "kind"
+ ]
+ },
+ "LegacyReservationRecommendation": {
+ "description": "Legacy reservation recommendation.",
+ "type": "object",
+ "x-ms-discriminator-value": "legacy",
+ "properties": {
+ "properties": {
+ "description": "Properties for legacy reservation recommendation",
+ "$ref": "#/definitions/LegacyReservationRecommendationProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ReservationRecommendation"
+ }
+ ],
+ "required": [
+ "properties"
+ ]
+ },
+ "LegacyReservationRecommendationProperties": {
+ "description": "The properties of the reservation recommendation.",
+ "type": "object",
+ "discriminator": "scope",
+ "properties": {
+ "lookBackPeriod": {
+ "description": "The number of days of usage to look back for recommendation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "instanceFlexibilityRatio": {
+ "description": "The instance Flexibility Ratio.",
+ "type": "number",
+ "readOnly": true
+ },
+ "instanceFlexibilityGroup": {
+ "description": "The instance Flexibility Group.",
+ "type": "string",
+ "readOnly": true
+ },
+ "normalizedSize": {
+ "description": "The normalized Size.",
+ "type": "string",
+ "readOnly": true
+ },
+ "recommendedQuantityNormalized": {
+ "description": "The recommended Quantity Normalized.",
+ "type": "number",
+ "readOnly": true
+ },
+ "meterId": {
+ "description": "The meter id (GUID)",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "resourceType": {
+ "description": "The azure resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "term": {
+ "description": "RI recommendations in one or three year terms.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costWithNoReservedInstances": {
+ "description": "The total amount of cost without reserved instances.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "recommendedQuantity": {
+ "description": "Recommended quality for reserved instances.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "totalCostWithReservedInstances": {
+ "description": "The total amount of cost with reserved instances.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "netSavings": {
+ "description": "Total estimated savings with reserved instances.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "firstUsageDate": {
+ "description": "The usage date for looking back.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "scope": {
+ "description": "Shared or single recommendation.",
+ "type": "string"
+ },
+ "skuProperties": {
+ "description": "List of sku properties",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SkuProperty"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ }
+ },
+ "required": [
+ "scope"
+ ]
+ },
+ "LegacySingleScopeReservationRecommendationProperties": {
+ "description": "The properties of the legacy reservation recommendation for single scope.",
+ "type": "object",
+ "x-ms-discriminator-value": "Single",
+ "properties": {
+ "subscriptionId": {
+ "description": "Subscription id associated with single scoped recommendation.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/LegacyReservationRecommendationProperties"
+ }
+ ]
+ },
+ "LegacySharedScopeReservationRecommendationProperties": {
+ "description": "The properties of the legacy reservation recommendation for shared scope.",
+ "type": "object",
+ "x-ms-discriminator-value": "Shared",
+ "allOf": [
+ {
+ "$ref": "#/definitions/LegacyReservationRecommendationProperties"
+ }
+ ]
+ },
+ "SkuProperty": {
+ "description": "The Sku property",
+ "properties": {
+ "name": {
+ "description": "The name of sku property.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "The value of sku property.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ModernReservationRecommendation": {
+ "description": "Modern reservation recommendation.",
+ "type": "object",
+ "x-ms-discriminator-value": "modern",
+ "properties": {
+ "properties": {
+ "description": "Properties for modern reservation recommendation",
+ "$ref": "#/definitions/ModernReservationRecommendationProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ReservationRecommendation"
+ }
+ ],
+ "required": [
+ "properties"
+ ]
+ },
+ "ModernReservationRecommendationProperties": {
+ "description": "The properties of the reservation recommendation.",
+ "type": "object",
+ "discriminator": "scope",
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "Resource Location.",
+ "readOnly": true
+ },
+ "lookBackPeriod": {
+ "description": "The number of days of usage to look back for recommendation.",
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true
+ },
+ "instanceFlexibilityRatio": {
+ "description": "The instance Flexibility Ratio.",
+ "type": "number",
+ "readOnly": true
+ },
+ "instanceFlexibilityGroup": {
+ "description": "The instance Flexibility Group.",
+ "type": "string",
+ "readOnly": true
+ },
+ "normalizedSize": {
+ "description": "The normalized Size.",
+ "type": "string",
+ "readOnly": true
+ },
+ "recommendedQuantityNormalized": {
+ "description": "The recommended Quantity Normalized.",
+ "type": "number",
+ "readOnly": true
+ },
+ "meterId": {
+ "description": "The meter id (GUID)",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "term": {
+ "description": "RI recommendations in one or three year terms.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costWithNoReservedInstances": {
+ "description": "The total amount of cost without reserved instances.",
+ "$ref": "#/definitions/amount",
+ "readOnly": true
+ },
+ "recommendedQuantity": {
+ "description": "Recommended quality for reserved instances.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "resourceType": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "totalCostWithReservedInstances": {
+ "description": "The total amount of cost with reserved instances.",
+ "$ref": "#/definitions/amount",
+ "readOnly": true
+ },
+ "netSavings": {
+ "description": "Total estimated savings with reserved instances.",
+ "$ref": "#/definitions/amount",
+ "readOnly": true
+ },
+ "firstUsageDate": {
+ "description": "The usage date for looking back.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "scope": {
+ "description": "Shared or single recommendation.",
+ "type": "string"
+ },
+ "skuProperties": {
+ "description": "List of sku properties",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SkuProperty"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ },
+ "skuName": {
+ "description": "This is the ARM Sku name.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "scope"
+ ]
+ },
+ "ModernSingleScopeReservationRecommendationProperties": {
+ "description": "The properties of the modern reservation recommendation for single scope.",
+ "type": "object",
+ "x-ms-discriminator-value": "Single",
+ "properties": {
+ "subscriptionId": {
+ "description": "Subscription ID associated with single scoped recommendation.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ModernReservationRecommendationProperties"
+ }
+ ]
+ },
+ "ModernSharedScopeReservationRecommendationProperties": {
+ "description": "The properties of the modern reservation recommendation for shared scope.",
+ "type": "object",
+ "x-ms-discriminator-value": "Shared",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ModernReservationRecommendationProperties"
+ }
+ ]
+ },
+ "ModernReservationTransactionProperties": {
+ "description": "The properties of a modern reservation transaction.",
+ "properties": {
+ "amount": {
+ "description": "The charge of the transaction.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "armSkuName": {
+ "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingFrequency": {
+ "description": "The billing frequency, which can be either one-time or recurring.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileId": {
+ "description": "Billing profile Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileName": {
+ "description": "Billing profile name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "currency": {
+ "description": "The ISO currency in which the transaction is charged, for example, USD.",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "The description of the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eventDate": {
+ "description": "The date of the transaction",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "eventType": {
+ "description": "The type of the transaction (Purchase, Cancel or Refund).",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoice": {
+ "description": "Invoice Number",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceId": {
+ "description": "Invoice Id as on the invoice where the specific transaction appears.",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceSectionId": {
+ "description": "Invoice Section Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceSectionName": {
+ "description": "Invoice Section Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "purchasingSubscriptionGuid": {
+ "description": "The subscription guid that makes the transaction.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "purchasingSubscriptionName": {
+ "description": "The subscription name that makes the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "quantity": {
+ "description": "The quantity of the transaction.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "region": {
+ "description": "The region of the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationOrderId": {
+ "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationOrderName": {
+ "description": "The name of the reservation order.",
+ "type": "string",
+ "readOnly": true
+ },
+ "term": {
+ "description": "This is the term of the transaction.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ModernReservationTransaction": {
+ "description": "Modern Reservation transaction resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ReservationTransactionResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ModernReservationTransactionProperties",
+ "title": "Reservation Transaction properties"
+ }
+ },
+ "required": [
+ "properties"
+ ]
+ },
+ "LegacyReservationTransaction": {
+ "description": "Legacy Reservation transaction resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ReservationTransaction"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/LegacyReservationTransactionProperties",
+ "title": "Reservation Transaction properties"
+ }
+ },
+ "required": [
+ "properties"
+ ]
+ },
+ "LegacyReservationTransactionProperties": {
+ "description": "The properties of a legacy reservation transaction.",
+ "properties": {
+ "eventDate": {
+ "description": "The date of the transaction",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "reservationOrderId": {
+ "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "The description of the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "eventType": {
+ "description": "The type of the transaction (Purchase, Cancel or Refund).",
+ "type": "string",
+ "readOnly": true
+ },
+ "quantity": {
+ "description": "The quantity of the transaction.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "amount": {
+ "description": "The charge of the transaction.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "currency": {
+ "description": "The ISO currency in which the transaction is charged, for example, USD.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reservationOrderName": {
+ "description": "The name of the reservation order.",
+ "type": "string",
+ "readOnly": true
+ },
+ "purchasingEnrollment": {
+ "description": "The purchasing enrollment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "purchasingSubscriptionGuid": {
+ "description": "The subscription guid that makes the transaction.",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "purchasingSubscriptionName": {
+ "description": "The subscription name that makes the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "armSkuName": {
+ "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.",
+ "type": "string",
+ "readOnly": true
+ },
+ "term": {
+ "description": "This is the term of the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "region": {
+ "description": "The region of the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "accountName": {
+ "description": "The name of the account that makes the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "accountOwnerEmail": {
+ "description": "The email of the account owner that makes the transaction.",
+ "type": "string",
+ "readOnly": true
+ },
+ "departmentName": {
+ "description": "The department name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "costCenter": {
+ "description": "The cost center of this department if it is a department and a cost center is provided.",
+ "type": "string",
+ "readOnly": true
+ },
+ "currentEnrollment": {
+ "description": "The current enrollment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingFrequency": {
+ "description": "The billing frequency, which can be either one-time or recurring.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingMonth": {
+ "description": "The billing month(yyyyMMdd), on which the event initiated.",
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true
+ },
+ "monetaryCommitment": {
+ "description": "The monetary commitment amount at the enrollment scope.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "overage": {
+ "description": "The overage amount at the enrollment scope.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ }
+ }
+ },
+ "ReservationTransaction": {
+ "description": "Reservation transaction resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ReservationTransactionResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/LegacyReservationTransactionProperties",
+ "title": "Reservation Transaction properties"
+ }
+ }
+ },
+ "ReservationTransactionsListResult": {
+ "description": "Result of listing reservation recommendations.",
+ "properties": {
+ "value": {
+ "description": "The list of reservation recommendations.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ReservationTransaction"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ModernReservationTransactionsListResult": {
+ "description": "Result of listing reservation recommendations.",
+ "properties": {
+ "value": {
+ "description": "The list of reservation recommendations.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ModernReservationTransaction"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TagsResult": {
+ "description": "A resource listing all tags.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/TagProperties",
+ "title": "Tag properties"
+ }
+ }
+ },
+ "TagProperties": {
+ "description": "The properties of the tag.",
+ "properties": {
+ "tags": {
+ "description": "A list of Tag.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tag"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ]
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ },
+ "previousLink": {
+ "description": "The link (url) to the previous page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Tag": {
+ "description": "The tag resource.",
+ "properties": {
+ "key": {
+ "description": "Tag key.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Tag values.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "BudgetsListResult": {
+ "description": "Result of listing budgets. It contains a list of available budgets in the scope provided.",
+ "properties": {
+ "value": {
+ "description": "The list of budgets.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/Budget"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Budget": {
+ "description": "A budget resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/BudgetProperties",
+ "title": "Budget properties"
+ }
+ }
+ },
+ "BudgetProperties": {
+ "description": "The properties of the budget.",
+ "properties": {
+ "category": {
+ "description": "The category of the budget, whether the budget tracks cost or usage.",
+ "type": "string",
+ "enum": [
+ "Cost"
+ ],
+ "x-ms-enum": {
+ "name": "CategoryType",
+ "modelAsString": true
+ }
+ },
+ "amount": {
+ "description": "The total amount of cost to track with the budget",
+ "type": "number",
+ "format": "decimal"
+ },
+ "timeGrain": {
+ "description": "The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers",
+ "type": "string",
+ "enum": [
+ "Monthly",
+ "Quarterly",
+ "Annually",
+ "BillingMonth",
+ "BillingQuarter",
+ "BillingAnnual"
+ ],
+ "x-ms-enum": {
+ "name": "TimeGrainType",
+ "modelAsString": true
+ }
+ },
+ "timePeriod": {
+ "description": "Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.",
+ "$ref": "#/definitions/BudgetTimePeriod"
+ },
+ "filter": {
+ "description": "May be used to filter budgets by user-specified dimensions and/or tags.",
+ "type": "object",
+ "$ref": "#/definitions/BudgetFilter"
+ },
+ "currentSpend": {
+ "description": "The current amount of cost which is being tracked for a budget.",
+ "$ref": "#/definitions/CurrentSpend",
+ "readOnly": true
+ },
+ "notifications": {
+ "type": "object",
+ "description": "Dictionary of notifications associated with the budget. Budget can have up to five notifications.",
+ "additionalProperties": {
+ "type": "object",
+ "$ref": "#/definitions/Notification"
+ },
+ "maxItems": 5
+ },
+ "forecastSpend": {
+ "description": "The forecasted cost which is being tracked for a budget.",
+ "$ref": "#/definitions/ForecastSpend",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "category",
+ "amount",
+ "timeGrain",
+ "timePeriod"
+ ]
+ },
+ "BudgetTimePeriod": {
+ "description": "The start and end date for a budget.",
+ "properties": {
+ "startDate": {
+ "description": "The start date for the budget.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "endDate": {
+ "description": "The end date for the budget. If not provided, we default this to 10 years from the start date.",
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "required": [
+ "startDate"
+ ]
+ },
+ "BudgetFilter": {
+ "description": "May be used to filter budgets by resource group, resource, or meter.",
+ "properties": {
+ "and": {
+ "description": "The logical \"AND\" expression. Must have at least 2 items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BudgetFilterProperties"
+ },
+ "x-ms-identifiers": [],
+ "minItems": 0
+ },
+ "dimensions": {
+ "description": "Has comparison expression for a dimension",
+ "$ref": "#/definitions/BudgetComparisonExpression"
+ },
+ "tags": {
+ "description": "Has comparison expression for a tag",
+ "$ref": "#/definitions/BudgetComparisonExpression"
+ }
+ }
+ },
+ "BudgetFilterProperties": {
+ "description": "The Dimensions or Tags to filter a budget by.",
+ "properties": {
+ "dimensions": {
+ "description": "Has comparison expression for a dimension",
+ "$ref": "#/definitions/BudgetComparisonExpression"
+ },
+ "tags": {
+ "description": "Has comparison expression for a tag",
+ "$ref": "#/definitions/BudgetComparisonExpression"
+ }
+ }
+ },
+ "BudgetComparisonExpression": {
+ "description": "The comparison expression to be used in the budgets.",
+ "properties": {
+ "name": {
+ "description": "The name of the column to use in comparison.",
+ "type": "string"
+ },
+ "operator": {
+ "description": "The operator to use for comparison.",
+ "type": "string",
+ "enum": [
+ "In"
+ ],
+ "x-ms-enum": {
+ "name": "BudgetOperatorType",
+ "modelAsString": true
+ }
+ },
+ "values": {
+ "description": "Array of values to use for comparison",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "minItems": 0
+ }
+ },
+ "required": [
+ "name",
+ "operator",
+ "values"
+ ]
+ },
+ "CurrentSpend": {
+ "description": "The current amount of cost which is being tracked for a budget.",
+ "properties": {
+ "amount": {
+ "description": "The total amount of cost which is being tracked by the budget.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "unit": {
+ "description": "The unit of measure for the budget amount.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ForecastSpend": {
+ "description": "The forecasted cost which is being tracked for a budget.",
+ "properties": {
+ "amount": {
+ "description": "The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "unit": {
+ "description": "The unit of measure for the budget amount.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Notification": {
+ "description": "The notification associated with a budget.",
+ "properties": {
+ "enabled": {
+ "description": "The notification is enabled or not.",
+ "type": "boolean"
+ },
+ "operator": {
+ "description": "The comparison operator.",
+ "type": "string",
+ "enum": [
+ "EqualTo",
+ "GreaterThan",
+ "GreaterThanOrEqualTo"
+ ],
+ "x-ms-enum": {
+ "name": "OperatorType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "EqualTo",
+ "description": "Alert will be triggered if the evaluated cost is the same as threshold value. Note: It’s not recommended to use this OperatorType as there’s low chance of cost being exactly the same as threshold value, leading to missing of your alert. This OperatorType will be deprecated in future. ",
+ "name": "EqualTo"
+ },
+ {
+ "value": "GreaterThan",
+ "description": "Alert will be triggered if the evaluated cost is greater than the threshold value. Note: This is the recommended OperatorType while configuring Budget Alert.",
+ "name": "GreaterThan"
+ },
+ {
+ "value": "GreaterThanOrEqualTo",
+ "description": "Alert will be triggered if the evaluated cost is greater than or equal to the threshold value.",
+ "name": "GreaterThanOrEqualTo"
+ }
+ ]
+ }
+ },
+ "threshold": {
+ "description": "Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.",
+ "type": "number",
+ "format": "decimal"
+ },
+ "contactEmails": {
+ "description": "Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "minItems": 0,
+ "maxItems": 50
+ },
+ "contactRoles": {
+ "description": "Contact roles to send the budget notification to when the threshold is exceeded.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "contactGroups": {
+ "description": "Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "minItems": 0,
+ "maxItems": 50
+ },
+ "thresholdType": {
+ "description": "The type of threshold",
+ "type": "string",
+ "enum": [
+ "Actual",
+ "Forecasted"
+ ],
+ "x-ms-enum": {
+ "name": "ThresholdType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Actual",
+ "description": "Actual costs budget alerts notify when the actual accrued cost exceeds the allocated budget .",
+ "name": "Actual"
+ },
+ {
+ "value": "Forecasted",
+ "description": "Forecasted costs budget alerts provide advanced notification that your spending trends are likely to exceed your allocated budget, as it relies on forecasted cost predictions.",
+ "name": "Forecasted"
+ }
+ ]
+ },
+ "default": "Actual"
+ },
+ "locale": {
+ "description": "Language in which the recipient will receive the notification",
+ "type": "string",
+ "enum": [
+ "en-us",
+ "ja-jp",
+ "zh-cn",
+ "de-de",
+ "es-es",
+ "fr-fr",
+ "it-it",
+ "ko-kr",
+ "pt-br",
+ "ru-ru",
+ "zh-tw",
+ "cs-cz",
+ "pl-pl",
+ "tr-tr",
+ "da-dk",
+ "en-gb",
+ "hu-hu",
+ "nb-no",
+ "nl-nl",
+ "pt-pt",
+ "sv-se"
+ ],
+ "x-ms-enum": {
+ "name": "CultureCode",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "enabled",
+ "operator",
+ "threshold",
+ "contactEmails"
+ ]
+ },
+ "PriceSheetResult": {
+ "description": "An pricesheet resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/PriceSheetModel",
+ "title": "Price sheet properties"
+ }
+ }
+ },
+ "PriceSheetModel": {
+ "description": "price sheet result. It contains the pricesheet associated with billing period",
+ "properties": {
+ "pricesheets": {
+ "description": "Price sheet",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/PriceSheetProperties"
+ },
+ "x-ms-identifiers": [
+ "meterId"
+ ]
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ },
+ "download": {
+ "description": "Pricesheet download details.",
+ "$ref": "#/definitions/MeterDetails",
+ "readOnly": true
+ }
+ }
+ },
+ "DownloadProperties": {
+ "description": "The properties of the price sheet download.",
+ "properties": {
+ "downloadUrl": {
+ "description": "The link (url) to download the pricesheet.",
+ "type": "string",
+ "readOnly": true
+ },
+ "validTill": {
+ "description": "Download link validity.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PriceSheetProperties": {
+ "description": "The properties of the price sheet.",
+ "properties": {
+ "billingPeriodId": {
+ "description": "The id of the billing period resource that the usage belongs to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterId": {
+ "description": "The meter id (GUID)",
+ "type": "string",
+ "format": "uuid",
+ "readOnly": true
+ },
+ "meterDetails": {
+ "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.",
+ "$ref": "#/definitions/MeterDetails",
+ "readOnly": true
+ },
+ "unitOfMeasure": {
+ "description": "Unit of measure",
+ "type": "string",
+ "readOnly": true
+ },
+ "includedQuantity": {
+ "description": "Included quality for an offer",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "partNumber": {
+ "description": "Part Number",
+ "type": "string",
+ "readOnly": true
+ },
+ "unitPrice": {
+ "description": "Unit Price",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "currencyCode": {
+ "description": "Currency Code",
+ "type": "string",
+ "readOnly": true
+ },
+ "offerId": {
+ "description": "Offer Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "savingsPlan": {
+ "description": "SavingsPlan Details",
+ "$ref": "#/definitions/SavingsPlan",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagementGroupAggregatedCostResult": {
+ "description": "A management group aggregated cost resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ManagementGroupAggregatedCostProperties",
+ "title": "Management Group Aggregated Cost properties"
+ }
+ }
+ },
+ "ManagementGroupAggregatedCostProperties": {
+ "description": "The properties of the Management Group Aggregated Cost.",
+ "type": "object",
+ "properties": {
+ "billingPeriodId": {
+ "description": "The id of the billing period resource that the aggregated cost belongs to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageStart": {
+ "description": "The start of the date time range covered by aggregated cost.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "usageEnd": {
+ "description": "The end of the date time range covered by the aggregated cost.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "azureCharges": {
+ "description": "Azure Charges.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "marketplaceCharges": {
+ "description": "Marketplace Charges.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "chargesBilledSeparately": {
+ "description": "Charges Billed Separately.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "currency": {
+ "description": "The ISO currency in which the meter is charged, for example, USD.",
+ "type": "string",
+ "readOnly": true
+ },
+ "children": {
+ "description": "Children of a management group",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagementGroupAggregatedCostResult"
+ }
+ },
+ "includedSubscriptions": {
+ "description": "List of subscription Guids included in the calculation of aggregated cost",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "excludedSubscriptions": {
+ "description": "List of subscription Guids excluded from the calculation of aggregated cost",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ChargesListResult": {
+ "description": "Result of listing charge summary.",
+ "properties": {
+ "value": {
+ "description": "The list of charge summary",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ChargeSummary"
+ }
+ }
+ }
+ },
+ "ChargeSummary": {
+ "description": "A charge summary resource.",
+ "type": "object",
+ "discriminator": "kind",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "type": "string",
+ "description": "Specifies the kind of charge summary.",
+ "enum": [
+ "legacy",
+ "modern"
+ ],
+ "x-ms-enum": {
+ "name": "ChargeSummaryKind",
+ "modelAsString": true
+ }
+ }
+ },
+ "required": [
+ "kind"
+ ]
+ },
+ "LegacyChargeSummary": {
+ "description": "Legacy charge summary.",
+ "type": "object",
+ "x-ms-discriminator-value": "legacy",
+ "properties": {
+ "properties": {
+ "description": "Properties for legacy charge summary",
+ "$ref": "#/definitions/LegacyChargeSummaryProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChargeSummary"
+ }
+ ],
+ "required": [
+ "properties"
+ ]
+ },
+ "LegacyChargeSummaryProperties": {
+ "description": "The properties of legacy charge summary.",
+ "type": "object",
+ "properties": {
+ "billingPeriodId": {
+ "description": "The id of the billing period resource that the charge belongs to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageStart": {
+ "description": "Usage start date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageEnd": {
+ "description": "Usage end date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "azureCharges": {
+ "description": "Azure Charges.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "chargesBilledSeparately": {
+ "description": "Charges Billed separately.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "azureMarketplaceCharges": {
+ "description": "Marketplace Charges.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "currency": {
+ "description": "Currency Code",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ModernChargeSummary": {
+ "description": "Modern charge summary.",
+ "type": "object",
+ "x-ms-discriminator-value": "modern",
+ "properties": {
+ "properties": {
+ "description": "Properties for modern charge summary",
+ "$ref": "#/definitions/ModernChargeSummaryProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChargeSummary"
+ }
+ ],
+ "required": [
+ "properties"
+ ]
+ },
+ "ModernChargeSummaryProperties": {
+ "description": "The properties of modern charge summary.",
+ "type": "object",
+ "properties": {
+ "billingPeriodId": {
+ "description": "The id of the billing period resource that the charge belongs to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageStart": {
+ "description": "Usage start date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "usageEnd": {
+ "description": "Usage end date.",
+ "type": "string",
+ "readOnly": true
+ },
+ "azureCharges": {
+ "description": "Azure Charges.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "chargesBilledSeparately": {
+ "description": "Charges Billed separately.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "marketplaceCharges": {
+ "description": "Marketplace Charges.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "billingAccountId": {
+ "description": "Billing Account Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileId": {
+ "description": "Billing Profile Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "invoiceSectionId": {
+ "description": "Invoice Section Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "customerId": {
+ "description": "Customer Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "isInvoiced": {
+ "description": "Is charge Invoiced",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "subscriptionId": {
+ "description": "Subscription guid.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "MeterDetailsResponse": {
+ "description": "The properties of the meter detail.",
+ "properties": {
+ "meterName": {
+ "description": "The name of the meter, within the given meter category",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterCategory": {
+ "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..",
+ "type": "string",
+ "readOnly": true
+ },
+ "meterSubCategory": {
+ "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..",
+ "type": "string",
+ "readOnly": true
+ },
+ "unitOfMeasure": {
+ "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serviceFamily": {
+ "description": "The service family.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ErrorDetails": {
+ "description": "The details of the error.",
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Error message indicating why the operation failed.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "HighCasedErrorDetails": {
+ "description": "The details of the error.",
+ "properties": {
+ "code": {
+ "description": "Error code.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Error message indicating why the operation failed.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "HighCasedErrorResponse": {
+ "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "description": "The details of the error.",
+ "$ref": "#/definitions/HighCasedErrorDetails"
+ }
+ }
+ },
+ "ErrorResponse": {
+ "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "description": "The details of the error.",
+ "$ref": "#/definitions/ErrorDetails"
+ }
+ }
+ },
+ "Operation": {
+ "description": "A Consumption REST API operation.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Operation Id."
+ },
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}.",
+ "type": "string",
+ "readOnly": true
+ },
+ "display": {
+ "description": "The object that represents the operation.",
+ "properties": {
+ "provider": {
+ "description": "Service provider: Microsoft.Consumption.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resource": {
+ "description": "Resource on which the operation is performed: UsageDetail, etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "operation": {
+ "description": "Operation type: Read, write, delete, etc.",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "Description of the operation.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "OperationListResult": {
+ "description": "Result of listing consumption operations. It contains a list of operations and a URL link to get the next set of results.",
+ "properties": {
+ "value": {
+ "description": "List of consumption operations supported by the Microsoft.Consumption resource provider.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/Operation"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of operation list results if there are any.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Events": {
+ "description": "Result of listing event summary.",
+ "properties": {
+ "value": {
+ "description": "The list of event summary.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/EventSummary"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "EventSummary": {
+ "description": "An event summary resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/EventProperties",
+ "title": "Event summary properties"
+ }
+ }
+ },
+ "EventProperties": {
+ "description": "The event properties.",
+ "properties": {
+ "transactionDate": {
+ "description": "The date of the event.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "description": {
+ "description": "The description of the event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "newCredit": {
+ "description": "The amount of new credit or commitment for NewCredit or SettleCharges event.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "adjustments": {
+ "description": "The amount of balance adjustment. The property is not available for ConsumptionCommitment lots.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "creditExpired": {
+ "description": "The amount of expired credit or commitment for NewCredit or SettleCharges event.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "charges": {
+ "description": "The amount of charges for events of type SettleCharges and PendingEligibleCharges. ",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "closedBalance": {
+ "description": "The balance after the event, Note: This will not be returned for Contributor Organization Type in Multi-Entity consumption commitment",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "eventType": {
+ "description": "Identifies the type of the event.",
+ "type": "string",
+ "enum": [
+ "SettledCharges",
+ "PendingCharges",
+ "PendingAdjustments",
+ "PendingNewCredit",
+ "PendingExpiredCredit",
+ "UnKnown",
+ "NewCredit",
+ "CreditExpired"
+ ],
+ "x-ms-enum": {
+ "name": "EventType",
+ "modelAsString": true
+ }
+ },
+ "invoiceNumber": {
+ "description": "The number which uniquely identifies the invoice on which the event was billed. This will be empty for unbilled events.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileId": {
+ "description": "The ID that uniquely identifies the billing profile for which the event happened. The property is only available for billing account of type MicrosoftCustomerAgreement. ",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingProfileDisplayName": {
+ "description": "The display name of the billing profile for which the event happened. The property is only available for billing account of type MicrosoftCustomerAgreement.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lotId": {
+ "description": "The ID that uniquely identifies the lot for which the event happened.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lotSource": {
+ "description": "Identifies the source of the lot for which the event happened. ",
+ "type": "string",
+ "readOnly": true
+ },
+ "canceledCredit": {
+ "description": "Amount of canceled credit.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "creditCurrency": {
+ "description": "The credit currency of the event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingCurrency": {
+ "description": "The billing currency of the event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reseller": {
+ "description": "The reseller of the event.",
+ "readOnly": true,
+ "$ref": "#/definitions/Reseller"
+ },
+ "creditExpiredInBillingCurrency": {
+ "description": "The amount of expired credit or commitment for NewCredit or SettleCharges event in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "newCreditInBillingCurrency": {
+ "description": "The amount of new credit or commitment for NewCredit or SettleCharges event in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "adjustmentsInBillingCurrency": {
+ "description": "The amount of balance adjustment in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "chargesInBillingCurrency": {
+ "description": "The amount of charges for events of type SettleCharges and PendingEligibleCharges in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "closedBalanceInBillingCurrency": {
+ "description": "The balance in billing currency after the event.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "isEstimatedBalance": {
+ "description": "If true, the listed details are based on an estimation and it will be subjected to change.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "eTag": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The eTag for the resource."
+ }
+ }
+ },
+ "Lots": {
+ "description": "Result of listing lot summary.",
+ "properties": {
+ "value": {
+ "description": "The list of lot summary.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/LotSummary"
+ }
+ },
+ "nextLink": {
+ "description": "The link (url) to the next page of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "LotSummary": {
+ "description": "A lot summary resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/LotProperties",
+ "title": "Lot summary properties"
+ }
+ }
+ },
+ "LotProperties": {
+ "description": "The lot properties.",
+ "properties": {
+ "originalAmount": {
+ "description": "The original amount of a lot.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "closedBalance": {
+ "description": "The balance as of the last invoice.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "source": {
+ "description": "The source of the lot.",
+ "type": "string",
+ "enum": [
+ "PurchasedCredit",
+ "PromotionalCredit",
+ "ConsumptionCommitment"
+ ],
+ "x-ms-enum": {
+ "name": "LotSource",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "startDate": {
+ "description": "The date when the lot became effective.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "expirationDate": {
+ "description": "The expiration date of a lot.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "poNumber": {
+ "description": "The po number of the invoice on which the lot was added. This property is not available for ConsumptionCommitment lots.",
+ "type": "string",
+ "readOnly": true
+ },
+ "purchasedDate": {
+ "description": "The date when the lot was added.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "status": {
+ "description": "The status of the lot.",
+ "type": "string",
+ "enum": [
+ "None",
+ "Active",
+ "Inactive",
+ "Expired",
+ "Complete",
+ "Canceled"
+ ],
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ }
+ },
+ "creditCurrency": {
+ "description": "The currency of the lot.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingCurrency": {
+ "description": "The billing currency of the lot.",
+ "type": "string",
+ "readOnly": true
+ },
+ "originalAmountInBillingCurrency": {
+ "description": "The original amount of a lot in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "closedBalanceInBillingCurrency": {
+ "description": "The balance as of the last invoice in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ },
+ "reseller": {
+ "description": "The reseller of the lot.",
+ "readOnly": true,
+ "$ref": "#/definitions/Reseller"
+ },
+ "isEstimatedBalance": {
+ "description": "If true, the listed details are based on an estimation and it will be subjected to change.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "eTag": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The eTag for the resource."
+ },
+ "orgType": {
+ "description": "The organization type of the lot.",
+ "type": "string",
+ "enum": [
+ "Primary",
+ "Contributor"
+ ],
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "OrgType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Primary",
+ "description": "Primary organization type for Multi-Entity consumption commitment.",
+ "name": "PrimaryOrgType"
+ },
+ {
+ "value": "Contributor",
+ "description": "Contributor organization type for Multi-Entity consumption commitment.",
+ "name": "ContributorOrgType"
+ }
+ ]
+ }
+ },
+ "usedAmount": {
+ "description": "Amount consumed from the commitment.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ }
+ }
+ },
+ "CreditSummary": {
+ "description": "A credit summary resource.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/CreditSummaryProperties",
+ "title": "Credit summary properties"
+ }
+ }
+ },
+ "CreditSummaryProperties": {
+ "description": "The properties of the credit summary.",
+ "type": "object",
+ "properties": {
+ "balanceSummary": {
+ "description": "Summary of balances associated with this credit summary.",
+ "readOnly": true,
+ "$ref": "#/definitions/CreditBalanceSummary"
+ },
+ "pendingCreditAdjustments": {
+ "description": "Pending credit adjustments.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "expiredCredit": {
+ "description": "Expired credit.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "pendingEligibleCharges": {
+ "description": "Pending eligible charges.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "creditCurrency": {
+ "description": "The credit currency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "billingCurrency": {
+ "description": "The billing currency.",
+ "type": "string",
+ "readOnly": true
+ },
+ "reseller": {
+ "description": "Credit's reseller.",
+ "readOnly": true,
+ "$ref": "#/definitions/Reseller"
+ },
+ "isEstimatedBalance": {
+ "description": "If true, the listed details are based on an estimation and it will be subjected to change.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "eTag": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The eTag for the resource."
+ }
+ }
+ },
+ "CreditBalanceSummary": {
+ "description": "Summary of credit balances.",
+ "properties": {
+ "estimatedBalance": {
+ "description": "Estimated balance.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "currentBalance": {
+ "description": "Current balance.",
+ "readOnly": true,
+ "$ref": "#/definitions/amount"
+ },
+ "estimatedBalanceInBillingCurrency": {
+ "description": "Estimated balance in billing currency.",
+ "readOnly": true,
+ "$ref": "#/definitions/AmountWithExchangeRate"
+ }
+ }
+ },
+ "amount": {
+ "description": "The amount plus currency .",
+ "properties": {
+ "currency": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Amount currency."
+ },
+ "value": {
+ "readOnly": true,
+ "type": "number",
+ "format": "decimal",
+ "description": "Amount."
+ }
+ }
+ },
+ "Resource": {
+ "description": "The Resource model definition.",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The full qualified ARM ID of an event."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID that uniquely identifies an event. "
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type."
+ },
+ "etag": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The etag for the resource."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "ReservationTransactionResource": {
+ "description": "The Resource model definition.",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource Id."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource name."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Resource tags."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "ResourceAttributes": {
+ "description": "The Resource model definition.",
+ "properties": {
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource location"
+ },
+ "sku": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource sku"
+ }
+ }
+ },
+ "ProxyResource": {
+ "description": "The Resource model definition.",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource Id."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource name."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type."
+ },
+ "eTag": {
+ "type": "string",
+ "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not."
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "AmountWithExchangeRate": {
+ "description": "The amount with exchange rate.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/amount"
+ }
+ ],
+ "properties": {
+ "exchangeRate": {
+ "description": "The exchange rate.",
+ "type": "number",
+ "format": "decimal",
+ "readOnly": true
+ },
+ "exchangeRateMonth": {
+ "description": "The exchange rate month.",
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true
+ }
+ }
+ },
+ "Reseller": {
+ "description": "The reseller properties.",
+ "type": "object",
+ "properties": {
+ "resellerId": {
+ "description": "The reseller property ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resellerDescription": {
+ "description": "The reseller property description.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "scopeChargesParameter": {
+ "name": "scope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with charges operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope. For department and enrollment accounts, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeUsageDetailsParameter": {
+ "name": "scope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with usage details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and management group, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeMarketplaceParameter": {
+ "name": "scope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with marketplace operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and ManagementGroup, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeBudgetParameter": {
+ "name": "scope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with budget operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope.",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeTagsParameter": {
+ "name": "scope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with tags operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope..",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeReservationsSummariesParameter": {
+ "name": "resourceScope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with reservations summaries operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeReservationDetailsParameter": {
+ "name": "resourceScope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with reservations details operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeReservationRecommendationsParameter": {
+ "name": "resourceScope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with reservation recommendations operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeReservationRecommendationDetailsParameter": {
+ "name": "resourceScope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with reservation recommendation details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, /providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "scopeReservationTransactionsParameter": {
+ "name": "resourceScope",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The scope associated with reservation transactions operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount/Enrollment scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ },
+ "apiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Version of the API to be used with the client request. The current version is 2023-03-01."
+ },
+ "billingAccountIdParameter": {
+ "name": "billingAccountId",
+ "in": "path",
+ "description": "BillingAccount ID",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "customerIdParameter": {
+ "name": "customerId",
+ "in": "path",
+ "description": "Customer ID",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "departmentIdParameter": {
+ "name": "departmentId",
+ "in": "path",
+ "description": "Department ID",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "enrollmentAccountIdParameter": {
+ "name": "enrollmentAccountId",
+ "in": "path",
+ "description": "EnrollmentAccount ID",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "subscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "description": "Azure Subscription ID.",
+ "required": true,
+ "type": "string"
+ },
+ "resourceGroupNameParameter": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "description": "Azure Resource Group Name.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "budgetNameParameter": {
+ "name": "budgetName",
+ "in": "path",
+ "description": "Budget Name.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "billingPeriodNameParameter": {
+ "name": "billingPeriodName",
+ "in": "path",
+ "description": "Billing Period Name.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "reservationOrderIdParameter": {
+ "name": "reservationOrderId",
+ "in": "path",
+ "description": "Order Id of the reservation",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "reservationIdParameter": {
+ "name": "reservationId",
+ "in": "path",
+ "description": "Id of the reservation",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "grainParameter": {
+ "name": "grain",
+ "description": "Can be daily or monthly",
+ "x-ms-parameter-location": "method",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "daily",
+ "monthly"
+ ],
+ "x-ms-enum": {
+ "name": "datagrain",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "daily",
+ "description": "Daily grain of data",
+ "name": "DailyGrain"
+ },
+ {
+ "value": "monthly",
+ "description": "Monthly grain of data",
+ "name": "MonthlyGrain"
+ }
+ ]
+ }
+ },
+ "managementGroupIdParameter": {
+ "name": "managementGroupId",
+ "in": "path",
+ "description": "Azure Management Group ID.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "billingProfileIdParameter": {
+ "name": "billingProfileId",
+ "in": "path",
+ "description": "Azure Billing Profile ID.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "invoiceSectionIdParameter": {
+ "name": "invoiceSectionId",
+ "in": "path",
+ "description": "Azure Invoice Section ID.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "startDateParameter": {
+ "name": "startDate",
+ "in": "query",
+ "description": "Start date",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "endDateParameter": {
+ "name": "endDate",
+ "in": "query",
+ "description": "End date",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "metricParameter": {
+ "name": "metric",
+ "in": "query",
+ "description": "Allows to select different type of cost/usage records.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "enum": [
+ "actualcost",
+ "amortizedcost",
+ "usage"
+ ],
+ "x-ms-enum": {
+ "name": "metrictype",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "actualcost",
+ "description": "Actual cost data.",
+ "name": "ActualCostMetricType"
+ },
+ {
+ "value": "amortizedcost",
+ "description": "Amortized cost data.",
+ "name": "AmortizedCostMetricType"
+ },
+ {
+ "value": "usage",
+ "description": "Usage data.",
+ "name": "UsageMetricType"
+ }
+ ]
+ }
+ },
+ "filterParameter": {
+ "name": "$filter",
+ "in": "query",
+ "description": "May be used to filter reservationRecommendations by: properties/scope with allowed values ['Single', 'Shared'] and default value 'Single'; properties/resourceType with allowed values ['VirtualMachines', 'SQLDatabases', 'PostgreSQL', 'ManagedDisk', 'MySQL', 'RedHat', 'MariaDB', 'RedisCache', 'CosmosDB', 'SqlDataWarehouse', 'SUSELinux', 'AppService', 'BlockBlob', 'AzureDataExplorer', 'VMwareCloudSimple'] and default value 'VirtualMachines'; and properties/lookBackPeriod with allowed values ['Last7Days', 'Last30Days', 'Last60Days'] and default value 'Last7Days'.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "recommendationDetailsFilterParameter": {
+ "name": "$filter",
+ "in": "query",
+ "description": "Used to filter reservation recommendation details by: properties/subscriptionId can be specified for billing account and billing profile paths.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "termParameter": {
+ "description": "Specify length of reservation recommendation term.",
+ "type": "string",
+ "in": "query",
+ "required": true,
+ "name": "term",
+ "x-ms-parameter-location": "method",
+ "enum": [
+ "P1Y",
+ "P3Y"
+ ],
+ "x-ms-enum": {
+ "name": "term",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "P1Y",
+ "description": "1 year reservation term",
+ "name": "P1Y"
+ },
+ {
+ "value": "P3Y",
+ "description": "3 year reservation term",
+ "name": "P3Y"
+ }
+ ]
+ }
+ },
+ "regionParameter": {
+ "name": "region",
+ "in": "query",
+ "description": "Used to select the region the recommendation should be generated for.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "lookBackPeriodParameter": {
+ "name": "lookBackPeriod",
+ "in": "query",
+ "description": "Filter the time period on which reservation recommendation results are based.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "enum": [
+ "Last7Days",
+ "Last30Days",
+ "Last60Days"
+ ],
+ "x-ms-enum": {
+ "name": "lookBackPeriod",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Last7Days",
+ "description": "Use 7 days of data for recommendations",
+ "name": "Last07Days"
+ },
+ {
+ "value": "Last30Days",
+ "description": "Use 30 days of data for recommendations",
+ "name": "Last30Days"
+ },
+ {
+ "value": "Last60Days",
+ "description": "Use 60 days of data for recommendations",
+ "name": "Last60Days"
+ }
+ ]
+ }
+ },
+ "productParameter": {
+ "name": "product",
+ "in": "query",
+ "description": "Filter the products for which reservation recommendation results are generated. Examples: Standard_DS1_v2 (for VM), Premium_SSD_Managed_Disks_P30 (for Managed Disks)",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "scopeParameter": {
+ "description": "Scope of the reservation.",
+ "type": "string",
+ "name": "scope",
+ "in": "query",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "enum": [
+ "Single",
+ "Shared"
+ ],
+ "x-ms-enum": {
+ "name": "scope",
+ "modelAsString": true
+ }
+ },
+ "useMarkupIfPartnerParameter": {
+ "name": "useMarkupIfPartner",
+ "in": "query",
+ "description": "Applies mark up to the transactions if the caller is a partner.",
+ "required": false,
+ "type": "boolean",
+ "x-ms-parameter-location": "method"
+ },
+ "previewMarkupPercentage": {
+ "name": "previewMarkupPercentage",
+ "in": "query",
+ "description": "Preview markup percentage to be applied.",
+ "required": false,
+ "type": "number",
+ "format": "decimal",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json
new file mode 100644
index 000000000000..7b3c8a4514b1
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json
@@ -0,0 +1,158 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-11-01",
+ "title": "ConsumptionManagementClient",
+ "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow.",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": {
+ "post": {
+ "tags": [
+ "PriceSheet"
+ ],
+ "operationId": "PriceSheet_DownloadByBillingAccountPeriod",
+ "description": "Generates the pricesheet for the provided billing period asynchronously based on the enrollment id",
+ "externalDocs": {
+ "url": "https://docs.microsoft.com/en-us/rest/api/consumption/"
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "EAPriceSheetForBillingPeriod": {
+ "$ref": "./examples/EAPriceSheetForBillingPeriod.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/billingAccountIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/billingPeriodNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Request processing completed.",
+ "schema": {
+ "$ref": "#/definitions/OperationStatus"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int64"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "OperationStatus": {
+ "description": "The status of the long running operation.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The status of the long running operation.",
+ "type": "string",
+ "enum": [
+ "Running",
+ "Completed",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "OperationStatusType",
+ "modelAsString": true
+ }
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "The properties of the resource generated.",
+ "$ref": "#/definitions/PricesheetDownloadProperties"
+ }
+ }
+ },
+ "PricesheetDownloadProperties": {
+ "description": "The properties of the price sheet download.",
+ "type": "object",
+ "properties": {
+ "downloadUrl": {
+ "description": "The link (url) to download the pricesheet.",
+ "type": "string",
+ "readOnly": true
+ },
+ "validTill": {
+ "description": "Download link validity.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "billingAccountIdParameter": {
+ "name": "billingAccountId",
+ "in": "path",
+ "description": "BillingAccount ID",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "billingPeriodNameParameter": {
+ "name": "billingPeriodName",
+ "in": "path",
+ "description": "Billing Period Name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[0-9]*$",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostByManagementGroup.json
new file mode 100644
index 000000000000..90c71b84a5cf
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostByManagementGroup.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1",
+ "name": "aggregatedcostId1",
+ "type": "Microsoft.Consumption/aggregatedcost",
+ "properties": {
+ "includedSubscriptions": [
+ "1caaa5a3-2b66-438e-8ab4-bce37d518c5d"
+ ],
+ "excludedSubscriptions": [],
+ "usageStart": "2023-03-01T00:00:00.0000000Z",
+ "usageEnd": "2023-11-01T00:00:00.0000000Z",
+ "azureCharges": 250.9876,
+ "marketplaceCharges": 150.786,
+ "chargesBilledSeparately": 120.345,
+ "currency": "USD",
+ "children": [
+ {
+ "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2",
+ "name": "aggregatedcostId2",
+ "type": "Microsoft.Consumption/aggregatedcost",
+ "properties": {
+ "includedSubscriptions": [
+ "c349567d-c83a-48c9-ab0e-578c69dc97a4"
+ ],
+ "excludedSubscriptions": [],
+ "usageStart": "2023-03-01T00:00:00.0000000Z",
+ "usageEnd": "2023-11-01T00:00:00.0000000Z",
+ "azureCharges": 150.0,
+ "marketplaceCharges": 50.786,
+ "chargesBilledSeparately": 30.345,
+ "currency": "USD",
+ "children": []
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostByManagementGroupFilterByDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostByManagementGroupFilterByDate.json
new file mode 100644
index 000000000000..dd83bc8e5448
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostByManagementGroupFilterByDate.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest",
+ "$filter": "usageStart ge '2018-08-15' and properties/usageStart le '2018-08-31'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1",
+ "name": "aggregatedcostId1",
+ "type": "Microsoft.Consumption/aggregatedcost",
+ "properties": {
+ "includedSubscriptions": [
+ "1caaa5a3-2b66-438e-8ab4-bce37d518c5d"
+ ],
+ "excludedSubscriptions": [],
+ "usageStart": "2018-08-15T00:00:00.0000000Z",
+ "usageEnd": "2018-08-31T00:00:00.0000000Z",
+ "azureCharges": 150.9876,
+ "marketplaceCharges": 80.786,
+ "chargesBilledSeparately": 90.345,
+ "currency": "USD",
+ "children": [
+ {
+ "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2",
+ "name": "aggregatedcostId2",
+ "type": "Microsoft.Consumption/aggregatedcost",
+ "properties": {
+ "includedSubscriptions": [
+ "c349567d-c83a-48c9-ab0e-578c69dc97a4"
+ ],
+ "excludedSubscriptions": [],
+ "usageStart": "2018-08-15T00:00:00.0000000Z",
+ "usageEnd": "2018-08-31T00:00:00.0000000Z",
+ "azureCharges": 50.0,
+ "marketplaceCharges": 10.786,
+ "chargesBilledSeparately": 30.345,
+ "currency": "USD",
+ "children": []
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json
new file mode 100644
index 000000000000..509e79e7cfd2
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/AggregatedCostForBillingPeriodByManagementGroup.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest",
+ "billingPeriodName": "201807"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/managementGroupForTest/providers/Microsoft.Consumption/aggregatedcostId1",
+ "name": "aggregatedcostId1",
+ "type": "Microsoft.Consumption/aggregatedcost",
+ "properties": {
+ "usageStart": "2018-07-01T00:00:00.0000000Z",
+ "usageEnd": "2018-07-31T00:00:00.0000000Z",
+ "azureCharges": 250.9876,
+ "marketplaceCharges": 150.786,
+ "chargesBilledSeparately": 120.345,
+ "currency": "USD",
+ "children": [
+ {
+ "id": "/providers/Microsoft.Management/managementGroups/managementGroupChildForTest/providers/Microsoft.Consumption/aggregatedcostId2",
+ "name": "aggregatedcostId2",
+ "type": "Microsoft.Consumption/aggregatedcost",
+ "properties": {
+ "usageStart": "2018-07-01T00:00:00.0000000Z",
+ "usageEnd": "2018-07-31T00:00:00.0000000Z",
+ "azureCharges": 150.0,
+ "marketplaceCharges": 50.786,
+ "chargesBilledSeparately": 30.345,
+ "currency": "USD",
+ "children": []
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BalancesByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BalancesByBillingAccount.json
new file mode 100644
index 000000000000..9ebdcdcad09e
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BalancesByBillingAccount.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/balances/balanceId1",
+ "name": "balanceId1",
+ "type": "Microsoft.Consumption/balances",
+ "properties": {
+ "currency": "USD ",
+ "beginningBalance": 3396469.19,
+ "endingBalance": 2922371.02,
+ "newPurchases": 0,
+ "adjustments": 0,
+ "utilized": 474098.17,
+ "serviceOverage": 0,
+ "chargesBilledSeparately": 0,
+ "totalOverage": 0,
+ "totalUsage": 474098.17,
+ "azureMarketplaceServiceCharges": 609.82,
+ "billingFrequency": "Month",
+ "priceHidden": false,
+ "overageRefund": 2012.61,
+ "newPurchasesDetails": [
+ {
+ "name": "Promo Purchase",
+ "value": 1
+ }
+ ],
+ "adjustmentDetails": [
+ {
+ "name": "Promo Credit",
+ "value": 1.1
+ },
+ {
+ "name": "SIE Credit",
+ "value": 1.0
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BalancesByBillingAccountForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BalancesByBillingAccountForBillingPeriod.json
new file mode 100644
index 000000000000..0033fd8d7e3b
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BalancesByBillingAccountForBillingPeriod.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "123456",
+ "billingPeriodName": "201702"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/balances/balanceId1",
+ "name": "balanceId1",
+ "type": "Microsoft.Consumption/balances",
+ "properties": {
+ "currency": "USD ",
+ "beginningBalance": 3396469.19,
+ "endingBalance": 2922371.02,
+ "newPurchases": 0,
+ "adjustments": 0,
+ "utilized": 474098.17,
+ "serviceOverage": 0,
+ "chargesBilledSeparately": 0,
+ "totalOverage": 0,
+ "totalUsage": 474098.17,
+ "azureMarketplaceServiceCharges": 609.82,
+ "billingFrequency": "Month",
+ "priceHidden": false,
+ "overageRefund": 2012.61,
+ "newPurchasesDetails": [
+ {
+ "name": "Promo Purchase",
+ "value": 1
+ }
+ ],
+ "adjustmentDetails": [
+ {
+ "name": "Promo Credit",
+ "value": 1.1
+ },
+ {
+ "name": "SIE Credit",
+ "value": 1.0
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/Budget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/Budget.json
new file mode 100644
index 000000000000..1ec8744c8343
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/Budget.json
@@ -0,0 +1,85 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "MYDEVTESTRG",
+ "budgetName": "TestBudget",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/TestBudget",
+ "name": "TestBudget",
+ "type": "Microsoft.Consumption/budgets",
+ "eTag": "\"1d34d012214157f\"",
+ "properties": {
+ "category": "Cost",
+ "amount": 100.65,
+ "timeGrain": "Monthly",
+ "timePeriod": {
+ "startDate": "2017-10-01T00:00:00Z",
+ "endDate": "2018-10-31T00:00:00Z"
+ },
+ "filter": {
+ "and": [
+ {
+ "dimensions": {
+ "name": "ResourceId",
+ "operator": "In",
+ "values": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "category",
+ "operator": "In",
+ "values": [
+ "Dev",
+ "Prod"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "department",
+ "operator": "In",
+ "values": [
+ "engineering",
+ "sales"
+ ]
+ }
+ }
+ ]
+ },
+ "currentSpend": {
+ "amount": 80.89,
+ "unit": "USD"
+ },
+ "notifications": {
+ "Actual_GreaterThan_80_Percent": {
+ "enabled": true,
+ "operator": "GreaterThan",
+ "threshold": 80,
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ],
+ "contactGroups": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
+ ],
+ "thresholdType": "Actual"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BudgetsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BudgetsList.json
new file mode 100644
index 000000000000..7f049078384e
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/BudgetsList.json
@@ -0,0 +1,186 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "MYDEVTESTRG"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/TestBudget",
+ "name": "TestBudget",
+ "type": "Microsoft.Consumption/budgets",
+ "eTag": "\"1d34d012214157f\"",
+ "properties": {
+ "category": "Cost",
+ "amount": 100.65,
+ "timeGrain": "Monthly",
+ "timePeriod": {
+ "startDate": "2017-10-01T00:00:00Z",
+ "endDate": "2018-10-31T00:00:00Z"
+ },
+ "filter": {
+ "and": [
+ {
+ "dimensions": {
+ "name": "ResourceId",
+ "operator": "In",
+ "values": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "category",
+ "operator": "In",
+ "values": [
+ "Dev",
+ "Prod"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "department",
+ "operator": "In",
+ "values": [
+ "engineering",
+ "sales"
+ ]
+ }
+ }
+ ]
+ },
+ "currentSpend": {
+ "amount": 80.89,
+ "unit": "USD"
+ },
+ "notifications": {
+ "Actual_GreaterThan_80_Percent": {
+ "enabled": true,
+ "operator": "GreaterThan",
+ "threshold": 80,
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ]
+ },
+ "Actual_GreaterThanOrEqualTo_90_Percent": {
+ "enabled": true,
+ "operator": "GreaterThanOrEqualTo",
+ "threshold": 90,
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ],
+ "contactGroups": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
+ ]
+ },
+ "thresholdType": "Actual"
+ }
+ }
+ },
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget",
+ "name": "TestBudget",
+ "type": "Microsoft.Consumption/budgets",
+ "eTag": "\"1d34d012214157f\"",
+ "properties": {
+ "category": "Cost",
+ "amount": 600.65,
+ "timeGrain": "Monthly",
+ "timePeriod": {
+ "startDate": "2017-10-01T00:00:00Z",
+ "endDate": "2018-10-31T00:00:00Z"
+ },
+ "filter": {
+ "and": [
+ {
+ "dimensions": {
+ "name": "ResourceId",
+ "operator": "In",
+ "values": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "category",
+ "operator": "In",
+ "values": [
+ "Dev",
+ "Prod"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "department",
+ "operator": "In",
+ "values": [
+ "engineering",
+ "sales"
+ ]
+ }
+ }
+ ]
+ },
+ "currentSpend": {
+ "amount": 120.89,
+ "unit": "USD"
+ },
+ "notifications": {
+ "Actual_GreaterThan_40_Percent": {
+ "enabled": true,
+ "operator": "GreaterThan",
+ "threshold": 40,
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ]
+ },
+ "Actual_GreaterThanOrEqualTo_60_Percent": {
+ "enabled": true,
+ "operator": "GreaterThanOrEqualTo",
+ "threshold": 60,
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ],
+ "contactGroups": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
+ ],
+ "thresholdType": "Actual"
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesForBillingPeriodByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesForBillingPeriodByDepartment.json
new file mode 100644
index 000000000000..8b7ffdf795ad
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesForBillingPeriodByDepartment.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingPeriodName": "201804",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234/departments/42425"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234/departments/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "legacy",
+ "properties": {
+ "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804",
+ "usageStart": "2018-04-01",
+ "usageEnd": "2018-04-30",
+ "azureCharges": 5000.00,
+ "chargesBilledSeparately": 60.90,
+ "azureMarketplaceCharges": 100.00,
+ "currency": "USD"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json
new file mode 100644
index 000000000000..3ec6c73076d7
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesForBillingPeriodByEnrollmentAccount.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingPeriodName": "201804",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "legacy",
+ "properties": {
+ "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804",
+ "usageStart": "2018-04-01",
+ "usageEnd": "2018-04-30",
+ "azureCharges": 5000.00,
+ "chargesBilledSeparately": 60.90,
+ "azureMarketplaceCharges": 100.00,
+ "currency": "USD"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccount.json
new file mode 100644
index 000000000000..cf0578421e1b
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccount.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "startDate": "2019-09-01",
+ "endDate": "2019-10-31",
+ "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-10-31",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 265.09
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": null,
+ "invoiceSectionId": null
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json
new file mode 100644
index 000000000000..073be3fdba48
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "startDate": "2019-09-01",
+ "endDate": "2019-09-30",
+ "$apply": "groupby((properties/billingProfileId))"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/123456/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/123456"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/42425/providers/Microsoft.Consumption/charges/chargeSummaryId2",
+ "name": "chargeSummaryId2",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json
new file mode 100644
index 000000000000..ac95b7204383
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByCustomerId.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "startDate": "2019-09-01",
+ "endDate": "2019-09-30",
+ "$apply": "groupby((properties/customerId))"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "customerId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890",
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/123456/providers/Microsoft.Consumption/charges/chargeSummaryId2",
+ "name": "chargeSummaryId2",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "customerId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/123456",
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json
new file mode 100644
index 000000000000..5d27450c47cf
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "startDate": "2019-09-01",
+ "endDate": "2019-09-30",
+ "$apply": "groupby((properties/invoiceSectionId))"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/4567"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789//billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2",
+ "name": "chargeSummaryId2",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfile.json
new file mode 100644
index 000000000000..82bed72a5704
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfile.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2460"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910",
+ "usageStart": "2023-03-01",
+ "usageEnd": "2023-05-31",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 265.09
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460",
+ "invoiceSectionId": null
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json
new file mode 100644
index 000000000000..5d27450c47cf
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "startDate": "2019-09-01",
+ "endDate": "2019-09-30",
+ "$apply": "groupby((properties/invoiceSectionId))"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/4567"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789//billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2",
+ "name": "chargeSummaryId2",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/invoiceSections/67890"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfileInvoiceSection.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfileInvoiceSection.json
new file mode 100644
index 000000000000..f45b0f0b9090
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernBillingProfileInvoiceSection.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "startDate": "2019-09-01",
+ "endDate": "2019-10-31",
+ "scope": "providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201909",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-09-30",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/67890/providers/Microsoft.Consumption/charges/chargeSummaryId2",
+ "name": "chargeSummaryId2",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910",
+ "usageStart": "2019-09-01",
+ "usageEnd": "2019-10-31",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/42425/invoiceSections/4567"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernCustomer.json
new file mode 100644
index 000000000000..a08cd580eab4
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernCustomer.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/67890"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/customers/67890/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910",
+ "usageStart": "2023-03-01",
+ "usageEnd": "2023-05-31",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 265.09
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": null,
+ "invoiceSectionId": null
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernInvoiceSectionId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernInvoiceSectionId.json
new file mode 100644
index 000000000000..6ba06a8f0f4e
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListByModernInvoiceSectionId.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/97531"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/invoiceSections/97531/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "modern",
+ "properties": {
+ "isInvoiced": false,
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Billing/billingPeriods/201910",
+ "usageStart": "2023-03-01",
+ "usageEnd": "2023-05-31",
+ "azureCharges": {
+ "currency": "USD",
+ "value": 12.0
+ },
+ "chargesBilledSeparately": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "marketplaceCharges": {
+ "currency": "USD",
+ "value": 0.0
+ },
+ "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/1234:56789",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/1234:56789/billingProfiles/2460/invoiceSections/97531"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListForDepartmentFilterByStartEndDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListForDepartmentFilterByStartEndDate.json
new file mode 100644
index 000000000000..2f6735b3ab33
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListForDepartmentFilterByStartEndDate.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234/departments/42425",
+ "$filter": "usageStart eq '2018-04-01' AND usageEnd eq '2018-05-30'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234/departments/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "legacy",
+ "properties": {
+ "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804",
+ "usageStart": "2018-04-01",
+ "usageEnd": "2018-04-30",
+ "azureCharges": 5000.00,
+ "chargesBilledSeparately": 60.90,
+ "azureMarketplaceCharges": 100.00,
+ "currency": "USD"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json
new file mode 100644
index 000000000000..2cabc634dc41
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234/enrollmentAccounts/42425/providers/Microsoft.Consumption/charges/chargeSummaryId1",
+ "name": "chargeSummaryId1",
+ "type": "Microsoft.Consumption/charges",
+ "kind": "legacy",
+ "properties": {
+ "billingPeriodId": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201804",
+ "usageStart": "2018-04-01",
+ "usageEnd": "2018-04-30",
+ "azureCharges": 5000.00,
+ "chargesBilledSeparately": 60.90,
+ "azureMarketplaceCharges": 100.00,
+ "currency": "USD"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/CreateOrUpdateBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/CreateOrUpdateBudget.json
new file mode 100644
index 000000000000..089dc12d338b
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/CreateOrUpdateBudget.json
@@ -0,0 +1,227 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "MYDEVTESTRG",
+ "budgetName": "TestBudget",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "parameters": {
+ "eTag": "\"1d34d016a593709\"",
+ "properties": {
+ "category": "Cost",
+ "amount": 100.65,
+ "timeGrain": "Monthly",
+ "timePeriod": {
+ "startDate": "2017-10-01T00:00:00Z",
+ "endDate": "2018-10-31T00:00:00Z"
+ },
+ "filter": {
+ "and": [
+ {
+ "dimensions": {
+ "name": "ResourceId",
+ "operator": "In",
+ "values": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "category",
+ "operator": "In",
+ "values": [
+ "Dev",
+ "Prod"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "department",
+ "operator": "In",
+ "values": [
+ "engineering",
+ "sales"
+ ]
+ }
+ }
+ ]
+ },
+ "notifications": {
+ "Actual_GreaterThan_80_Percent": {
+ "enabled": true,
+ "operator": "GreaterThan",
+ "threshold": 80,
+ "locale": "en-us",
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ],
+ "contactGroups": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
+ ],
+ "thresholdType": "Actual"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/TestBudget",
+ "name": "TestBudget",
+ "type": "Microsoft.Consumption/budgets",
+ "eTag": "\"1d34d012214157f\"",
+ "properties": {
+ "category": "Cost",
+ "amount": 100.65,
+ "timeGrain": "Monthly",
+ "timePeriod": {
+ "startDate": "2017-10-01T00:00:00Z",
+ "endDate": "2018-10-31T00:00:00Z"
+ },
+ "filter": {
+ "and": [
+ {
+ "dimensions": {
+ "name": "ResourceId",
+ "operator": "In",
+ "values": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "category",
+ "operator": "In",
+ "values": [
+ "Dev",
+ "Prod"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "department",
+ "operator": "In",
+ "values": [
+ "engineering",
+ "sales"
+ ]
+ }
+ }
+ ]
+ },
+ "currentSpend": {
+ "amount": 80.89,
+ "unit": "USD"
+ },
+ "notifications": {
+ "Actual_GreaterThan_80_Percent": {
+ "enabled": true,
+ "operator": "GreaterThan",
+ "threshold": 80,
+ "locale": "en-us",
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ],
+ "contactGroups": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
+ ],
+ "thresholdType": "Actual"
+ }
+ }
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget",
+ "name": "TestBudget",
+ "type": "Microsoft.Consumption/budgets",
+ "eTag": "\"1d34d012214157f\"",
+ "properties": {
+ "category": "Cost",
+ "amount": 100.65,
+ "timeGrain": "Monthly",
+ "timePeriod": {
+ "startDate": "2017-10-01T00:00:00Z",
+ "endDate": "2018-10-31T00:00:00Z"
+ },
+ "filter": {
+ "and": [
+ {
+ "dimensions": {
+ "name": "ResourceId",
+ "operator": "In",
+ "values": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "category",
+ "operator": "In",
+ "values": [
+ "Dev",
+ "Prod"
+ ]
+ }
+ },
+ {
+ "tags": {
+ "name": "department",
+ "operator": "In",
+ "values": [
+ "engineering",
+ "sales"
+ ]
+ }
+ }
+ ]
+ },
+ "currentSpend": {
+ "amount": 80.89,
+ "unit": "USD"
+ },
+ "notifications": {
+ "Actual_GreaterThan_80_Percent": {
+ "enabled": true,
+ "operator": "GreaterThan",
+ "threshold": 80,
+ "locale": "en-us",
+ "contactEmails": [
+ "johndoe@contoso.com",
+ "janesmith@contoso.com"
+ ],
+ "contactRoles": [
+ "Contributor",
+ "Reader"
+ ],
+ "contactGroups": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
+ ],
+ "thresholdType": "Actual"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/CreditSummaryByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/CreditSummaryByBillingProfile.json
new file mode 100644
index 000000000000..38f7efae2408
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/CreditSummaryByBillingProfile.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "billingProfileId": "2468"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/credits/balanceSummary1",
+ "name": "balanceSummary1",
+ "type": "Microsoft.Consumption/credits/balanceSummary",
+ "properties": {
+ "creditCurrency": "USD",
+ "billingCurrency": "USD",
+ "balanceSummary": {
+ "estimatedBalance": {
+ "currency": "USD",
+ "value": 600.00
+ },
+ "currentBalance": {
+ "currency": "USD",
+ "value": 100.00
+ }
+ },
+ "pendingCreditAdjustments": {
+ "currency": "USD",
+ "value": 500.00
+ },
+ "expiredCredit": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "pendingEligibleCharges": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1",
+ "resellerDescription": "Reseller information."
+ },
+ "isEstimatedBalance": false
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/DeleteBudget.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/DeleteBudget.json
new file mode 100644
index 000000000000..0d54a6b09860
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/DeleteBudget.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "MYDEVTESTRG",
+ "budgetName": "TestBudget",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EAPriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EAPriceSheetForBillingPeriod.json
new file mode 100644
index 000000000000..c33b074278bf
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EAPriceSheetForBillingPeriod.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "0000000",
+ "billingPeriodName": "202305"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01",
+ "Retry-After": 10
+ }
+ },
+ "200": {
+ "body": {
+ "status": "Completed",
+ "properties": {
+ "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000",
+ "validTill": "2023-05-11T05:12:50.4266333Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccount-Contributor.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccount-Contributor.json
new file mode 100644
index 000000000000..1d4e18d8fb79
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccount-Contributor.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId1",
+ "name": "eventId1",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "lotSource": "ConsumptionCommitment",
+ "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/G202001083926600XXXXX",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB",
+ "billingProfileDisplayName": "Contoso Operations Billing",
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "New MACC Added",
+ "charges": {
+ "currency": "USD",
+ "value": 500
+ },
+ "newCredit": {
+ "currency": "USD",
+ "value": 500
+ },
+ "invoiceNumber": "3304",
+ "eventType": "NewCredit"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId2",
+ "name": "eventId2",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "lotSource": "AzurePrepayment",
+ "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/7004bc39-974d-482e-8e45-caf91dba0870",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB",
+ "billingProfileDisplayName": "Contoso Operations Billing",
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "Balance after invoice 3304",
+ "charges": {
+ "currency": "USD",
+ "value": 500
+ },
+ "invoiceNumber": "3304",
+ "eventType": "SettledCharges"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccount.json
new file mode 100644
index 000000000000..c43d2327e5a9
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccount.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId1",
+ "name": "eventId1",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "lotSource": "ConsumptionCommitment",
+ "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/G202001083926600XXXXX",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB",
+ "billingProfileDisplayName": "Contoso Operations Billing",
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "New MACC Added",
+ "charges": {
+ "currency": "USD",
+ "value": 500
+ },
+ "newCredit": {
+ "currency": "USD",
+ "value": 500
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 500
+ },
+ "invoiceNumber": "3304",
+ "eventType": "NewCredit"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId2",
+ "name": "eventId2",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "lotSource": "AzurePrepayment",
+ "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/7004bc39-974d-482e-8e45-caf91dba0870",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB",
+ "billingProfileDisplayName": "Contoso Operations Billing",
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "Balance after invoice 3304",
+ "charges": {
+ "currency": "USD",
+ "value": 500
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 500
+ },
+ "invoiceNumber": "3304",
+ "eventType": "SettledCharges"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccountWithFilters-Contributor.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccountWithFilters-Contributor.json
new file mode 100644
index 000000000000..0696a250357c
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccountWithFilters-Contributor.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "$filter": "lotid eq 'G202001083926600XXXXX' AND lotsource eq 'consumptioncommitment'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId1",
+ "name": "eventId1",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "lotSource": "ConsumptionCommitment",
+ "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/G202001083926600XXXXX",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB",
+ "billingProfileDisplayName": "Contoso Operations Billing",
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "MACC Canceled",
+ "canceledCredit": {
+ "currency": "USD",
+ "value": 200
+ },
+ "invoiceNumber": "3304",
+ "eventType": "CanceledCredit"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccountWithFilters.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccountWithFilters.json
new file mode 100644
index 000000000000..51e0d9097809
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsGetByBillingAccountWithFilters.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "$filter": "lotid eq 'G202001083926600XXXXX' AND lotsource eq 'consumptioncommitment'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:56789/providers/Microsoft.Consumption/events/eventId1",
+ "name": "eventId1",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "lotSource": "ConsumptionCommitment",
+ "lotId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/Microsoft.Consumption/lots/G202001083926600XXXXX",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/X3TD-KVTT-BG7-TGB",
+ "billingProfileDisplayName": "Contoso Operations Billing",
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "MACC Canceled",
+ "canceledCredit": {
+ "currency": "USD",
+ "value": 200
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 500
+ },
+ "invoiceNumber": "3304",
+ "eventType": "CanceledCredit"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsListByBillingProfile.json
new file mode 100644
index 000000000000..6fa72b46add2
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/EventsListByBillingProfile.json
@@ -0,0 +1,261 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "billingProfileId": "4268",
+ "startDate": "2019-09-01",
+ "endDate": "2019-10-31"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event1",
+ "name": "event1",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "transactionDate": "2019-07-01T00:00:00Z",
+ "description": "Settled invoice #312033",
+ "creditCurrency": "USD",
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1",
+ "resellerDescription": "Reseller information"
+ },
+ "billingCurrency": "USD",
+ "newCredit": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "newCreditInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "adjustments": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "adjustmentsInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "creditExpired": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "creditExpiredInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "charges": {
+ "currency": "USD",
+ "value": 500.00
+ },
+ "chargesInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 500.00
+ },
+ "closedBalanceInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "eventType": "SettledCharges",
+ "invoiceNumber": "3301",
+ "isEstimatedBalance": false
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event2",
+ "name": "event2",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "transactionDate": "2019-08-01T00:00:00Z",
+ "description": "New credits added",
+ "creditCurrency": "USD",
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1",
+ "resellerDescription": "Reseller information"
+ },
+ "billingCurrency": "USD",
+ "newCredit": {
+ "currency": "USD",
+ "value": 400.00
+ },
+ "newCreditInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "canceledCredit": {
+ "currency": "USD",
+ "value": 5000
+ },
+ "adjustments": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "adjustmentsInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "creditExpired": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "creditExpiredInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "charges": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "chargesInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 900.00
+ },
+ "closedBalanceInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "eventType": "NewCredit",
+ "invoiceNumber": "3302",
+ "isEstimatedBalance": false
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event3",
+ "name": "event3",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "transactionDate": "2019-09-01T00:00:00Z",
+ "description": "Credits Expired",
+ "creditCurrency": "USD",
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1",
+ "resellerDescription": "Reseller information"
+ },
+ "billingCurrency": "USD",
+ "newCredit": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "newCreditInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "canceledCredit": {
+ "currency": "USD",
+ "value": 5000
+ },
+ "adjustments": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "adjustmentsInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "creditExpired": {
+ "currency": "USD",
+ "value": 300.00
+ },
+ "creditExpiredInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "charges": {
+ "currency": "USD",
+ "value": 0.00
+ },
+ "chargesInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 600.00
+ },
+ "closedBalanceInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "eventType": "ExpiredCredit",
+ "invoiceNumber": "",
+ "isEstimatedBalance": false
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/4268/providers/Microsoft.Consumption/events/event4",
+ "name": "event4",
+ "type": "Microsoft.Consumption/events",
+ "properties": {
+ "transactionDate": "2019-10-01T00:00:00Z",
+ "description": "Settled invoice #212033",
+ "creditCurrency": "USD",
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1",
+ "resellerDescription": "Reseller information"
+ },
+ "billingCurrency": "USD",
+ "newCredit": {
+ "currency": "USD",
+ "value": 300.00
+ },
+ "newCreditInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "canceledCredit": {
+ "currency": "USD",
+ "value": 5000
+ },
+ "adjustments": {
+ "currency": "USD",
+ "value": -200.00
+ },
+ "adjustmentsInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "creditExpired": {
+ "currency": "USD",
+ "value": 100.00
+ },
+ "creditExpiredInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "charges": {
+ "currency": "USD",
+ "value": 300.00
+ },
+ "chargesInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 700.00
+ },
+ "closedBalanceInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "eventType": "SettledCharges",
+ "invoiceNumber": "3303",
+ "isEstimatedBalance": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount-Contributor.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount-Contributor.json
new file mode 100644
index 000000000000..d5902fd45483
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount-Contributor.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "usedAmount": {
+ "currency": "USD",
+ "value": 550.00
+ },
+ "orgType": "Contributor",
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-10-01T00:00:00Z",
+ "expirationDate": "2019-11-01T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Active"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount-Primary.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount-Primary.json
new file mode 100644
index 000000000000..44e026622265
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount-Primary.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "usedAmount": {
+ "currency": "USD",
+ "value": 550.00
+ },
+ "orgType": "Primary",
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-10-01T00:00:00Z",
+ "expirationDate": "2019-11-01T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Active"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount.json
new file mode 100644
index 000000000000..081fd75923d9
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccount.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-10-01T00:00:00Z",
+ "expirationDate": "2019-11-01T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Active"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot2",
+ "name": "lot2",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 6000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 80.90
+ },
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-11-01T00:00:00Z",
+ "expirationDate": "2019-12-31T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Expired"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters-Contributor.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters-Contributor.json
new file mode 100644
index 000000000000..d435f20bd093
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters-Contributor.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "$filter": "status eq 'active' AND source eq 'consumptioncommitment'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "usedAmount": {
+ "currency": "USD",
+ "value": 550.00
+ },
+ "orgType": "Contributor",
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-10-01T00:00:00Z",
+ "expirationDate": "2019-11-01T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Active"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters-Primary.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters-Primary.json
new file mode 100644
index 000000000000..4887f63d0c52
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters-Primary.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "$filter": "status eq 'active' AND source eq 'consumptioncommitment'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "usedAmount": {
+ "currency": "USD",
+ "value": 550.00
+ },
+ "orgType": "Primary",
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-10-01T00:00:00Z",
+ "expirationDate": "2019-11-01T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Active"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters.json
new file mode 100644
index 000000000000..a253d7cfd226
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingAccountWithFilters.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "$filter": "status eq 'active' AND source eq 'consumptioncommitment'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "source": "ConsumptionCommitment",
+ "startDate": "2019-10-01T00:00:00Z",
+ "expirationDate": "2019-11-01T00:00:00Z",
+ "purchasedDate": "2019-09-01T00:00:00Z",
+ "status": "Active"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingProfile.json
new file mode 100644
index 000000000000..33b93f106507
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByBillingProfile.json
@@ -0,0 +1,83 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "billingProfileId": "2468"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "creditCurrency": "USD",
+ "billingCurrency": "USD",
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "originalAmountInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "closedBalanceInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller1",
+ "resellerDescription": "Reseller information."
+ },
+ "source": "PurchasedCredit",
+ "startDate": "2023-11-01T00:00:00Z",
+ "expirationDate": "2023-11-01T00:00:00Z",
+ "poNumber": "3524",
+ "isEstimatedBalance": false
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/lots/lot2",
+ "name": "lot2",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "creditCurrency": "USD",
+ "billingCurrency": "USD",
+ "originalAmount": {
+ "currency": "USD",
+ "value": 6000.00
+ },
+ "originalAmountInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 80.90
+ },
+ "closedBalanceInBillingCurrency": {
+ "exchangeRate": 5000.00,
+ "exchangeRateMonth": 1
+ },
+ "reseller": {
+ "resellerId": "/providers/Microsoft.Billing/billingAccounts/1234:5678/billingProfiles/2468/providers/Microsoft.Consumption/reseller/reseller2",
+ "resellerDescription": "Reseller information."
+ },
+ "source": "PurchasedCredit",
+ "startDate": "2023-11-01T00:00:00Z",
+ "expirationDate": "2023-05-31T00:00:00Z",
+ "poNumber": "31224",
+ "isEstimatedBalance": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByCustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByCustomer.json
new file mode 100644
index 000000000000..835380d2a8ef
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByCustomer.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "customerId": "1234:5678"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234/customers/456/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "source": "PurchasedCredit",
+ "startDate": "2021-05-01T00:00:00Z",
+ "expirationDate": "2021-05-01T00:00:00Z",
+ "poNumber": "3524",
+ "isEstimatedBalance": false
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234/customers/456/providers/Microsoft.Consumption/lots/lot2",
+ "name": "lot2",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 6000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 80.90
+ },
+ "source": "PurchasedCredit",
+ "startDate": "2021-05-01T00:00:00Z",
+ "expirationDate": "2019-12-31T00:00:00Z",
+ "poNumber": "31224",
+ "isEstimatedBalance": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByCustomerWithFilters.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByCustomerWithFilters.json
new file mode 100644
index 000000000000..fe22502a2096
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/LotsListByCustomerWithFilters.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "1234:5678",
+ "customerId": "1234:5678",
+ "$filter": "status eq 'active' AND source eq 'consumptioncommitment'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/1234/customers/456/providers/Microsoft.Consumption/lots/lot1",
+ "name": "lot1",
+ "type": "Microsoft.Consumption/lots",
+ "properties": {
+ "originalAmount": {
+ "currency": "USD",
+ "value": 5000.00
+ },
+ "closedBalance": {
+ "currency": "USD",
+ "value": 60.90
+ },
+ "source": "PurchasedCredit",
+ "startDate": "2021-05-01T00:00:00Z",
+ "expirationDate": "2021-05-01T00:00:00Z",
+ "poNumber": "3524",
+ "isEstimatedBalance": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByBillingAccountList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByBillingAccountList.json
new file mode 100644
index 000000000000..7ff47792a1ef
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByBillingAccountList.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/billingAccounts/123456",
+ "billingAccountId": "123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplaceId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan1",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json
new file mode 100644
index 000000000000..f1636228bd7a
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByBillingAccountListForBillingPeriod.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "123456",
+ "scope": "providers/Microsoft.Billing/billingAccounts/123456",
+ "billingPeriodName": "201702"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByDepartmentList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByDepartmentList.json
new file mode 100644
index 000000000000..5f9793d6560b
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByDepartmentList.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "departmentId": "123456",
+ "billingPeriodName": "201702",
+ "scope": "providers/Microsoft.Billing/departments/123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json
new file mode 100644
index 000000000000..5f9793d6560b
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByDepartment_ListByBillingPeriod.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "departmentId": "123456",
+ "billingPeriodName": "201702",
+ "scope": "providers/Microsoft.Billing/departments/123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/providers/Microsoft.Billing/departments/123456/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByEnrollmentAccountList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByEnrollmentAccountList.json
new file mode 100644
index 000000000000..048f6d859147
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByEnrollmentAccountList.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "enrollmentAccountId": "123456",
+ "billingPeriodName": "201702",
+ "scope": "providers/Microsoft.Billing/enrollmentAccounts/123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json
new file mode 100644
index 000000000000..048f6d859147
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "enrollmentAccountId": "123456",
+ "billingPeriodName": "201702",
+ "scope": "providers/Microsoft.Billing/enrollmentAccounts/123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/providers/Microsoft.Billing/enrollmentAccounts/123456/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByManagementGroupList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByManagementGroupList.json
new file mode 100644
index 000000000000..03083d0f23a5
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByManagementGroupList.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201810/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201810",
+ "usageStart": "2018-10-13T00:00:00Z",
+ "usageEnd": "2018-10-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ },
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810/providers/Microsoft.Consumption/marketplaces/marketplaceId2",
+ "name": "marketplacesId2",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account2",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center2",
+ "departmentName": "Department2",
+ "billingPeriodId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810",
+ "usageStart": "2018-10-13T00:00:00Z",
+ "usageEnd": "2018-10-13T23:59:59Z",
+ "instanceName": "shared2",
+ "instanceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared2",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "11111111-1111-1111-1111-111111111111",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "11111111-1111-1111-1111-111111111111",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "11111111-1111-1111-1111-111111111111",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json
new file mode 100644
index 000000000000..6e8346c280cf
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesByManagementGroup_ListForBillingPeriod.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest",
+ "billingPeriodName": "201808",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201808/providers/Microsoft.Consumption/marketplaces/marketplaceId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201808",
+ "usageStart": "2018-08-13T00:00:00Z",
+ "usageEnd": "2018-08-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ },
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201808/providers/Microsoft.Consumption/marketplaces/marketplaceId2",
+ "name": "marketplacesId2",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account2",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center2",
+ "departmentName": "Department2",
+ "billingPeriodId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingPeriods/201810",
+ "usageStart": "2018-08-13T00:00:00Z",
+ "usageEnd": "2018-08-13T23:59:59Z",
+ "instanceName": "shared2",
+ "instanceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared2",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "11111111-1111-1111-1111-111111111111",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "11111111-1111-1111-1111-111111111111",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "11111111-1111-1111-1111-111111111111",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesList.json
new file mode 100644
index 000000000000..4f5ca9e5156a
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesList.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketPlaces/marketplaceId1",
+ "name": "marketplaceId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan1",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesListForBillingPeriod.json
new file mode 100644
index 000000000000..cc3759ff5c72
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/MarketplacesListForBillingPeriod.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "billingPeriodName": "201801"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/marketPlaces/marketplacesId1",
+ "name": "marketplacesId1",
+ "type": "Microsoft.Consumption/marketPlaces",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "accountName": "Account1",
+ "additionalProperties": "additionalProperties",
+ "costCenter": "Center1",
+ "departmentName": "Department1",
+ "billingPeriodId": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702",
+ "usageStart": "2017-02-13T00:00:00Z",
+ "usageEnd": "2017-02-13T23:59:59Z",
+ "instanceName": "shared1",
+ "instanceId": "/subscriptions/subid/resourceGroups/Default-Web-eastasia/providers/Microsoft.Web/sites/shared1",
+ "currency": "USD",
+ "consumedQuantity": 0.00328,
+ "pretaxCost": 0.67,
+ "isEstimated": false,
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "offerName": "offer1",
+ "resourceGroup": "TEST",
+ "orderNumber": "00000000-0000-0000-0000-000000000000",
+ "publisherName": "xyz",
+ "planName": "plan2",
+ "resourceRate": 0.24,
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "azure subscription",
+ "unitOfMeasure": "10 Hours",
+ "isRecurringCharge": false
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/OperationList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/OperationList.json
new file mode 100644
index 000000000000..cdeeae33046c
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/OperationList.json
@@ -0,0 +1,293 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "Microsoft.Consumption/usageDetails/read",
+ "name": "Microsoft.Consumption/usageDetails/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "UsageDetails",
+ "operation": "List Usage Details",
+ "description": "List the usage details for a scope for EA and WebDirect subscriptions."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/reservationSummaries/read",
+ "name": "Microsoft.Consumption/reservationSummaries/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "ReservationSummaries",
+ "operation": "List Reservation Utilization Summaries",
+ "description": "List the utilization summary for reserved instances by reservation order or managment groups. The summary data is either at monthly or daily level."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/reservationDetails/read",
+ "name": "Microsoft.Consumption/reservationDetails/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "ReservationDetails",
+ "operation": "List Reservation Utilization Details",
+ "description": "List the utilization details for reserved instances by reservation order or managment groups. The details data is per instance per day level."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/reservationTransactions/read",
+ "name": "Microsoft.Consumption/reservationTransactions/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "ReservationTransactions",
+ "operation": "List Reservation Transactions history",
+ "description": "List the transaction history for reserved instances by management groups."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/balances/read",
+ "name": "Microsoft.Consumption/balances/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Balances",
+ "operation": "List utlization summary",
+ "description": "List the utilization summary for a billing period for a management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/pricesheets/read",
+ "name": "Microsoft.Consumption/pricesheets/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Pricesheets",
+ "operation": "List Price sheets",
+ "description": "List the Pricesheets data for a subscription or a management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/marketplaces/read",
+ "name": "Microsoft.Consumption/marketplaces/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Marketplaces",
+ "operation": "List Marketplace resource usage",
+ "description": "List the marketplace resource usage details for a scope for EA and WebDirect subscriptions."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/budgets/read",
+ "name": "Microsoft.Consumption/budgets/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Budgets",
+ "operation": "List budgets",
+ "description": "List the budgets by a subscription or a management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/budgets/write",
+ "name": "Microsoft.Consumption/budgets/write",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Budgets",
+ "operation": "Create and update budgets",
+ "description": "Creates and update the budgets by a subscription or a management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/budgets/delete",
+ "name": "Microsoft.Consumption/budgets/delete",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Budgets",
+ "operation": "Delete budgets",
+ "description": "Delete the budgets by a subscription or a management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/charges/read",
+ "name": "Microsoft.Consumption/charges/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Charges",
+ "operation": "List charges",
+ "description": "List charges"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/credits/read",
+ "name": "Microsoft.Consumption/credits/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Credits",
+ "operation": "List credits",
+ "description": "List credits"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/events/read",
+ "name": "Microsoft.Consumption/events/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Events",
+ "operation": "List events",
+ "description": "List events"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/forecasts/read",
+ "name": "Microsoft.Consumption/forecasts/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Forecasts",
+ "operation": "List forecasts",
+ "description": "List forecasts"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/lots/read",
+ "name": "Microsoft.Consumption/lots/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Lots",
+ "operation": "List lots",
+ "description": "List lots"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/operationstatus/read",
+ "name": "Microsoft.Consumption/operationstatus/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Operationstatus",
+ "operation": "List operationstatus",
+ "description": "List operationstatus"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/operationresults/read",
+ "name": "Microsoft.Consumption/operationresults/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Operationresults",
+ "operation": "List operationresults",
+ "description": "List operationresults"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/register/action",
+ "name": "Microsoft.Consumption/register/action",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Register",
+ "operation": "Register to Consumption RP",
+ "description": "Register to Consumption RP"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/tags/read",
+ "name": "Microsoft.Consumption/tags/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Tags",
+ "operation": "List tags",
+ "description": "List tags for EA and subscriptions."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/tenants/register/action",
+ "name": "Microsoft.Consumption/tenants/register/action",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "tenants/register",
+ "operation": "register tenants",
+ "description": "Register action for scope of Microsoft.Consumption by a tenant."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/terms/read",
+ "name": "Microsoft.Consumption/terms/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Terms",
+ "operation": "List Terms",
+ "description": "List the terms for a subscription or a management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/reservationRecommendations/read",
+ "name": "Microsoft.Consumption/reservationRecommendations/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "ReservationRecommendations",
+ "operation": "List reserved instances recommendations",
+ "description": "List single or shared recommendations for Reserved instances for a subscription."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/operations/read",
+ "name": "Microsoft.Consumption/operations/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Operations",
+ "operation": "List supported operations",
+ "description": "List all supported operations by Microsoft.Consumption resource provider."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/tenants/read",
+ "name": "Microsoft.Consumption/tenants/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "Tenants",
+ "operation": "List tenants",
+ "description": "List tenants"
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/externalBillingAccounts/tags/read",
+ "name": "Microsoft.Consumption/externalBillingAccounts/tags/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "externalBillingAccounts/Tags",
+ "operation": "List tags",
+ "description": "List tags for EA and subscriptions."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/externalSubscriptions/tags/read",
+ "name": "Microsoft.Consumption/externalSubscriptions/tags/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "externalSubscriptions/Tags",
+ "operation": "List tags",
+ "description": "List tags for EA and subscriptions."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/aggregatedcost/read",
+ "name": "Microsoft.Consumption/aggregatedcost/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "AggregatedCost",
+ "operation": "List AggregatedCost",
+ "description": "List AggregatedCost for management group."
+ }
+ },
+ {
+ "id": "Microsoft.Consumption/reservationRecommendationDetails/read",
+ "name": "Microsoft.Consumption/reservationRecommendationDetails/read",
+ "display": {
+ "provider": "Microsoft.Consumption",
+ "resource": "ReservationRecommendationDetails",
+ "operation": "List Reservation Recommendation Details",
+ "description": "List Reservation Recommendation Details"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheet.json
new file mode 100644
index 000000000000..043c4076262e
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheet.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default",
+ "name": "default",
+ "type": "Microsoft.Consumption/pricesheets",
+ "properties": {
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D",
+ "pricesheets": [
+ {
+ "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "unitOfMeasure": "100 Hours",
+ "includedQuantity": 100,
+ "partNumber": "XX-11110",
+ "unitPrice": 0.00328,
+ "currencyCode": "EUR",
+ "offerId": "OfferId 1",
+ "savingsPlan": {
+ "term": "P3Y",
+ "effectivePrice": 0.002,
+ "marketPrice": 0.00328
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheetExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheetExpand.json
new file mode 100644
index 000000000000..7abaa5c6b16f
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheetExpand.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "billingPeriodName": "201801",
+ "$expand": "meterDetails"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default",
+ "name": "default",
+ "type": "Microsoft.Consumption/pricesheets",
+ "properties": {
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D&$expand=properties/pricesheets/meterDetails",
+ "pricesheets": [
+ {
+ "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "unitOfMeasure": "100 Hours",
+ "includedQuantity": 100,
+ "partNumber": "XX-11110",
+ "unitPrice": 0.00328,
+ "currencyCode": "EUR",
+ "offerId": "OfferId 1",
+ "meterDetails": {
+ "meterName": "Data Transfer Out (GB)",
+ "meterCategory": "Networking",
+ "unit": "GB",
+ "meterLocation": "Zone 2",
+ "totalIncludedQuantity": 0,
+ "pretaxStandardRate": 0.138
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheetForBillingPeriod.json
new file mode 100644
index 000000000000..2b72cd920a19
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/PriceSheetForBillingPeriod.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "billingPeriodName": "201801"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default",
+ "name": "default",
+ "type": "Microsoft.Consumption/pricesheets",
+ "properties": {
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31",
+ "pricesheets": [
+ {
+ "billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "unitOfMeasure": "100 Hours",
+ "includedQuantity": 100,
+ "partNumber": "XX-11110",
+ "unitPrice": 0.00328,
+ "currencyCode": "EUR",
+ "offerId": "OfferId 1"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetails.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetails.json
new file mode 100644
index 000000000000..9ac2fe868f5c
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetails.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationDetails/20171129",
+ "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171129",
+ "type": "Microsoft.Consumption/reservationDetails",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "usageDate": "2017-11-29T00:00:00Z",
+ "skuName": "Standard_D2_v2",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/wvn-sql/providers/microsoft.compute/virtualmachines/abc-sql2014sp33",
+ "totalReservedQuantity": 1.000000000000000,
+ "reservedHours": 24.000000000000000,
+ "usedHours": 24.000000000000000,
+ "instanceFlexibilityGroup": "DSv2 Series",
+ "instanceFlexibilityRatio": "0.25"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingAccountId.json
new file mode 100644
index 000000000000..20078b294912
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingAccountId.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345",
+ "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1",
+ "name": "reservationDetails_Id1",
+ "type": "Microsoft.Consumption/reservationDetails",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "usageDate": "2017-11-30T00:00:00-08:00",
+ "skuName": "Standard_D2s_v3",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1",
+ "totalReservedQuantity": 0,
+ "reservedHours": 48,
+ "usedHours": 0.6,
+ "instanceFlexibilityGroup": "DSv3 Series",
+ "instanceFlexibilityRatio": "1"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingProfileId.json
new file mode 100644
index 000000000000..4f6a99951b03
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingProfileId.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579",
+ "startDate": "2019-09-01",
+ "endDate": "2019-10-31"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1",
+ "name": "reservationDetails_Id1",
+ "type": "Microsoft.Consumption/reservationDetails",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "usageDate": "2019-09-30T00:00:00-08:00",
+ "skuName": "Standard_D2s_v3",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1",
+ "totalReservedQuantity": 0,
+ "reservedHours": 48,
+ "usedHours": 0.6,
+ "instanceFlexibilityGroup": "DSv3 Series",
+ "instanceFlexibilityRatio": "1"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingProfileIdReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingProfileIdReservationId.json
new file mode 100644
index 000000000000..668fad8b6746
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsByBillingProfileIdReservationId.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579",
+ "startDate": "2019-09-01",
+ "endDate": "2019-10-31",
+ "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b",
+ "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1",
+ "name": "reservationDetails_Id1",
+ "type": "Microsoft.Consumption/reservationDetails",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc",
+ "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b",
+ "usageDate": "2019-09-30T00:00:00-08:00",
+ "skuName": "Standard_D2s_v3",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1",
+ "totalReservedQuantity": 0,
+ "reservedHours": 48,
+ "usedHours": 0.6,
+ "instanceFlexibilityGroup": "DSv3 Series",
+ "instanceFlexibilityRatio": "1"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsWithReservationId.json
new file mode 100644
index 000000000000..e1ca933343c2
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationDetailsWithReservationId.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationDetails/20171129",
+ "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171129",
+ "type": "Microsoft.Consumption/reservationDetails",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "usageDate": "2017-11-29T00:00:00Z",
+ "skuName": "Standard_D2_v2",
+ "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/wvn-sql/providers/microsoft.compute/virtualmachines/wvn-sql2014sp33",
+ "totalReservedQuantity": 1.000000000000000,
+ "reservedHours": 24.000000000000000,
+ "usedHours": 24.000000000000000,
+ "kind": "Reservation",
+ "instanceFlexibilityGroup": "D2v2 Series",
+ "instanceFlexibilityRatio": "1"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByBillingAccount.json
new file mode 100644
index 000000000000..8cee375049a5
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByBillingAccount.json
@@ -0,0 +1,105 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/00000000",
+ "lookBackPeriod": "Last60Days",
+ "product": "Standard_DS14_v2",
+ "region": "eastus",
+ "scope": "Shared",
+ "term": "P1Y",
+ "$filter": "properties/subscriptionId eq 00000000-0000-0000-0000-00000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "providers/Microsoft.Billing/billingAccounts/00000000/providers/microsoft.consumption/reservationrecommendationdetails",
+ "name": "reservationRecommendationDetails",
+ "type": "Microsoft.Consumption/ReservationRecommendationDetails",
+ "properties": {
+ "currency": "USD",
+ "resource": {
+ "appliedScopes": [
+ "00000000-0000-0000-0000-00000000",
+ "00000000-0000-0000-0000-00000000"
+ ],
+ "onDemandRate": 1.482,
+ "product": "Standard_DS14_v2",
+ "region": "eastus",
+ "reservationRate": 0.70570776255707,
+ "resourceType": "virtualmachines"
+ },
+ "resourceGroup": null,
+ "savings": {
+ "calculatedSavings": [
+ {
+ "onDemandCost": 529550.326618951,
+ "overageCost": 63253.5935111345,
+ "quantity": 220,
+ "reservationCost": 223102.452054792,
+ "totalReservationCost": 286356.045565927,
+ "savings": 243194.281053024
+ },
+ {
+ "onDemandCost": 529550.326618950,
+ "overageCost": 149335.025050147,
+ "quantity": 179,
+ "reservationCost": 181524.267808217,
+ "totalReservationCost": 330859.292858364,
+ "savings": 198691.033760586
+ },
+ {
+ "onDemandCost": 529550.326618950,
+ "overageCost": 195942.319606957,
+ "quantity": 157,
+ "reservationCost": 159214.022602738,
+ "totalReservationCost": 355156.342209695,
+ "savings": 174393.984409255
+ },
+ {
+ "onDemandCost": 529550.326618950,
+ "overageCost": 30975.2311896299,
+ "quantity": 241,
+ "reservationCost": 244398.595205477,
+ "totalReservationCost": 275373.826395107,
+ "savings": 254176.500223843
+ }
+ ],
+ "lookBackPeriod": 60,
+ "recommendedQuantity": 253.0,
+ "reservationOrderTerm": "P1Y",
+ "savingsType": "instance",
+ "unitOfMeasure": "hour"
+ },
+ "scope": "Shared",
+ "usage": {
+ "firstConsumptionDate": "2019-11-27T00:00:00",
+ "lastConsumptionDate": "2020-01-25T21:00:00",
+ "lookBackUnitType": "virtualMachine quantity",
+ "usageData": [
+ 275.95003899999995,
+ 275.916705,
+ 276.0,
+ 276.0,
+ 275.916725,
+ 275.916705,
+ 275.98335299999997,
+ 276.0,
+ 276.0,
+ 276.0,
+ 276.0,
+ 276.0,
+ 275.98335299999997,
+ 276.0,
+ 276.0,
+ 276.0,
+ 276.0,
+ 275.933352
+ ],
+ "usageGrain": "hourly"
+ }
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByBillingProfile.json
new file mode 100644
index 000000000000..61855d0bc2e4
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByBillingProfile.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-00000000:00000000-0000-0000-0000-00000000/billingProfiles/00000000-0000-0000-0000-00000000",
+ "lookBackPeriod": "Last7Days",
+ "product": "Standard_B2s",
+ "region": "australiaeast",
+ "scope": "Shared",
+ "term": "P1Y",
+ "$filter": "properties/subscriptionId eq 00000000-0000-0000-0000-00000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-00000000:00000000-0000-0000-0000-00000000/billingProfiles/00000000-0000-0000-0000-00000000/providers/microsoft.consumption/reservationrecommendationdetails",
+ "name": "reservationRecommendationDetails",
+ "type": "Microsoft.Consumption/ReservationRecommendationDetails",
+ "properties": {
+ "currency": "AUD",
+ "resource": {
+ "appliedScopes": [
+ "00000000-0000-0000-0000-00000000"
+ ],
+ "onDemandRate": 0.0725,
+ "product": "Standard_B2s",
+ "region": "australiaeast",
+ "reservationRate": 0.044141665317880413,
+ "resourceType": "virtualmachines"
+ },
+ "resourceGroup": null,
+ "savings": {
+ "calculatedSavings": [
+ {
+ "onDemandCost": 632.884472049689441,
+ "overageCost": 0.0,
+ "quantity": 1,
+ "reservationCost": 387.740388152261739,
+ "totalReservationCost": 387.740388152261739,
+ "savings": 245.144083897427702
+ }
+ ],
+ "lookBackPeriod": 7,
+ "recommendedQuantity": 1.0,
+ "reservationOrderTerm": "P1Y",
+ "savingsType": "instance",
+ "unitOfMeasure": "hour"
+ },
+ "scope": "Shared",
+ "usage": {
+ "firstConsumptionDate": "2020-01-19T00:00:00",
+ "lastConsumptionDate": "2020-01-25T17:00:00",
+ "lookBackUnitType": "virtualMachine quantity",
+ "usageData": [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 0.0
+ ],
+ "usageGrain": "hourly"
+ }
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByResourceGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByResourceGroup.json
new file mode 100644
index 000000000000..5adba5236b0f
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsByResourceGroup.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/testGroup",
+ "lookBackPeriod": "Last30Days",
+ "product": "Standard_DS13_v2",
+ "region": "westus",
+ "scope": "Single",
+ "term": "P3Y"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/testGroup/providers/microsoft.consumption/reservationrecommendationdetails",
+ "name": "reservationRecommendationDetails",
+ "type": "Microsoft.Consumption/ReservationRecommendationDetails",
+ "properties": {
+ "currency": "USD",
+ "resource": {
+ "appliedScopes": [
+ "00000000-0000-0000-0000-00000000",
+ "testGroup"
+ ],
+ "onDemandRate": 0.519,
+ "product": "Standard_DS13_v2",
+ "region": "westus",
+ "reservationRate": 0.302549467275493,
+ "resourceType": "virtualmachines"
+ },
+ "resourceGroup": "testGroup",
+ "savings": {
+ "calculatedSavings": [
+ {
+ "onDemandCost": 368.4813602070006,
+ "overageCost": 0.0,
+ "quantity": 2,
+ "reservationCost": 429.01514459665,
+ "totalReservationCost": 429.01514459665,
+ "savings": -60.5337843896494
+ },
+ {
+ "onDemandCost": 368.481360207000,
+ "overageCost": 1.557,
+ "quantity": 1,
+ "reservationCost": 214.507572298325,
+ "totalReservationCost": 216.064572298325,
+ "savings": 152.416787908675
+ }
+ ],
+ "lookBackPeriod": 30,
+ "recommendedQuantity": 1.0,
+ "reservationOrderTerm": "P3Y",
+ "savingsType": "instance",
+ "unitOfMeasure": "hour"
+ },
+ "scope": "Single",
+ "usage": {
+ "firstConsumptionDate": "2020-02-03T00:00:00",
+ "lastConsumptionDate": "2020-03-03T13:00:00",
+ "lookBackUnitType": "virtualMachine quantity",
+ "usageData": [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ],
+ "usageGrain": "hourly"
+ }
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsBySubscription.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsBySubscription.json
new file mode 100644
index 000000000000..819b36973682
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationDetailsBySubscription.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "subscriptions/00000000-0000-0000-0000-00000000",
+ "lookBackPeriod": "Last30Days",
+ "product": "Standard_DS13_v2",
+ "region": "westus",
+ "scope": "Single",
+ "term": "P3Y"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "subscriptions/00000000-0000-0000-0000-00000000/providers/microsoft.consumption/reservationrecommendationdetails",
+ "name": "reservationRecommendationDetails",
+ "type": "Microsoft.Consumption/ReservationRecommendationDetails",
+ "properties": {
+ "currency": "USD",
+ "resource": {
+ "appliedScopes": [
+ "00000000-0000-0000-0000-00000000"
+ ],
+ "onDemandRate": 0.519,
+ "product": "Standard_DS13_v2",
+ "region": "westus",
+ "reservationRate": 0.302549467275493,
+ "resourceType": "virtualmachines"
+ },
+ "resourceGroup": null,
+ "savings": {
+ "calculatedSavings": [
+ {
+ "onDemandCost": 368.4813602070006,
+ "overageCost": 0.0,
+ "quantity": 2,
+ "reservationCost": 429.01514459665,
+ "totalReservationCost": 429.01514459665,
+ "savings": -60.5337843896494
+ },
+ {
+ "onDemandCost": 368.481360207000,
+ "overageCost": 1.557,
+ "quantity": 1,
+ "reservationCost": 214.507572298325,
+ "totalReservationCost": 216.064572298325,
+ "savings": 152.416787908675
+ }
+ ],
+ "lookBackPeriod": 30,
+ "recommendedQuantity": 1.0,
+ "reservationOrderTerm": "P3Y",
+ "savingsType": "instance",
+ "unitOfMeasure": "hour"
+ },
+ "scope": "Single",
+ "usage": {
+ "firstConsumptionDate": "2020-02-03T00:00:00",
+ "lastConsumptionDate": "2020-03-03T13:00:00",
+ "lookBackUnitType": "virtualMachine quantity",
+ "usageData": [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ],
+ "usageGrain": "hourly"
+ }
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByBillingAccount.json
new file mode 100644
index 000000000000..662063fa9abd
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByBillingAccount.json
@@ -0,0 +1,82 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "billingAccount/123456/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000",
+ "name": "00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "location": "westus",
+ "sku": "Standard_DS1_v2",
+ "kind": "legacy",
+ "properties": {
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P1Y",
+ "costWithNoReservedInstances": 12.0785105,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 11.4899644807748,
+ "netSavings": 0.588546019225182,
+ "firstUsageDate": "2019-07-07T00:00:00-07:00",
+ "scope": "Shared",
+ "lookBackPeriod": "Last7Days",
+ "instanceFlexibilityRatio": 1,
+ "instanceFlexibilityGroup": "DSv2 Series",
+ "normalizedSize": "Standard_DS1_v2",
+ "recommendedQuantityNormalized": 1,
+ "skuProperties": [
+ {
+ "name": "Cores",
+ "value": "1"
+ },
+ {
+ "name": "Ram",
+ "value": "1"
+ }
+ ]
+ }
+ },
+ {
+ "id": "billingAccount/123456/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000",
+ "name": "00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "location": "westus",
+ "sku": "Standard_DS1_v2",
+ "kind": "legacy",
+ "properties": {
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P1Y",
+ "costWithNoReservedInstances": 10.0785105,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 13.48,
+ "netSavings": 0.68,
+ "firstUsageDate": "2019-07-07T00:00:00-07:00",
+ "scope": "Shared",
+ "lookBackPeriod": "Last7Days",
+ "instanceFlexibilityRatio": 1,
+ "instanceFlexibilityGroup": "DSv2 Series",
+ "normalizedSize": "Standard_DS1",
+ "recommendedQuantityNormalized": 1.2,
+ "skuProperties": [
+ {
+ "name": "SkuDisplayName",
+ "value": "B"
+ },
+ {
+ "name": "CPU",
+ "value": "1"
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2023-11-01&$skiptoken=AQAAAA%3D%3D&"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByBillingProfile.json
new file mode 100644
index 000000000000..888ff19a236f
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByBillingProfile.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000",
+ "name": "00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "kind": "modern",
+ "properties": {
+ "costWithNoReservedInstances": {
+ "currency": "USD",
+ "value": 279881.9457795231
+ },
+ "firstUsageDate": "2022-08-22T00:00:00Z",
+ "instanceFlexibilityGroup": "NA",
+ "instanceFlexibilityRatio": 1,
+ "location": "westus2",
+ "lookBackPeriod": 60,
+ "meterId": "30f7049a-b092-42f4-9173-9ec31ab945ad",
+ "netSavings": {
+ "currency": "USD",
+ "value": 153766.87728637524
+ },
+ "normalizedSize": "SQLDB_BC_Compute_Gen5",
+ "recommendedQuantity": 35,
+ "recommendedQuantityNormalized": 35,
+ "resourceType": "sqldatabases",
+ "scope": "Single",
+ "skuName": "SQLDB_BC_Compute_Gen5",
+ "skuProperties": null,
+ "subscriptionId": "c6aa8a01-a744-44a7-a4f1-caad17512f27",
+ "term": "P3Y",
+ "totalCostWithReservedInstances": {
+ "currency": "USD",
+ "value": 126115.06849314792
+ }
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/123456/billingProfiles/6420/providers/Microsoft.Consumption/reservationRecommendations/00000000-0000-0000-0000-000000000000",
+ "name": "00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "kind": "modern",
+ "properties": {
+ "costWithNoReservedInstances": {
+ "currency": "USD",
+ "value": 93208.8596802244
+ },
+ "firstUsageDate": "2022-08-22T00:00:00Z",
+ "instanceFlexibilityGroup": "NA",
+ "instanceFlexibilityRatio": 1,
+ "location": "westus2",
+ "lookBackPeriod": 60,
+ "meterId": "30f7049a-b092-42f4-9173-9ec31ab945ad",
+ "netSavings": {
+ "currency": "USD",
+ "value": 32553.85968022456
+ },
+ "normalizedSize": "SQLDB_BC_Compute_Gen5",
+ "recommendedQuantity": 35,
+ "recommendedQuantityNormalized": 35,
+ "resourceType": "sqldatabases",
+ "scope": "Single",
+ "skuName": "SQLDB_BC_Compute_Gen5",
+ "skuProperties": null,
+ "subscriptionId": "c6aa8a01-a744-44a7-a4f1-caad17512f27",
+ "term": "P1Y",
+ "totalCostWithReservedInstances": {
+ "currency": "USD",
+ "value": 60654.99999999984
+ }
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2023-11-01&$skiptoken=AQAAAA%3D%3D&"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByResourceGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByResourceGroup.json
new file mode 100644
index 000000000000..aaf3180ddaab
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsByResourceGroup.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGrouups/testGroup/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1",
+ "name": "reservationRecommendations1",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "sku": "Standard_DS1_v2",
+ "location": "northeurope",
+ "kind": "legacy",
+ "properties": {
+ "lookBackPeriod": "Last7Days",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P1Y",
+ "costWithNoReservedInstances": 0.0,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 0.0,
+ "netSavings": 4.634521202630137,
+ "firstUsageDate": "2018-03-06T00:00:00Z",
+ "scope": "Single",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2",
+ "name": "reservationRecommendations2",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "sku": "Standard_DS1_v2",
+ "location": "northeurope",
+ "kind": "legacy",
+ "properties": {
+ "lookBackPeriod": "Last7Days",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P3Y",
+ "costWithNoReservedInstances": 0.0,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 0.0,
+ "netSavings": 7.2893157231780812,
+ "firstUsageDate": "2018-03-06T00:00:00Z",
+ "scope": "Single",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Microsoft.Consumption/reservationRecommendations?api-version=2023-11-01&$skiptoken=AQAAAA%3D%3D&"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsBySubscription.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsBySubscription.json
new file mode 100644
index 000000000000..931ebcd4af2d
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsBySubscription.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1",
+ "name": "reservationRecommendations1",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "sku": "Standard_DS1_v2",
+ "location": "northeurope",
+ "kind": "legacy",
+ "properties": {
+ "lookBackPeriod": "Last7Days",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P1Y",
+ "costWithNoReservedInstances": 0.0,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 0.0,
+ "netSavings": 4.634521202630137,
+ "firstUsageDate": "2018-03-06T00:00:00Z",
+ "scope": "Single",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2",
+ "name": "reservationRecommendations2",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "sku": "Standard_DS1_v2",
+ "location": "northeurope",
+ "kind": "legacy",
+ "properties": {
+ "lookBackPeriod": "Last7Days",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P3Y",
+ "costWithNoReservedInstances": 0.0,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 0.0,
+ "netSavings": 7.2893157231780812,
+ "firstUsageDate": "2018-03-06T00:00:00Z",
+ "scope": "Single",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2023-11-01&$skiptoken=AQAAAA%3D%3D&"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json
new file mode 100644
index 000000000000..73499df3f32b
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "$filter": "properties/scope eq 'Single' AND properties/lookBackPeriod eq 'Last7Days'"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations1",
+ "name": "reservationRecommendations1",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "sku": "Standard_DS1_v2",
+ "location": "northeurope",
+ "kind": "legacy",
+ "properties": {
+ "lookBackPeriod": "Last7Days",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P1Y",
+ "costWithNoReservedInstances": 0.0,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 0.0,
+ "netSavings": 4.634521202630137,
+ "firstUsageDate": "2018-03-06T00:00:00Z",
+ "scope": "Single",
+ "skuProperties": [
+ {
+ "name": "Cores",
+ "value": "1"
+ },
+ {
+ "name": "Ram",
+ "value": "1"
+ }
+ ],
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ {
+ "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations/reservationRecommendations2",
+ "name": "reservationRecommendations2",
+ "type": "Microsoft.Consumption/reservationRecommendations",
+ "sku": "Standard_DS1_v2",
+ "location": "northeurope",
+ "kind": "legacy",
+ "properties": {
+ "lookBackPeriod": "Last7Days",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "term": "P3Y",
+ "costWithNoReservedInstances": 0.0,
+ "recommendedQuantity": 1,
+ "totalCostWithReservedInstances": 0.0,
+ "netSavings": 7.2893157231780812,
+ "firstUsageDate": "2018-03-06T00:00:00Z",
+ "scope": "Single",
+ "skuProperties": [
+ {
+ "name": "SkuDisplayName",
+ "value": "B"
+ },
+ {
+ "name": "CPU",
+ "value": "1"
+ }
+ ],
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationRecommendations?api-version=2023-11-01&$filter=properties/scope+eq+'Single'+AND+properties/lookBackPeriod+eq+'Last7Days'&$skiptoken=AQAAAA%3D%3D&"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDaily.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDaily.json
new file mode 100644
index 000000000000..7ed58d258a55
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDaily.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "grain": "daily",
+ "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001",
+ "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_D8s_v3",
+ "kind": "Reservation",
+ "reservedHours": 0.0,
+ "usageDate": "2017-10-01T00:00:00Z",
+ "usedHours": 0.0,
+ "minUtilizationPercentage": 0.0,
+ "avgUtilizationPercentage": 0.0,
+ "maxUtilizationPercentage": 0.0,
+ "purchasedQuantity": 0,
+ "remainingQuantity": 0,
+ "totalReservedQuantity": 155,
+ "usedQuantity": 0,
+ "utilizedPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithBillingAccountId.json
new file mode 100644
index 000000000000..6cb8bccd0b58
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithBillingAccountId.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345",
+ "grain": "daily",
+ "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1",
+ "name": "reservationSummaries_Id1",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_B1s",
+ "reservedHours": 720,
+ "usageDate": "2018-09-01T00:00:00-07:00",
+ "usedHours": 0,
+ "minUtilizationPercentage": 0,
+ "avgUtilizationPercentage": 0,
+ "maxUtilizationPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithBillingProfileId.json
new file mode 100644
index 000000000000..8e3b86725b49
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithBillingProfileId.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579",
+ "grain": "daily",
+ "startDate": "2017-10-01",
+ "endDate": "2017-11-20"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1",
+ "name": "reservationSummaries_Id1",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_B1s",
+ "reservedHours": 720,
+ "usageDate": "2018-09-01T00:00:00-07:00",
+ "usedHours": 0,
+ "minUtilizationPercentage": 0,
+ "avgUtilizationPercentage": 0,
+ "maxUtilizationPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithReservationId.json
new file mode 100644
index 000000000000..7d46039ae0cd
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesDailyWithReservationId.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "grain": "daily",
+ "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001",
+ "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_D8s_v3",
+ "kind": "Reservation",
+ "reservedHours": 0.0,
+ "usageDate": "2017-10-01T00:00:00Z",
+ "usedHours": 0.0,
+ "minUtilizationPercentage": 0.0,
+ "avgUtilizationPercentage": 0.0,
+ "maxUtilizationPercentage": 0.0,
+ "purchasedQuantity": 0,
+ "remainingQuantity": 0,
+ "totalReservedQuantity": 155,
+ "usedQuantity": 0,
+ "utilizedPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthly.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthly.json
new file mode 100644
index 000000000000..86abd985eeee
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthly.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "grain": "monthly"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001",
+ "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_D8s_v3",
+ "kind": "Reservation",
+ "reservedHours": 0.0,
+ "usageDate": "2017-10-01T00:00:00Z",
+ "usedHours": 0.0,
+ "minUtilizationPercentage": 0.0,
+ "avgUtilizationPercentage": 0.0,
+ "maxUtilizationPercentage": 0.0,
+ "purchasedQuantity": 0,
+ "remainingQuantity": 0,
+ "totalReservedQuantity": 155,
+ "usedQuantity": 0,
+ "utilizedPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json
new file mode 100644
index 000000000000..dd89adedba3a
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingAccountId.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345",
+ "grain": "monthly"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1",
+ "name": "reservationSummaries_Id1",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_B1s",
+ "reservedHours": 720,
+ "usageDate": "2018-09-01T00:00:00-07:00",
+ "usedHours": 0,
+ "minUtilizationPercentage": 0,
+ "avgUtilizationPercentage": 0,
+ "maxUtilizationPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json
new file mode 100644
index 000000000000..95f11215993f
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingProfileId.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579",
+ "grain": "monthly"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1",
+ "name": "reservationSummaries_Id1",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_B1s",
+ "reservedHours": 720,
+ "usageDate": "2018-09-01T00:00:00-07:00",
+ "usedHours": 0,
+ "minUtilizationPercentage": 0,
+ "avgUtilizationPercentage": 0,
+ "maxUtilizationPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json
new file mode 100644
index 000000000000..29e65f839bdc
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "resourceScope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579",
+ "grain": "monthly",
+ "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b",
+ "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1",
+ "name": "reservationSummaries_Id1",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": null,
+ "properties": {
+ "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc",
+ "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b",
+ "skuName": "Standard_B1s",
+ "reservedHours": 720,
+ "usageDate": "2018-09-01T00:00:00-07:00",
+ "usedHours": 0,
+ "minUtilizationPercentage": 0,
+ "avgUtilizationPercentage": 0,
+ "maxUtilizationPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithReservationId.json
new file mode 100644
index 000000000000..5172094b5bc7
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationSummariesMonthlyWithReservationId.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "grain": "monthly"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "providers/Microsoft.Capacity/reservationOrders/00000000-0000-0000-0000-000000000000/reservations/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/reservationSummaries/20171001",
+ "name": "00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000_20171001",
+ "type": "Microsoft.Consumption/reservationSummaries",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "reservationId": "00000000-0000-0000-0000-000000000000",
+ "skuName": "Standard_D8s_v3",
+ "kind": "Reservation",
+ "reservedHours": 0.0,
+ "usageDate": "2017-10-01T00:00:00Z",
+ "usedHours": 0.0,
+ "minUtilizationPercentage": 0.0,
+ "avgUtilizationPercentage": 0.0,
+ "maxUtilizationPercentage": 0.0,
+ "purchasedQuantity": 0,
+ "remainingQuantity": 0,
+ "totalReservedQuantity": 155,
+ "usedQuantity": 0,
+ "utilizedPercentage": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationTransactionsListByBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationTransactionsListByBillingProfileId.json
new file mode 100644
index 000000000000..24b155775e2e
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationTransactionsListByBillingProfileId.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "$filter": "properties/eventDate+ge+2020-05-20+AND+properties/eventDate+le+2020-05-30",
+ "billingAccountId": "fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30",
+ "billingProfileId": "Z76D-SGAF-BG7-TGB"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/billingProfiles/Z76D-SGAF-BG7-TGB/providers/Microsoft.Consumption/reservationTransactions",
+ "name": "a838a8c3-a408-49e1-ac90-42cb95bff9b2",
+ "type": "Microsoft.Consumption/reservationTransactions",
+ "properties": {
+ "eventDate": "2020-04-25T21:21:38Z",
+ "reservationOrderId": "a838a8c3-a408-49e1-ac90-42cb95bff9b2",
+ "description": "Reserved VM Instance, Standard_B1ls, US East, 3 Years",
+ "eventType": "Purchase",
+ "quantity": 1,
+ "amount": 1.44,
+ "currency": "USD",
+ "reservationOrderName": "VM_RI_03-25-2020_14-18",
+ "armSkuName": "Standard_B1ls",
+ "billingFrequency": "Recurring",
+ "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/billingProfiles/Z76D-SGAF-BG7-TGB",
+ "billingProfileName": "IT Department*",
+ "invoice": "T000456437",
+ "invoiceId": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/billingProfiles/Z76D-SGAF-BG7-TGB/invoices/T000456437",
+ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/fcebaabc-fced-4284-a83d-79f83dee183c:45796ba8-988f-45ad-bea9-7b71fc6c7513_2018-09-30/invoiceSections/QBTB-EYAK-PJA-TGB",
+ "invoiceSectionName": "IT Department",
+ "purchasingSubscriptionGuid": "d924ad15-4a3d-4047-971d-c8b1b300a97b",
+ "purchasingSubscriptionName": "contoso",
+ "region": "eastus",
+ "term": "P3Y"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationTransactionsListByEnrollmentNumber.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationTransactionsListByEnrollmentNumber.json
new file mode 100644
index 000000000000..5701d0567836
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/ReservationTransactionsListByEnrollmentNumber.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "$filter": "properties/eventDate+ge+2020-05-20+AND+properties/eventDate+le+2020-05-30",
+ "useMarkupIfPartner": true,
+ "previewMarkupPercentage": 15.5,
+ "billingAccountId": "123456"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/billingAccounts/123456/providers/Microsoft.Consumption/reservationtransactions/201909091919",
+ "name": "201909091919",
+ "type": "Microsoft.Consumption/reservationTransactions",
+ "tags": [],
+ "properties": {
+ "eventDate": "2019-09-09T19:19:04Z",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "description": "Standard_DS1_v2 westus 1 Year",
+ "eventType": "Refund",
+ "quantity": 1,
+ "amount": -21.000000000000000,
+ "currency": "USD",
+ "reservationOrderName": "Transaction-DS1_v2",
+ "purchasingEnrollment": "123456",
+ "armSkuName": "Standard_DS1_v2",
+ "term": "P1Y",
+ "region": "westus",
+ "purchasingSubscriptionGuid": "a838a8c3-a408-49e1-ac90-42cb95bff9b2",
+ "purchasingSubscriptionName": "Infrastructure Subscription",
+ "accountName": "Microsoft Infrastructure",
+ "accountOwnerEmail": "admin@microsoft.com",
+ "departmentName": "Unassigned",
+ "costCenter": "",
+ "currentEnrollment": "123456",
+ "billingFrequency": "recurring",
+ "billingMonth": 20190901,
+ "monetaryCommitment": 523123.90,
+ "overage": 23234.49
+ }
+ },
+ {
+ "id": "/billingAccounts/123456/providers/Microsoft.Consumption/reservationtransactions/201909091919",
+ "name": "201909091919",
+ "type": "Microsoft.Consumption/reservationTransactions",
+ "tags": [],
+ "properties": {
+ "eventDate": "2019-09-09T19:19:04Z",
+ "reservationOrderId": "00000000-0000-0000-0000-000000000000",
+ "description": "Standard_DS1_v2 westus 1 Year",
+ "eventType": "Purchase",
+ "quantity": 1,
+ "amount": 21.000000000000000,
+ "currency": "USD",
+ "reservationOrderName": "Transaction-DS1_v2",
+ "purchasingEnrollment": "123456",
+ "armSkuName": "Standard_DS1_v2",
+ "term": "P1Y",
+ "region": "westus",
+ "purchasingSubscriptionGuid": "a838a8c3-a408-49e1-ac90-42cb95bff9b2",
+ "purchasingSubscriptionName": "Infrastructure Subscription",
+ "accountName": "Microsoft Infrastructure",
+ "accountOwnerEmail": "admin@microsoft.com",
+ "departmentName": "Unassigned",
+ "costCenter": "",
+ "currentEnrollment": "123456",
+ "billingFrequency": "recurring",
+ "billingMonth": 20190901,
+ "monetaryCommitment": 523123.90,
+ "overage": 23234.49
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/Tags.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/Tags.json
new file mode 100644
index 000000000000..1a3fc72be07c
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/Tags.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "billingAccountId": "12345",
+ "scope": "providers/Microsoft.CostManagement/billingAccounts/1234"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "providers/Microsoft.CostManagement/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/tags1",
+ "name": "tags1",
+ "type": "Microsoft.Consumption/tags",
+ "eTag": "\"1d34d012214157f\"",
+ "properties": {
+ "tags": [
+ {
+ "key": "Department"
+ },
+ {
+ "key": "CostCenter"
+ },
+ {
+ "key": "Portal"
+ },
+ {
+ "key": "OrgName"
+ },
+ {
+ "key": "Namespace"
+ },
+ {
+ "key": "resourceType"
+ },
+ {
+ "key": "Subsystem"
+ },
+ {
+ "key": "Environment"
+ },
+ {
+ "key": "clusterName"
+ }
+ ],
+ "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/?$expand=properties/tags/value&api-version=2023-11-01&startDate=2020-12-01&endDate=2020-12-31&$top=1000&$skiptoken=AwAAAA%3D%3D",
+ "previousLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingaccount-id}/providers/Microsoft.Consumption/tags/?$expand=properties/tags/value&api-version=2023-11-01&startDate=2020-12-01&endDate=2020-12-31&$top=1000&$skiptoken=AQAAAA%3D%3D"
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsExpand.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsExpand.json
new file mode 100644
index 000000000000..d4640a42d610
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsExpand.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "billingPeriodName": "201903",
+ "$expand": "meterDetails,additionalInfo",
+ "$filter": "tags eq 'dev:tools'",
+ "$top": 1
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": {
+ "meterName": "Data Transfer Out (GB)",
+ "meterCategory": "Networking",
+ "meterSubCategory": "ExpressRoute",
+ "unitOfMeasure": "GB",
+ "serviceFamily": "Compute"
+ },
+ "quantity": 0.8234,
+ "effectivePrice": 0.010464556322455,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.54,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "frequency": "UsageBased",
+ "additionalInfo": "{\"MyType\":\"\",\"ServiceType\":\"\",\"VMName\":\"\",\"UsageType\":\"MyUsage\"}",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsList.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsList.json
new file mode 100644
index 000000000000..286c4c9225fc
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsList.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Customer Name 1",
+ "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Customer Name 1",
+ "accountName": "AccountName",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "SubscriptionName 1",
+ "date": "2019-04-09T00:00:00.0000000Z",
+ "product": "Product1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.000036,
+ "effectivePrice": 0.054693034210767,
+ "cost": 0.000001980949998,
+ "unitPrice": 5.47,
+ "billingCurrency": "CAD",
+ "resourceLocation": "uswest",
+ "consumedService": "Microsoft.ClassicStorage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1",
+ "resourceName": "ResourceName1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "BAS",
+ "resourceGroup": "Resource-Group-westus",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "frequency": "UsageBased",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByBillingAccount.json
new file mode 100644
index 000000000000..3575b6a12be1
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByBillingAccount.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.7329,
+ "effectivePrice": 0.000402776395232,
+ "cost": 0.000295194820065,
+ "unitPrice": 4.38,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByDepartment.json
new file mode 100644
index 000000000000..4e676f1b297a
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByDepartment.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/Departments/1234",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/Departments/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.7329,
+ "effectivePrice": 0.000402776395232,
+ "cost": 0.000295194820065,
+ "unitPrice": 4.38,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByEnrollmentAccount.json
new file mode 100644
index 000000000000..3bfecef448be
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByEnrollmentAccount.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/EnrollmentAccounts/1234",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/EnrollmentAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.7329,
+ "effectivePrice": 0.000402776395232,
+ "cost": 0.000295194820065,
+ "unitPrice": 4.38,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCABillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCABillingAccount.json
new file mode 100644
index 000000000000..2d580cdf7f96
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCABillingAccount.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "modern",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "1234:56789",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-09-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z",
+ "billingProfileId": "2468",
+ "billingProfileName": "Account Name 1",
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-10-30T00:00:00.0000000Z",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "quantity": 0.7329,
+ "unitPrice": 4.38,
+ "billingCurrencyCode": "USD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "invoiceSectionId": "98765",
+ "invoiceSectionName": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}",
+ "costInBillingCurrency": 1.84763819095477,
+ "costInPricingCurrency": 1.84763819095477,
+ "exchangeRate": "1",
+ "exchangeRateDate": "2019-09-30T00:00:00Z",
+ "invoiceId": "",
+ "previousInvoiceId": "",
+ "pricingCurrencyCode": "USD",
+ "product": "Virtual Machines D Series - D1 - US East",
+ "productIdentifier": "DZH318Z0BQ4B00FV",
+ "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a",
+ "productOrderName": "Azure plan",
+ "publisherName": "Microsoft",
+ "publisherType": "Microsoft",
+ "resourceLocationNormalized": "US East",
+ "serviceInfo1": "",
+ "serviceInfo2": "Windows Client BYOL",
+ "servicePeriodEndDate": "2019-12-01T00:00:00Z",
+ "servicePeriodStartDate": "2019-09-01T00:00:00Z",
+ "customerTenantId": "00000000-0000-0000-0000-000000000000",
+ "customerName": "Modern Azure Customer 1",
+ "partnerTenantId": "00000000-0000-0000-0000-000000000000",
+ "partnerName": "Partner Name 1",
+ "resellerMpnId": "",
+ "resellerName": "Reseller Name 1",
+ "publisherId": "",
+ "reservationId": "",
+ "reservationName": "",
+ "frequency": "UsageBased",
+ "term": "",
+ "marketPrice": 0.077,
+ "costInUSD": 1.84763819095477,
+ "paygCostInBillingCurrency": 1.848,
+ "paygCostInUSD": 1.848,
+ "exchangeRatePricingToBilling": 0.077,
+ "partnerEarnedCreditRate": 0.077,
+ "partnerEarnedCreditApplied": "0",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCABillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCABillingProfile.json
new file mode 100644
index 000000000000..dc3fe1944576
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCABillingProfile.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2468"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/billingProfiles/2468/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "modern",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "1234:56789",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-09-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z",
+ "billingProfileId": "2468",
+ "billingProfileName": "Account Name 1",
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-10-30T00:00:00.0000000Z",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "quantity": 0.7329,
+ "unitPrice": 4.38,
+ "billingCurrencyCode": "USD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "invoiceSectionId": "98765",
+ "invoiceSectionName": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}",
+ "costInBillingCurrency": 1.84763819095477,
+ "costInPricingCurrency": 1.84763819095477,
+ "exchangeRate": "1",
+ "exchangeRateDate": "2019-09-30T00:00:00Z",
+ "invoiceId": "",
+ "previousInvoiceId": "",
+ "pricingCurrencyCode": "USD",
+ "product": "Virtual Machines D Series - D1 - US East",
+ "productIdentifier": "DZH318Z0BQ4B00FV",
+ "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a",
+ "productOrderName": "Azure plan",
+ "publisherName": "Microsoft",
+ "publisherType": "Microsoft",
+ "resourceLocationNormalized": "US East",
+ "serviceInfo1": "",
+ "serviceInfo2": "Windows Client BYOL",
+ "servicePeriodEndDate": "2019-12-01T00:00:00Z",
+ "servicePeriodStartDate": "2019-09-01T00:00:00Z",
+ "customerTenantId": "00000000-0000-0000-0000-000000000000",
+ "customerName": "Modern Azure Customer 1",
+ "partnerTenantId": "00000000-0000-0000-0000-000000000000",
+ "partnerName": "Partner Name 1",
+ "resellerMpnId": "",
+ "resellerName": "Reseller Name 1",
+ "publisherId": "",
+ "reservationId": "",
+ "reservationName": "",
+ "frequency": "UsageBased",
+ "term": "",
+ "marketPrice": 0.077,
+ "costInUSD": 1.84763819095477,
+ "paygCostInBillingCurrency": 1.848,
+ "paygCostInUSD": 1.848,
+ "exchangeRatePricingToBilling": 0.077,
+ "partnerEarnedCreditRate": 0.077,
+ "partnerEarnedCreditApplied": "0",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCACustomer.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCACustomer.json
new file mode 100644
index 000000000000..2eeaa67a73f1
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCACustomer.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/customers/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "modern",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "1234:56789",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-09-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z",
+ "billingProfileId": "2468",
+ "billingProfileName": "Account Name 1",
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-10-30T00:00:00.0000000Z",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "quantity": 0.7329,
+ "unitPrice": 4.38,
+ "billingCurrencyCode": "USD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "invoiceSectionId": "98765",
+ "invoiceSectionName": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}",
+ "costInBillingCurrency": 1.84763819095477,
+ "costInPricingCurrency": 1.84763819095477,
+ "exchangeRate": "1",
+ "exchangeRateDate": "2019-09-30T00:00:00Z",
+ "invoiceId": "",
+ "previousInvoiceId": "",
+ "pricingCurrencyCode": "USD",
+ "product": "Virtual Machines D Series - D1 - US East",
+ "productIdentifier": "DZH318Z0BQ4B00FV",
+ "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a",
+ "productOrderName": "Azure plan",
+ "publisherName": "Microsoft",
+ "publisherType": "Microsoft",
+ "resourceLocationNormalized": "US East",
+ "serviceInfo1": "",
+ "serviceInfo2": "Windows Client BYOL",
+ "servicePeriodEndDate": "2019-12-01T00:00:00Z",
+ "servicePeriodStartDate": "2019-09-01T00:00:00Z",
+ "customerTenantId": "00000000-0000-0000-0000-000000000000",
+ "customerName": "Modern Azure Customer 1",
+ "partnerTenantId": "00000000-0000-0000-0000-000000000000",
+ "partnerName": "Partner Name 1",
+ "resellerMpnId": "",
+ "resellerName": "Reseller Name 1",
+ "publisherId": "",
+ "reservationId": "",
+ "reservationName": "",
+ "frequency": "UsageBased",
+ "term": "",
+ "marketPrice": 0.077,
+ "costInUSD": 1.84763819095477,
+ "paygCostInBillingCurrency": 1.848,
+ "paygCostInUSD": 1.848,
+ "exchangeRatePricingToBilling": 0.077,
+ "partnerEarnedCreditRate": 0.077,
+ "partnerEarnedCreditApplied": "0",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCAInvoiceSection.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCAInvoiceSection.json
new file mode 100644
index 000000000000..e82af2771a94
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMCAInvoiceSection.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/98765"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234:56789/invoiceSections/98765/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "modern",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "1234:56789",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-09-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-10-31T00:00:00.0000000Z",
+ "billingProfileId": "2468",
+ "billingProfileName": "Account Name 1",
+ "subscriptionGuid": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-10-30T00:00:00.0000000Z",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "quantity": 0.7329,
+ "unitPrice": 4.38,
+ "billingCurrencyCode": "USD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "instanceName": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "invoiceSectionId": "98765",
+ "invoiceSectionName": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "additionalInfo": "{ \"UsageType\": \"ComputeHR\", \"ImageType\": \"Windows Client BYOL\", \"ServiceType\": \"Standard_D1\", \"VMName\": null, \"VMProperties\": null, \"VCPUs\": 1, \"CPUs\": 0}",
+ "costInBillingCurrency": 1.84763819095477,
+ "costInPricingCurrency": 1.84763819095477,
+ "exchangeRate": "1",
+ "exchangeRateDate": "2019-09-30T00:00:00Z",
+ "invoiceId": "",
+ "previousInvoiceId": "",
+ "pricingCurrencyCode": "USD",
+ "product": "Virtual Machines D Series - D1 - US East",
+ "productIdentifier": "DZH318Z0BQ4B00FV",
+ "productOrderId": "a3db7880-70eb-4b4c-6a79-1425a058df5a",
+ "productOrderName": "Azure plan",
+ "publisherName": "Microsoft",
+ "publisherType": "Microsoft",
+ "resourceLocationNormalized": "US East",
+ "serviceInfo1": "",
+ "serviceInfo2": "Windows Client BYOL",
+ "servicePeriodEndDate": "2019-12-01T00:00:00Z",
+ "servicePeriodStartDate": "2019-09-01T00:00:00Z",
+ "customerTenantId": "00000000-0000-0000-0000-000000000000",
+ "customerName": "Modern Azure Customer 1",
+ "partnerTenantId": "00000000-0000-0000-0000-000000000000",
+ "partnerName": "Partner Name 1",
+ "resellerMpnId": "",
+ "resellerName": "Reseller Name 1",
+ "publisherId": "",
+ "reservationId": "",
+ "reservationName": "",
+ "frequency": "UsageBased",
+ "term": "",
+ "marketPrice": 0.077,
+ "costInUSD": 1.84763819095477,
+ "paygCostInBillingCurrency": 1.848,
+ "paygCostInUSD": 1.848,
+ "exchangeRatePricingToBilling": 0.077,
+ "partnerEarnedCreditRate": 0.077,
+ "partnerEarnedCreditApplied": "0",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByManagementGroup.json
new file mode 100644
index 000000000000..4889d5b5f813
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByManagementGroup.json
@@ -0,0 +1,103 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest",
+ "billingPeriodName": "201903",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ },
+ {
+ "id": "/scope/providers/Microsoft.Billing/billingPeriods/20180801/providers/Microsoft.Consumption/usageDetails/usageDetails_Id2",
+ "name": "usageDetails_Id2",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 2",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 2",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 2",
+ "partNumber": "Part Number 2",
+ "meterId": "11111111-1111-1111-1111-111111111111",
+ "meterDetails": null,
+ "quantity": 0.7329,
+ "effectivePrice": 0.000402776395232,
+ "cost": 0.000295194820065,
+ "unitPrice": 4.38,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 2/providers/Microsoft.Storage/storageAccounts/Resource Name 2",
+ "resourceName": "Resource Name 2",
+ "invoiceSection": "Invoice Section 2",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 2",
+ "offerId": "Offer Id 2",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricActualCost.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricActualCost.json
new file mode 100644
index 000000000000..b53fe2f2df42
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricActualCost.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "metric": "actualcost",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Customer Name 1",
+ "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Customer Name 1",
+ "accountName": "AccountName",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "SubscriptionName 1",
+ "date": "2019-04-09T00:00:00.0000000Z",
+ "product": "Product1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.000036,
+ "effectivePrice": 0.054693055510767,
+ "cost": 0.000001968949998,
+ "unitPrice": 5.47,
+ "billingCurrency": "CAD",
+ "resourceLocation": "uswest",
+ "consumedService": "Microsoft.ClassicStorage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1",
+ "resourceName": "ResourceName1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "BAS",
+ "resourceGroup": "Resource-Group-westus",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricAmortizedCost.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricAmortizedCost.json
new file mode 100644
index 000000000000..920f080bac9a
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricAmortizedCost.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "metric": "amortizedcost",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Customer Name 1",
+ "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Customer Name 1",
+ "accountName": "AccountName",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "SubscriptionName 1",
+ "date": "2019-04-09T00:00:00.0000000Z",
+ "product": "Product1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.000036,
+ "effectivePrice": 0.054693055510767,
+ "cost": 0.000001968949998,
+ "unitPrice": 5.47,
+ "billingCurrency": "CAD",
+ "resourceLocation": "uswest",
+ "consumedService": "Microsoft.ClassicStorage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1",
+ "resourceName": "ResourceName1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "BAS",
+ "resourceGroup": "Resource-Group-westus",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "frequency": "UsageBased",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricUsage.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricUsage.json
new file mode 100644
index 000000000000..1338e52c46ac
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListByMetricUsage.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "metric": "usage",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Customer Name 1",
+ "billingPeriodStartDate": "2019-04-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-04-30T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Customer Name 1",
+ "accountName": "AccountName",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "SubscriptionName 1",
+ "date": "2019-04-09T00:00:00.0000000Z",
+ "product": "Product1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.000036,
+ "effectivePrice": 0.054693055510767,
+ "cost": 0.000001968949998,
+ "unitPrice": 5.47,
+ "billingCurrency": "CAD",
+ "resourceLocation": "uswest",
+ "consumedService": "Microsoft.ClassicStorage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource-Group-westus/providers/Microsoft.ClassicStorage/storageAccounts/ResourceName1",
+ "resourceName": "ResourceName1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "BAS",
+ "resourceGroup": "Resource-Group-westus",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListFilterByTag.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListFilterByTag.json
new file mode 100644
index 000000000000..4ac8dd37ff09
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListFilterByTag.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "$filter": "tags eq 'dev:tools'",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriod.json
new file mode 100644
index 000000000000..642deb0d9177
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriod.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json
new file mode 100644
index 000000000000..c3449e605724
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByBillingAccount.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/BillingAccounts/1234",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/BillingAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByDepartment.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByDepartment.json
new file mode 100644
index 000000000000..4f8fe791c9e6
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByDepartment.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/Departments/1234",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/Departments/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json
new file mode 100644
index 000000000000..99462432e9f3
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "scope": "providers/Microsoft.Billing/EnrollmentAccounts/1234",
+ "billingPeriodName": "201903"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Billing/EnrollmentAccounts/1234/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json
new file mode 100644
index 000000000000..b8819eaa9f8f
--- /dev/null
+++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-11-01/examples/UsageDetailsListForBillingPeriodByManagementGroup.json
@@ -0,0 +1,103 @@
+{
+ "parameters": {
+ "api-version": "2023-11-01",
+ "managementGroupId": "managementGroupForTest",
+ "billingPeriodName": "201903",
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201903/providers/Microsoft.Consumption/usageDetails/usageDetails_Id1",
+ "name": "usageDetails_Id1",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 1",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 1",
+ "accountName": "Account Name 1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 1",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 1",
+ "partNumber": "Part Number 1",
+ "meterId": "00000000-0000-0000-0000-000000000000",
+ "meterDetails": null,
+ "quantity": 0.8234,
+ "effectivePrice": 0.010534556373432,
+ "cost": 0.000342194841184,
+ "unitPrice": 3.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 1/providers/Microsoft.Storage/storageAccounts/Resource Name 1",
+ "resourceName": "Resource Name 1",
+ "invoiceSection": "Invoice Section 1",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 1",
+ "offerId": "Offer Id 1",
+ "isAzureCreditEligible": false,
+ "chargeType": "Usage",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ },
+ {
+ "id": "/scope/providers/Microsoft.Billing/billingPeriods/billingPeriodName/providers/Microsoft.Consumption/usageDetails/usageDetails_Id2",
+ "name": "usageDetails_Id2",
+ "type": "Microsoft.Consumption/usageDetails",
+ "kind": "legacy",
+ "tags": {
+ "env": "newcrp",
+ "dev": "tools"
+ },
+ "properties": {
+ "billingAccountId": "xxxxxxxx",
+ "billingAccountName": "Account Name 2",
+ "billingPeriodStartDate": "2019-03-01T00:00:00.0000000Z",
+ "billingPeriodEndDate": "2019-03-31T00:00:00.0000000Z",
+ "billingProfileId": "xxxxxxxx",
+ "billingProfileName": "Account Name 2",
+ "accountName": "Account Name 2",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionName": "Subscription Name 2",
+ "date": "2019-03-30T00:00:00.0000000Z",
+ "product": "Product Name 2",
+ "partNumber": "Part Number 2",
+ "meterId": "11111111-1111-1111-1111-111111111111",
+ "meterDetails": null,
+ "quantity": 0.4759,
+ "effectivePrice": 0.073488920944598,
+ "cost": 0.000821821271948,
+ "unitPrice": 5.74,
+ "billingCurrency": "CAD",
+ "resourceLocation": "USEast",
+ "consumedService": "Microsoft.Storage",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Resource Group 2/providers/Microsoft.Storage/storageAccounts/Resource Name 2",
+ "resourceName": "Resource Name 2",
+ "invoiceSection": "Invoice Section 2",
+ "costCenter": "DEV",
+ "resourceGroup": "Resource Group 2",
+ "offerId": "Offer Id 2",
+ "isAzureCreditEligible": false,
+ "chargeType": "UnusedReservation",
+ "benefitId": "00000000-0000-0000-0000-000000000000",
+ "benefitName": "Reservation_purchase_03-09-2018_10-59"
+ }
+ }
+ ]
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md
index 9e920f08c8dd..5d954355e88e 100644
--- a/specification/consumption/resource-manager/readme.md
+++ b/specification/consumption/resource-manager/readme.md
@@ -26,24 +26,34 @@ These are the global settings for the Consumption API.
``` yaml
openapi-type: arm
-tag: package-2023-05
+tag: package-2023-11
```
+### Tag: package-2023-11
+
+These settings apply only when `--tag=package-2023-11` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-11'
+input-file:
+ - Microsoft.Consumption/stable/2023-11-01/consumption.json
+ - Microsoft.Consumption/stable/2023-11-01/consumption_pricesheet.json
+```
### Tag: package-2023-05
These settings apply only when `--tag=package-2023-05` is specified on the command line.
-```yaml $(tag) == 'package-2023-05'
+``` yaml $(tag) == 'package-2023-05'
input-file:
- Microsoft.Consumption/stable/2023-05-01/consumption.json
- Microsoft.Consumption/stable/2023-05-01/consumption_pricesheet.json
```
+
### Tag: package-2023-03
These settings apply only when `--tag=package-2023-03` is specified on the command line.
-```yaml $(tag) == 'package-2023-03'
+``` yaml $(tag) == 'package-2023-03'
input-file:
- Microsoft.Consumption/stable/2023-03-01/consumption.json
- Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/containerregistry.json
new file mode 100644
index 000000000000..57b2ac4b9ba9
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/containerregistry.json
@@ -0,0 +1,8032 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-06-01-preview",
+ "title": "ContainerRegistryManagementClient"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives": {
+ "get": {
+ "tags": [
+ "Archives"
+ ],
+ "description": "Lists all archives for the specified container registry and package type.",
+ "operationId": "Archives_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ArchiveListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveList": {
+ "$ref": "./examples/ArchiveList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}": {
+ "get": {
+ "tags": [
+ "Archives"
+ ],
+ "description": "Gets the properties of the archive.",
+ "operationId": "Archives_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Archive"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveGet": {
+ "$ref": "./examples/ArchiveGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Archives"
+ ],
+ "description": "Creates a archive for a container registry with the specified parameters.",
+ "operationId": "Archives_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ },
+ {
+ "name": "archiveCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a archive.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Archive"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM update operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Archive"
+ }
+ },
+ "201": {
+ "description": "ARM create operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Archive"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveCreate": {
+ "$ref": "./examples/ArchiveCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Archives"
+ ],
+ "description": "Deletes a archive from a container registry.",
+ "operationId": "Archives_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The archive does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveDelete": {
+ "$ref": "./examples/ArchiveDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Archives"
+ ],
+ "description": "Updates a archive for a container registry with the specified parameters.",
+ "operationId": "Archives_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ },
+ {
+ "name": "archiveUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a archive.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ArchiveUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the operation has completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Archive"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveUpdate": {
+ "$ref": "./examples/ArchiveUpdate.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}/versions": {
+ "get": {
+ "tags": [
+ "ArchiveVersions"
+ ],
+ "description": "Lists all archive versions for the specified container registry, repository type and archive name.",
+ "operationId": "ArchiveVersions_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ArchiveVersionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveVersionList": {
+ "$ref": "./examples/ArchiveVersionList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/packages/{packageType}/archives/{archiveName}/versions/{archiveVersionName}": {
+ "get": {
+ "tags": [
+ "ArchiveVersions"
+ ],
+ "description": "Gets the properties of the archive version.",
+ "operationId": "ArchiveVersions_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveVersionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ArchiveVersion"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveVersionGet": {
+ "$ref": "./examples/ArchiveVersionGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ArchiveVersions"
+ ],
+ "description": "Creates a archive for a container registry with the specified parameters.",
+ "operationId": "ArchiveVersions_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveVersionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM update operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ArchiveVersion"
+ }
+ },
+ "201": {
+ "description": "ARM create operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ArchiveVersion"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveVersionCreate": {
+ "$ref": "./examples/ArchiveVersionCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ArchiveVersions"
+ ],
+ "description": "Deletes a archive version from a container registry.",
+ "operationId": "ArchiveVersions_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageTypeParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArchiveVersionNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The archive does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ArchiveVersionDelete": {
+ "$ref": "./examples/ArchiveVersionDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/cacheRules": {
+ "get": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Lists all cache rule resources for the specified container registry.",
+ "operationId": "CacheRules_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRulesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleList": {
+ "$ref": "./examples/CacheRuleList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/cacheRules/{cacheRuleName}": {
+ "get": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Gets the properties of the specified cache rule resource.",
+ "operationId": "CacheRules_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleGet": {
+ "$ref": "./examples/CacheRuleGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Creates a cache rule for a container registry with the specified parameters.",
+ "operationId": "CacheRules_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ },
+ {
+ "name": "cacheRuleCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a cache rule.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleCreate": {
+ "$ref": "./examples/CacheRuleCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Deletes a cache rule resource from a container registry.",
+ "operationId": "CacheRules_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The cache rule does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleDelete": {
+ "$ref": "./examples/CacheRuleDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Updates a cache rule for a container registry with the specified parameters.",
+ "operationId": "CacheRules_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ },
+ {
+ "name": "cacheRuleUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a cache rule.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CacheRuleUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleUpdate": {
+ "$ref": "./examples/CacheRuleUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/connectedRegistries": {
+ "get": {
+ "tags": [
+ "ConnectedRegistries"
+ ],
+ "description": "Lists all connected registries for the specified container registry.",
+ "operationId": "ConnectedRegistries_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectedRegistryFilterParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistryListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConnectedRegistryList": {
+ "$ref": "./examples/ConnectedRegistryList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/connectedRegistries/{connectedRegistryName}": {
+ "get": {
+ "tags": [
+ "ConnectedRegistries"
+ ],
+ "description": "Gets the properties of the connected registry.",
+ "operationId": "ConnectedRegistries_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectedRegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConnectedRegistryGet": {
+ "$ref": "./examples/ConnectedRegistryGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ConnectedRegistries"
+ ],
+ "description": "Creates a connected registry for a container registry with the specified parameters.",
+ "operationId": "ConnectedRegistries_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectedRegistryNameParameter"
+ },
+ {
+ "name": "connectedRegistryCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a connectedRegistry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConnectedRegistryCreate": {
+ "$ref": "./examples/ConnectedRegistryCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ConnectedRegistries"
+ ],
+ "description": "Deletes a connected registry from a container registry.",
+ "operationId": "ConnectedRegistries_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectedRegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The webhook does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConnectedRegistryDelete": {
+ "$ref": "./examples/ConnectedRegistryDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "ConnectedRegistries"
+ ],
+ "description": "Updates a connected registry with the specified parameters.",
+ "operationId": "ConnectedRegistries_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectedRegistryNameParameter"
+ },
+ {
+ "name": "connectedRegistryUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a connectedRegistry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistryUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConnectedRegistryUpdate": {
+ "$ref": "./examples/ConnectedRegistryUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/connectedRegistries/{connectedRegistryName}/deactivate": {
+ "post": {
+ "tags": [
+ "ConnectedRegistries"
+ ],
+ "description": "Deactivates the connected registry instance.",
+ "operationId": "ConnectedRegistries_Deactivate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectedRegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConnectedRegistryDeactivate": {
+ "$ref": "./examples/ConnectedRegistryDeactivate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/credentialSets": {
+ "get": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Lists all credential set resources for the specified container registry.",
+ "operationId": "CredentialSets_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSetListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetList": {
+ "$ref": "./examples/CredentialSetList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/credentialSets/{credentialSetName}": {
+ "get": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Gets the properties of the specified credential set resource.",
+ "operationId": "CredentialSets_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetGet": {
+ "$ref": "./examples/CredentialSetGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Creates a credential set for a container registry with the specified parameters.",
+ "operationId": "CredentialSets_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ },
+ {
+ "name": "credentialSetCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a credential set.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetCreate": {
+ "$ref": "./examples/CredentialSetCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Deletes a credential set from a container registry.",
+ "operationId": "CredentialSets_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The credential store resource does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetDelete": {
+ "$ref": "./examples/CredentialSetDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Updates a credential set for a container registry with the specified parameters.",
+ "operationId": "CredentialSets_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ },
+ {
+ "name": "credentialSetUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a credential set.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CredentialSetUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetUpdate": {
+ "$ref": "./examples/CredentialSetUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines": {
+ "get": {
+ "tags": [
+ "ExportPipelines"
+ ],
+ "description": "Lists all export pipelines for the specified container registry.",
+ "operationId": "ExportPipelines_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ExportPipelineListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ExportPipelineList": {
+ "$ref": "./examples/ExportPipelineList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines/{exportPipelineName}": {
+ "get": {
+ "tags": [
+ "ExportPipelines"
+ ],
+ "description": "Gets the properties of the export pipeline.",
+ "operationId": "ExportPipelines_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExportPipelineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ExportPipeline"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ExportPipelineGet": {
+ "$ref": "./examples/ExportPipelineGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ExportPipelines"
+ ],
+ "description": "Creates an export pipeline for a container registry with the specified parameters.",
+ "operationId": "ExportPipelines_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExportPipelineNameParameter"
+ },
+ {
+ "name": "exportPipelineCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating an export pipeline.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ExportPipeline"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the operation has completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ExportPipeline"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ExportPipeline"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ExportPipelineCreate": {
+ "$ref": "./examples/ExportPipelineCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ExportPipelines"
+ ],
+ "description": "Deletes an export pipeline from a container registry.",
+ "operationId": "ExportPipelines_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExportPipelineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The export pipeline does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ExportPipelineDelete": {
+ "$ref": "./examples/ExportPipelineDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Copies an image to this container registry from the specified container registry.",
+ "operationId": "Registries_ImportImage",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "description": "The parameters specifying the image to copy and the source container registry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImportImageParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the operation has completed successfully."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImportImageByTag": {
+ "$ref": "./examples/ImportImageByTag.json"
+ },
+ "ImportImageByManifestDigest": {
+ "$ref": "./examples/ImportImageByManifestDigest.json"
+ },
+ "ImportImageFromPublicRegistry": {
+ "$ref": "./examples/ImportImageFromPublicRegistry.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importPipelines": {
+ "get": {
+ "tags": [
+ "ImportPipelines"
+ ],
+ "description": "Lists all import pipelines for the specified container registry.",
+ "operationId": "ImportPipelines_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ImportPipelineListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImportPipelineList": {
+ "$ref": "./examples/ImportPipelineList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importPipelines/{importPipelineName}": {
+ "get": {
+ "tags": [
+ "ImportPipelines"
+ ],
+ "description": "Gets the properties of the import pipeline.",
+ "operationId": "ImportPipelines_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ImportPipelineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ImportPipeline"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImportPipelineGet": {
+ "$ref": "./examples/ImportPipelineGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ImportPipelines"
+ ],
+ "description": "Creates an import pipeline for a container registry with the specified parameters.",
+ "operationId": "ImportPipelines_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ImportPipelineNameParameter"
+ },
+ {
+ "name": "importPipelineCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating an import pipeline.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImportPipeline"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the operation has completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ImportPipeline"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ImportPipeline"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImportPipelineCreate": {
+ "$ref": "./examples/ImportPipelineCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ImportPipelines"
+ ],
+ "description": "Deletes an import pipeline from a container registry.",
+ "operationId": "ImportPipelines_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ImportPipelineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The import pipeline does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImportPipelineDelete": {
+ "$ref": "./examples/ImportPipelineDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/providers/Microsoft.ContainerRegistry/operations": {
+ "get": {
+ "tags": [
+ "Operation"
+ ],
+ "description": "Lists all of the available Azure Container Registry REST API operations.",
+ "operationId": "Operations_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "OperationList": {
+ "$ref": "./examples/OperationList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "Operation"
+ ],
+ "description": "Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length.",
+ "operationId": "Registries_CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "registryNameCheckRequest",
+ "in": "body",
+ "description": "The object containing information for the availability request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RegistryNameCheckRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/RegistryNameStatus"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryCheckNameAvailable": {
+ "$ref": "./examples/RegistryCheckNameAvailable.json"
+ },
+ "RegistryCheckNameNotAvailable": {
+ "$ref": "./examples/RegistryCheckNameNotAvailable.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/pipelineRuns": {
+ "get": {
+ "tags": [
+ "PipelineRuns"
+ ],
+ "description": "Lists all the pipeline runs for the specified container registry.",
+ "operationId": "PipelineRuns_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well - formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PipelineRunListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PipelineRunList": {
+ "$ref": "./examples/PipelineRunList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/pipelineRuns/{pipelineRunName}": {
+ "get": {
+ "tags": [
+ "PipelineRuns"
+ ],
+ "description": "Gets the detailed information for a given pipeline run.",
+ "operationId": "PipelineRuns_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PipelineRunNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well - formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PipelineRun"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PipelineRunGet": {
+ "$ref": "./examples/PipelineRunGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PipelineRuns"
+ ],
+ "description": "Creates a pipeline run for a container registry with the specified parameters",
+ "operationId": "PipelineRuns_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PipelineRunNameParameter"
+ },
+ {
+ "name": "pipelineRunCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a pipeline run.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PipelineRun"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well - formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PipelineRun"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/PipelineRun"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PipelineRunCreate_Export": {
+ "$ref": "./examples/PipelineRunCreate_Export.json"
+ },
+ "PipelineRunCreate_Import": {
+ "$ref": "./examples/PipelineRunCreate_Import.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "PipelineRuns"
+ ],
+ "description": "Deletes a pipeline run from a container registry.",
+ "operationId": "PipelineRuns_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PipelineRunNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The pipeline run does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PipelineRunDelete": {
+ "$ref": "./examples/PipelineRunDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "List all private endpoint connections in a container registry.",
+ "operationId": "PrivateEndpointConnections_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionList": {
+ "$ref": "./examples/PrivateEndpointConnectionList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Get the specified private endpoint connection associated with the container registry.",
+ "operationId": "PrivateEndpointConnections_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionGet": {
+ "$ref": "./examples/PrivateEndpointConnectionGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Update the state of specified private endpoint connection associated with the container registry.",
+ "operationId": "PrivateEndpointConnections_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ },
+ {
+ "name": "privateEndpointConnection",
+ "in": "body",
+ "description": "The parameters for creating a private endpoint connection.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionCreateOrUpdate": {
+ "$ref": "./examples/PrivateEndpointConnectionCreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Deletes the specified private endpoint connection associated with the container registry.",
+ "operationId": "PrivateEndpointConnections_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionDelete": {
+ "$ref": "./examples/PrivateEndpointConnectionDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists all the container registries under the specified subscription.",
+ "operationId": "Registries_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryList": {
+ "$ref": "./examples/RegistryList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists all the container registries under the specified resource group.",
+ "operationId": "Registries_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListByResourceGroup": {
+ "$ref": "./examples/RegistryListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Gets the properties of the specified container registry.",
+ "operationId": "Registries_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryGet": {
+ "$ref": "./examples/RegistryGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Creates a container registry with the specified parameters.",
+ "operationId": "Registries_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "name": "registry",
+ "in": "body",
+ "description": "The parameters for creating a container registry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryCreate": {
+ "$ref": "./examples/RegistryCreate.json"
+ },
+ "RegistryCreateZoneRedundant": {
+ "$ref": "./examples/RegistryCreateZoneRedundant.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Deletes a container registry.",
+ "operationId": "Registries_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The container registry does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "RegistryDelete": {
+ "$ref": "./examples/RegistryDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Updates a container registry with the specified parameters.",
+ "operationId": "Registries_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "name": "registryUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a container registry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RegistryUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryUpdate": {
+ "$ref": "./examples/RegistryUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Gets the quota usages for the specified container registry.",
+ "operationId": "Registries_ListUsages",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the registry usages retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/RegistryUsageListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListUsages": {
+ "$ref": "./examples/RegistryListUsages.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists the private link resources for a container registry.",
+ "operationId": "Registries_ListPrivateLinkResources",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the private link resources were retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListPrivateLinkResources": {
+ "$ref": "./examples/RegistryListPrivateLinkResources.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources/{groupName}": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Gets a private link resource by a specified group name for a container registry.",
+ "operationId": "Registries_GetPrivateLinkResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/GroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the private link resource was retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryGetPrivateLinkResource": {
+ "$ref": "./examples/RegistryGetPrivateLinkResource.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listCredentials": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists the login credentials for the specified container registry.",
+ "operationId": "Registries_ListCredentials",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the list of credentials retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListCredentialsResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListCredentials": {
+ "$ref": "./examples/RegistryListCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredential": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Regenerates one of the login credentials for the specified container registry.",
+ "operationId": "Registries_RegenerateCredential",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "name": "regenerateCredentialParameters",
+ "in": "body",
+ "description": "Specifies name of the password which should be regenerated -- password or password2.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RegenerateCredentialParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the specified credential regenerated successfully.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListCredentialsResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryRegenerateCredential": {
+ "$ref": "./examples/RegistryRegenerateCredential.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications": {
+ "get": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Lists all the replications for the specified container registry.",
+ "operationId": "Replications_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ReplicationListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationList": {
+ "$ref": "./examples/ReplicationList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": {
+ "get": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Gets the properties of the specified replication.",
+ "operationId": "Replications_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationGet": {
+ "$ref": "./examples/ReplicationGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Creates a replication for a container registry with the specified parameters.",
+ "operationId": "Replications_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ },
+ {
+ "name": "replication",
+ "in": "body",
+ "description": "The parameters for creating a replication.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationCreate": {
+ "$ref": "./examples/ReplicationCreate.json"
+ },
+ "ReplicationCreateZoneRedundant": {
+ "$ref": "./examples/ReplicationCreateZoneRedundant.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Deletes a replication from a container registry.",
+ "operationId": "Replications_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The replication does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationDelete": {
+ "$ref": "./examples/ReplicationDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Updates a replication for a container registry with the specified parameters.",
+ "operationId": "Replications_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ },
+ {
+ "name": "replicationUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a replication.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ReplicationUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationUpdate": {
+ "$ref": "./examples/ReplicationUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/scopeMaps": {
+ "get": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Lists all the scope maps for the specified container registry.",
+ "operationId": "ScopeMaps_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMapListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapList": {
+ "$ref": "./examples/ScopeMapList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/scopeMaps/{scopeMapName}": {
+ "get": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Gets the properties of the specified scope map.",
+ "operationId": "ScopeMaps_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapGet": {
+ "$ref": "./examples/ScopeMapGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Creates a scope map for a container registry with the specified parameters.",
+ "operationId": "ScopeMaps_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ },
+ {
+ "name": "scopeMapCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a scope map.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapCreate": {
+ "$ref": "./examples/ScopeMapCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Deletes a scope map from a container registry.",
+ "operationId": "ScopeMaps_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The scopemap does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapDelete": {
+ "$ref": "./examples/ScopeMapDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Updates a scope map with the specified parameters.",
+ "operationId": "ScopeMaps_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ },
+ {
+ "name": "scopeMapUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a scope map.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ScopeMapUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapUpdate": {
+ "$ref": "./examples/ScopeMapUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tokens": {
+ "get": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Lists all the tokens for the specified container registry.",
+ "operationId": "Tokens_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/TokenListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenList": {
+ "$ref": "./examples/TokenList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tokens/{tokenName}": {
+ "get": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Gets the properties of the specified token.",
+ "operationId": "Tokens_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenGet": {
+ "$ref": "./examples/TokenGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Creates a token for a container registry with the specified parameters.",
+ "operationId": "Tokens_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ },
+ {
+ "name": "tokenCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a token.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenCreate": {
+ "$ref": "./examples/TokenCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Deletes a token from a container registry.",
+ "operationId": "Tokens_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The token does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenDelete": {
+ "$ref": "./examples/TokenDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Updates a token with the specified parameters.",
+ "operationId": "Tokens_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ },
+ {
+ "name": "tokenUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a token.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TokenUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenUpdate": {
+ "$ref": "./examples/TokenUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/generateCredentials": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Generate keys for a token of a specified container registry.",
+ "operationId": "Registries_GenerateCredentials",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "name": "generateCredentialsParameters",
+ "in": "body",
+ "description": "The parameters for generating credentials.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/GenerateCredentialsParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/GenerateCredentialsResult"
+ }
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryGenerateCredentials": {
+ "$ref": "./examples/RegistryGenerateCredentials.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks": {
+ "get": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Lists all the webhooks for the specified container registry.",
+ "operationId": "Webhooks_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/WebhookListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookList": {
+ "$ref": "./examples/WebhookList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}": {
+ "get": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Gets the properties of the specified webhook.",
+ "operationId": "Webhooks_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookGet": {
+ "$ref": "./examples/WebhookGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Creates a webhook for a container registry with the specified parameters.",
+ "operationId": "Webhooks_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ },
+ {
+ "name": "webhookCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a webhook.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WebhookCreateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookCreate": {
+ "$ref": "./examples/WebhookCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Deletes a webhook from a container registry.",
+ "operationId": "Webhooks_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The webhook does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "WebhookDelete": {
+ "$ref": "./examples/WebhookDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Updates a webhook with the specified parameters.",
+ "operationId": "Webhooks_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ },
+ {
+ "name": "webhookUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a webhook.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WebhookUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookUpdate": {
+ "$ref": "./examples/WebhookUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/ping": {
+ "post": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Triggers a ping event to be sent to the webhook.",
+ "operationId": "Webhooks_Ping",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/EventInfo"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookPing": {
+ "$ref": "./examples/WebhookPing.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/listEvents": {
+ "post": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Lists recent events for the specified webhook.",
+ "operationId": "Webhooks_ListEvents",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/EventListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookListEvents": {
+ "$ref": "./examples/WebhookListEvents.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/getCallbackConfig": {
+ "post": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Gets the configuration of service URI and custom headers for the webhook.",
+ "operationId": "Webhooks_GetCallbackConfig",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v4/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CallbackConfig"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookGetCallbackConfig": {
+ "$ref": "./examples/WebhookGetCallbackConfig.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ArchiveListResult": {
+ "description": "The result of a request to list archives for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of archives. Since this list may be incomplete, the nextLink field should be used to request the next list of distributions.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Archive"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of archives.",
+ "type": "string"
+ }
+ }
+ },
+ "Archive": {
+ "description": "An object that represents a archive for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ArchiveProperties",
+ "description": "The properties of the archive.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ErrorResponse": {
+ "description": "An error response from the Azure Container Registry service.",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ErrorResponseBody",
+ "description": "Azure container registry build API error body."
+ }
+ }
+ },
+ "ArchiveProperties": {
+ "description": "The properties of a archive.",
+ "type": "object",
+ "properties": {
+ "packageSource": {
+ "$ref": "#/definitions/ArchivePackageSourceProperties",
+ "description": "The package source of the archive."
+ },
+ "publishedVersion": {
+ "description": "The published version of the archive.",
+ "type": "string"
+ },
+ "repositoryEndpointPrefix": {
+ "type": "string"
+ },
+ "repositoryEndpoint": {
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the archive at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ArchivePackageSourceProperties": {
+ "description": "The properties of the archive package source.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of package source for a archive.",
+ "enum": [
+ "remote"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PackageSourceType",
+ "modelAsString": true
+ }
+ },
+ "url": {
+ "description": "The external repository url.",
+ "type": "string"
+ }
+ }
+ },
+ "ArchiveUpdateParameters": {
+ "description": "The parameters for updating a archive.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ArchiveUpdateProperties",
+ "description": "The properties of the connected registry update parameters.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ArchiveUpdateProperties": {
+ "description": "The properties of a archive.",
+ "type": "object",
+ "properties": {
+ "publishedVersion": {
+ "description": "The published version of the archive.",
+ "type": "string"
+ }
+ }
+ },
+ "ArchiveVersionListResult": {
+ "description": "The result of a request to list export pipelines for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of export pipelines. Since this list may be incomplete, the nextLink field should be used to request the next list of export pipelines.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ArchiveVersion"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of pipeline runs.",
+ "type": "string"
+ }
+ }
+ },
+ "ArchiveVersion": {
+ "description": "An object that represents an export pipeline for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ArchiveVersionProperties",
+ "description": "The properties of the archive.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ArchiveVersionProperties": {
+ "description": "The properties of an export pipeline.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "The provisioning state of the archive at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "archiveVersionErrorMessage": {
+ "description": "The detailed error message for the archive version in the case of failure.",
+ "type": "string"
+ }
+ }
+ },
+ "CacheRulesListResult": {
+ "description": "The result of a request to list cache rules for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of cache rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "nextLink": {
+ "description": "If provided, client must use NextLink URI to request next list of cache rules.",
+ "type": "string"
+ }
+ }
+ },
+ "CacheRule": {
+ "description": "An object that represents a cache rule for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CacheRuleProperties",
+ "description": "The properties of the cache rule.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "CacheRuleProperties": {
+ "description": "The properties of a cache rule.",
+ "type": "object",
+ "properties": {
+ "credentialSetResourceId": {
+ "description": "The ARM resource ID of the credential store which is associated with the cache rule.",
+ "type": "string"
+ },
+ "sourceRepository": {
+ "description": "Source repository pulled from upstream.",
+ "type": "string"
+ },
+ "targetRepository": {
+ "description": "Target repository specified in docker pull command.\r\nEg: docker pull myregistry.azurecr.io/{targetRepository}:{tag}",
+ "type": "string"
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of the cache rule.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CacheRuleUpdateParameters": {
+ "description": "The parameters for updating a cache rule.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CacheRuleUpdateProperties",
+ "description": "The properties of the cache rule update parameters.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "CacheRuleUpdateProperties": {
+ "description": "The parameters for updating cache rule properties.",
+ "type": "object",
+ "properties": {
+ "credentialSetResourceId": {
+ "description": "The ARM resource ID of the credential store which is associated with the Cache rule.",
+ "type": "string"
+ }
+ }
+ },
+ "ConnectedRegistryListResult": {
+ "description": "The result of a request to list connected registries for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of connected registries. Since this list may be incomplete, the nextLink field should be used to request the next list of connected registries.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectedRegistry"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of connected registries.",
+ "type": "string"
+ }
+ }
+ },
+ "ConnectedRegistry": {
+ "description": "An object that represents a connected registry for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ConnectedRegistryProperties",
+ "description": "The properties of the connected registry.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ConnectedRegistryProperties": {
+ "description": "The properties of a connected registry.",
+ "required": [
+ "mode",
+ "parent"
+ ],
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "mode": {
+ "description": "The mode of the connected registry resource that indicates the permissions of the registry.",
+ "enum": [
+ "ReadWrite",
+ "ReadOnly",
+ "Registry",
+ "Mirror"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ConnectedRegistryMode",
+ "modelAsString": true
+ }
+ },
+ "version": {
+ "description": "The current version of ACR runtime on the connected registry.",
+ "type": "string",
+ "readOnly": true
+ },
+ "connectionState": {
+ "description": "The current connection state of the connected registry.",
+ "enum": [
+ "Online",
+ "Offline",
+ "Syncing",
+ "Unhealthy"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ConnectionState",
+ "modelAsString": true
+ }
+ },
+ "lastActivityTime": {
+ "format": "date-time",
+ "description": "The last activity time of the connected registry.",
+ "type": "string",
+ "readOnly": true
+ },
+ "activation": {
+ "$ref": "#/definitions/ActivationProperties",
+ "description": "The activation properties of the connected registry.",
+ "readOnly": true
+ },
+ "parent": {
+ "$ref": "#/definitions/ParentProperties",
+ "description": "The parent of the connected registry."
+ },
+ "clientTokenIds": {
+ "description": "The list of the ACR token resource IDs used to authenticate clients to the connected registry.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "loginServer": {
+ "$ref": "#/definitions/LoginServerProperties",
+ "description": "The login server properties of the connected registry."
+ },
+ "logging": {
+ "$ref": "#/definitions/LoggingProperties",
+ "description": "The logging properties of the connected registry."
+ },
+ "statusDetails": {
+ "description": "The list of current statuses of the connected registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusDetailProperties"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "correlationId"
+ ]
+ },
+ "notificationsList": {
+ "description": "The list of notifications subscription information for the connected registry.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ActivationProperties": {
+ "description": "The activation properties of the connected registry.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The activation status of the connected registry.",
+ "enum": [
+ "Active",
+ "Inactive"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ActivationStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ParentProperties": {
+ "description": "The properties of the connected registry parent.",
+ "required": [
+ "syncProperties"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The resource ID of the parent to which the connected registry will be associated.",
+ "type": "string"
+ },
+ "syncProperties": {
+ "$ref": "#/definitions/SyncProperties",
+ "description": "The sync properties of the connected registry with its parent."
+ }
+ }
+ },
+ "LoginServerProperties": {
+ "description": "The login server properties of the connected registry.",
+ "type": "object",
+ "properties": {
+ "host": {
+ "description": "The host of the connected registry. Can be FQDN or IP.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tls": {
+ "$ref": "#/definitions/TlsProperties",
+ "description": "The TLS properties of the connected registry login server.",
+ "readOnly": true
+ }
+ }
+ },
+ "LoggingProperties": {
+ "description": "The logging properties of the connected registry.",
+ "type": "object",
+ "properties": {
+ "logLevel": {
+ "description": "The verbosity of logs persisted on the connected registry.",
+ "default": "Information",
+ "enum": [
+ "Debug",
+ "Information",
+ "Warning",
+ "Error",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "LogLevel",
+ "modelAsString": true
+ }
+ },
+ "auditLogStatus": {
+ "description": "Indicates whether audit logs are enabled on the connected registry.",
+ "default": "Disabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AuditLogStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "StatusDetailProperties": {
+ "description": "The status detail properties of the connected registry.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The component of the connected registry corresponding to the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "code": {
+ "description": "The code of the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "The description of the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "timestamp": {
+ "format": "date-time",
+ "description": "The timestamp of the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "The correlation ID of the status.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SyncProperties": {
+ "description": "The sync properties of the connected registry with its parent.",
+ "required": [
+ "tokenId",
+ "messageTtl"
+ ],
+ "type": "object",
+ "properties": {
+ "tokenId": {
+ "description": "The resource ID of the ACR token used to authenticate the connected registry to its parent during sync.",
+ "type": "string"
+ },
+ "schedule": {
+ "description": "The cron expression indicating the schedule that the connected registry will sync with its parent.",
+ "type": "string"
+ },
+ "syncWindow": {
+ "format": "duration",
+ "description": "The time window during which sync is enabled for each schedule occurrence. Specify the duration using the format P[n]Y[n]M[n]DT[n]H[n]M[n]S as per ISO8601.",
+ "type": "string"
+ },
+ "messageTtl": {
+ "format": "duration",
+ "description": "The period of time for which a message is available to sync before it is expired. Specify the duration using the format P[n]Y[n]M[n]DT[n]H[n]M[n]S as per ISO8601.",
+ "type": "string"
+ },
+ "lastSyncTime": {
+ "format": "date-time",
+ "description": "The last time a sync occurred between the connected registry and its parent.",
+ "type": "string",
+ "readOnly": true
+ },
+ "gatewayEndpoint": {
+ "description": "The gateway endpoint used by the connected registry to communicate with its parent.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TlsProperties": {
+ "description": "The TLS properties of the connected registry login server.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "Indicates whether HTTPS is enabled for the login server.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "TlsStatus",
+ "modelAsString": true
+ }
+ },
+ "certificate": {
+ "$ref": "#/definitions/TlsCertificateProperties",
+ "description": "The certificate used to configure HTTPS for the login server.",
+ "readOnly": true
+ }
+ }
+ },
+ "TlsCertificateProperties": {
+ "description": "The TLS certificate properties of the connected registry login server.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of certificate location.",
+ "enum": [
+ "LocalDirectory"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "CertificateType",
+ "modelAsString": true
+ }
+ },
+ "location": {
+ "description": "Indicates the location of the certificates.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ConnectedRegistryUpdateParameters": {
+ "description": "The parameters for updating a connected registry.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ConnectedRegistryUpdateProperties",
+ "description": "The properties of the connected registry update parameters.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ConnectedRegistryUpdateProperties": {
+ "description": "The parameters for updating token properties.",
+ "type": "object",
+ "properties": {
+ "syncProperties": {
+ "$ref": "#/definitions/SyncUpdateProperties",
+ "description": "The sync properties of the connected registry with its parent."
+ },
+ "logging": {
+ "$ref": "#/definitions/LoggingProperties",
+ "description": "The logging properties of the connected registry."
+ },
+ "clientTokenIds": {
+ "description": "The list of the ACR token resource IDs used to authenticate clients to the connected registry.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "notificationsList": {
+ "description": "The list of notifications subscription information for the connected registry.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "SyncUpdateProperties": {
+ "description": "The parameters for updating the sync properties of the connected registry with its parent.",
+ "type": "object",
+ "properties": {
+ "schedule": {
+ "description": "The cron expression indicating the schedule that the connected registry will sync with its parent.",
+ "type": "string"
+ },
+ "syncWindow": {
+ "format": "duration",
+ "description": "The time window during which sync is enabled for each schedule occurrence. Specify the duration using the format P[n]Y[n]M[n]DT[n]H[n]M[n]S as per ISO8601.",
+ "type": "string"
+ },
+ "messageTtl": {
+ "format": "duration",
+ "description": "The period of time for which a message is available to sync before it is expired. Specify the duration using the format P[n]Y[n]M[n]DT[n]H[n]M[n]S as per ISO8601.",
+ "type": "string"
+ }
+ }
+ },
+ "CredentialSetListResult": {
+ "description": "The result of a request to list credential sets for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of credential sets. Since this list may be incomplete, the nextLink field should be used to request the next list of credential sets.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of credential sets.",
+ "type": "string"
+ }
+ }
+ },
+ "CredentialSet": {
+ "description": "An object that represents a credential set resource for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "Identities associated with the resource. This is used to access the KeyVault secrets."
+ },
+ "properties": {
+ "$ref": "#/definitions/CredentialSetProperties",
+ "description": "The properties of the credential set.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "IdentityProperties": {
+ "description": "Managed identity for the resource.",
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "description": "The principal ID of resource identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tenantId": {
+ "description": "The tenant ID of resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The identity type.",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "SystemAssigned, UserAssigned",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false
+ }
+ },
+ "userAssignedIdentities": {
+ "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/UserIdentityProperties"
+ }
+ }
+ }
+ },
+ "CredentialSetProperties": {
+ "description": "The properties of a credential set resource.",
+ "type": "object",
+ "properties": {
+ "loginServer": {
+ "description": "The credentials are stored for this upstream or login server.",
+ "type": "string"
+ },
+ "authCredentials": {
+ "description": "List of authentication credentials stored for an upstream.\r\nUsually consists of a primary and an optional secondary credential.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AuthCredential"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of credential store resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "UserIdentityProperties": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "description": "The principal id of user assigned identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "clientId": {
+ "description": "The client id of user assigned identity.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Resource": {
+ "description": "An Azure resource.",
+ "required": [
+ "location"
+ ],
+ "properties": {
+ "id": {
+ "description": "The resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "The location of the resource. This cannot be changed after the resource is created.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "tags": {
+ "description": "The tags of the resource.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "systemData": {
+ "$ref": "#/definitions/SystemData",
+ "description": "Metadata pertaining to creation and last modification of the resource.",
+ "type": "object",
+ "readOnly": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "AuthCredential": {
+ "description": "Authentication credential stored for an upstream.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the credential.",
+ "enum": [
+ "Credential1"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CredentialName",
+ "modelAsString": true
+ }
+ },
+ "usernameSecretIdentifier": {
+ "description": "KeyVault Secret URI for accessing the username.",
+ "type": "string"
+ },
+ "passwordSecretIdentifier": {
+ "description": "KeyVault Secret URI for accessing the password.",
+ "type": "string"
+ },
+ "credentialHealth": {
+ "$ref": "#/definitions/CredentialHealth",
+ "description": "This provides data pertaining to the health of the auth credential.",
+ "readOnly": true
+ }
+ }
+ },
+ "ProxyResource": {
+ "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags.",
+ "properties": {
+ "id": {
+ "description": "The resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "systemData": {
+ "$ref": "#/definitions/SystemData",
+ "description": "Metadata pertaining to creation and last modification of the resource.",
+ "type": "object",
+ "readOnly": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "CredentialHealth": {
+ "description": "The health of the auth credential.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The health status of credential.",
+ "enum": [
+ "Healthy",
+ "Unhealthy"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CredentialHealthStatus",
+ "modelAsString": true
+ }
+ },
+ "errorCode": {
+ "description": "Error code representing the health check error.",
+ "type": "string"
+ },
+ "errorMessage": {
+ "description": "Descriptive message representing the health check error.",
+ "type": "string"
+ }
+ }
+ },
+ "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
+ },
+ "DebianArchiveProperties": {
+ "description": "The properties of the Debian package Archive.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ArchiveProperties"
+ }
+ ],
+ "properties": {
+ "distributionName": {
+ "description": "Debian distribution Name.",
+ "type": "string"
+ }
+ }
+ },
+ "DebianArchivePackageSourceProperties": {
+ "description": "The properties of the archive package source.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ArchivePackageSourceProperties"
+ }
+ ],
+ "properties": {
+ "distributionName": {
+ "description": "Upstream Debian distribution Name.",
+ "type": "string"
+ }
+ }
+ },
+ "CredentialSetUpdateParameters": {
+ "description": "The parameters for updating a credential set",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CredentialSetUpdateProperties",
+ "description": "The properties of the credential set update parameters",
+ "x-ms-client-flatten": true
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "Identities associated with the resource. This is used to access the KeyVault secrets."
+ }
+ }
+ },
+ "CredentialSetUpdateProperties": {
+ "description": "The parameters for updating credential set properties.",
+ "type": "object",
+ "properties": {
+ "authCredentials": {
+ "description": "List of authentication credentials stored for an upstream.\r\nUsually consists of a primary and an optional secondary credential.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AuthCredential"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ExportPipelineListResult": {
+ "description": "The result of a request to list export pipelines for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of export pipelines. Since this list may be incomplete, the nextLink field should be used to request the next list of export pipelines.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ExportPipeline"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of pipeline runs.",
+ "type": "string"
+ }
+ }
+ },
+ "ExportPipeline": {
+ "description": "An object that represents an export pipeline for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "description": "The location of the export pipeline.",
+ "type": "string"
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "The identity of the export pipeline."
+ },
+ "properties": {
+ "$ref": "#/definitions/ExportPipelineProperties",
+ "description": "The properties of the export pipeline.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ExportPipelineProperties": {
+ "description": "The properties of an export pipeline.",
+ "required": [
+ "target"
+ ],
+ "type": "object",
+ "properties": {
+ "target": {
+ "$ref": "#/definitions/ExportPipelineTargetProperties",
+ "description": "The target properties of the export pipeline."
+ },
+ "options": {
+ "description": "The list of all options configured for the pipeline.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "OverwriteTags",
+ "OverwriteBlobs",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PipelineOptions",
+ "modelAsString": true
+ }
+ }
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the pipeline at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ExportPipelineTargetProperties": {
+ "description": "The properties of the export pipeline target.",
+ "required": [
+ "keyVaultUri"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of target for the export pipeline.",
+ "type": "string"
+ },
+ "uri": {
+ "description": "The target uri of the export pipeline.\r\nWhen 'AzureStorageBlob': \"https://accountName.blob.core.windows.net/containerName/blobName\"\r\nWhen 'AzureStorageBlobContainer': \"https://accountName.blob.core.windows.net/containerName\"",
+ "type": "string"
+ },
+ "keyVaultUri": {
+ "description": "They key vault secret uri to obtain the target storage SAS token.",
+ "type": "string"
+ }
+ }
+ },
+ "ImportImageParameters": {
+ "required": [
+ "source"
+ ],
+ "type": "object",
+ "properties": {
+ "source": {
+ "$ref": "#/definitions/ImportSource",
+ "description": "The source of the image."
+ },
+ "targetTags": {
+ "description": "List of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "untaggedTargetRepositories": {
+ "description": "List of strings of repository names to do a manifest only copy. No tag will be created.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "mode": {
+ "description": "When Force, any existing target tags will be overwritten. When NoForce, any existing target tags will fail the operation before any copying begins.",
+ "default": "NoForce",
+ "enum": [
+ "NoForce",
+ "Force"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ImportMode",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ImportSource": {
+ "required": [
+ "sourceImage"
+ ],
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "description": "The resource identifier of the source Azure Container Registry.",
+ "type": "string"
+ },
+ "registryUri": {
+ "description": "The address of the source registry (e.g. 'mcr.microsoft.com').",
+ "type": "string"
+ },
+ "credentials": {
+ "$ref": "#/definitions/ImportSourceCredentials",
+ "description": "Credentials used when importing from a registry uri."
+ },
+ "sourceImage": {
+ "description": "Repository name of the source image.\r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').",
+ "type": "string"
+ }
+ }
+ },
+ "ImportSourceCredentials": {
+ "required": [
+ "password"
+ ],
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username to authenticate with the source registry.",
+ "type": "string"
+ },
+ "password": {
+ "description": "The password used to authenticate with the source registry.",
+ "type": "string"
+ }
+ }
+ },
+ "ImportPipelineListResult": {
+ "description": "The result of a request to list import pipelines for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of import pipelines. Since this list may be incomplete, the nextLink field should be used to request the next list of import pipelines.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImportPipeline"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of pipeline runs.",
+ "type": "string"
+ }
+ }
+ },
+ "ImportPipeline": {
+ "description": "An object that represents an import pipeline for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "description": "The location of the import pipeline.",
+ "type": "string"
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "The identity of the import pipeline."
+ },
+ "properties": {
+ "$ref": "#/definitions/ImportPipelineProperties",
+ "description": "The properties of the import pipeline.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ImportPipelineProperties": {
+ "description": "The properties of an import pipeline.",
+ "required": [
+ "source"
+ ],
+ "type": "object",
+ "properties": {
+ "source": {
+ "$ref": "#/definitions/ImportPipelineSourceProperties",
+ "description": "The source properties of the import pipeline."
+ },
+ "trigger": {
+ "$ref": "#/definitions/PipelineTriggerProperties",
+ "description": "The properties that describe the trigger of the import pipeline."
+ },
+ "options": {
+ "description": "The list of all options configured for the pipeline.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "OverwriteTags",
+ "OverwriteBlobs",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PipelineOptions",
+ "modelAsString": true
+ }
+ }
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the pipeline at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ImportPipelineSourceProperties": {
+ "description": "The properties of the import pipeline source.",
+ "required": [
+ "keyVaultUri"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of source for the import pipeline.",
+ "default": "AzureStorageBlobContainer",
+ "enum": [
+ "AzureStorageBlobContainer"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PipelineSourceType",
+ "modelAsString": true
+ }
+ },
+ "uri": {
+ "description": "The source uri of the import pipeline.\r\nWhen 'AzureStorageBlob': \"https://accountName.blob.core.windows.net/containerName/blobName\"\r\nWhen 'AzureStorageBlobContainer': \"https://accountName.blob.core.windows.net/containerName\"",
+ "type": "string"
+ },
+ "keyVaultUri": {
+ "description": "They key vault secret uri to obtain the source storage SAS token.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineTriggerProperties": {
+ "type": "object",
+ "properties": {
+ "sourceTrigger": {
+ "$ref": "#/definitions/PipelineSourceTriggerProperties",
+ "description": "The source trigger properties of the pipeline."
+ }
+ }
+ },
+ "PipelineSourceTriggerProperties": {
+ "required": [
+ "status"
+ ],
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The current status of the source trigger.",
+ "default": "Enabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TriggerStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "OperationListResult": {
+ "description": "The result of a request to list container registry operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of container registry operations. Since this list may be incomplete, the nextLink field should be used to request the next list of operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of container registry operations.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDefinition": {
+ "description": "The definition of a container registry operation.",
+ "type": "object",
+ "properties": {
+ "origin": {
+ "description": "The origin information of the container registry operation.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}.",
+ "type": "string"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplayDefinition",
+ "description": "The display information for the container registry operation."
+ },
+ "properties": {
+ "$ref": "#/definitions/OperationPropertiesDefinition",
+ "description": "The properties information for the container registry operation.",
+ "x-ms-client-flatten": true
+ },
+ "isDataAction": {
+ "description": "This property indicates if the operation is an action or a data action\r\nref: https://docs.microsoft.com/en-us/azure/role-based-access-control/role-definitions#management-and-data-operations",
+ "type": "boolean"
+ }
+ }
+ },
+ "OperationDisplayDefinition": {
+ "description": "The display information for a container registry operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "The resource provider name: Microsoft.ContainerRegistry.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "The resource on which the operation is performed.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "The operation that users can perform.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description for the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationPropertiesDefinition": {
+ "description": "The definition of Azure Monitoring properties.",
+ "type": "object",
+ "properties": {
+ "serviceSpecification": {
+ "$ref": "#/definitions/OperationServiceSpecificationDefinition",
+ "description": "The definition of Azure Monitoring service."
+ }
+ }
+ },
+ "OperationServiceSpecificationDefinition": {
+ "description": "The definition of Azure Monitoring list.",
+ "type": "object",
+ "properties": {
+ "metricSpecifications": {
+ "description": "A list of Azure Monitoring metrics definition.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationMetricSpecificationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "logSpecifications": {
+ "description": "A list of Azure Monitoring log definitions.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationLogSpecificationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "OperationMetricSpecificationDefinition": {
+ "description": "The definition of Azure Monitoring metric.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Metric name.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Metric display name.",
+ "type": "string"
+ },
+ "displayDescription": {
+ "description": "Metric description.",
+ "type": "string"
+ },
+ "unit": {
+ "description": "Metric unit.",
+ "type": "string"
+ },
+ "aggregationType": {
+ "description": "Metric aggregation type.",
+ "type": "string"
+ },
+ "internalMetricName": {
+ "description": "Internal metric name.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationLogSpecificationDefinition": {
+ "description": "The definition of Azure Monitoring log.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Log name.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Log display name.",
+ "type": "string"
+ },
+ "blobDuration": {
+ "description": "Log blob duration.",
+ "type": "string"
+ }
+ }
+ },
+ "RegistryNameCheckRequest": {
+ "description": "A request to check whether a container registry name is available.",
+ "required": [
+ "name",
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the container registry.",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "type": "string"
+ },
+ "type": {
+ "description": "The resource type of the container registry. This field must be set to 'Microsoft.ContainerRegistry/registries'.",
+ "enum": [
+ "Microsoft.ContainerRegistry/registries"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ContainerRegistryResourceType",
+ "modelAsString": false
+ }
+ }
+ }
+ },
+ "RegistryNameStatus": {
+ "description": "The result of a request to check the availability of a container registry name.",
+ "type": "object",
+ "properties": {
+ "nameAvailable": {
+ "description": "The value that indicates whether the name is available.",
+ "type": "boolean"
+ },
+ "reason": {
+ "description": "If any, the reason that the name is not available.",
+ "type": "string"
+ },
+ "message": {
+ "description": "If any, the error message that provides more detail for the reason that the name is not available.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineRunListResult": {
+ "description": "The result of a request to list pipeline runs for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of pipeline runs. Since this list may be incomplete, the nextLink field should be used to request the next list of pipeline runs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PipelineRun"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of pipeline runs.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineRun": {
+ "description": "An object that represents a pipeline run for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PipelineRunProperties",
+ "description": "The properties of a pipeline run.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PipelineRunProperties": {
+ "description": "The properties of a pipeline run.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "The provisioning state of a pipeline run.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "request": {
+ "$ref": "#/definitions/PipelineRunRequest",
+ "description": "The request parameters for a pipeline run."
+ },
+ "response": {
+ "$ref": "#/definitions/PipelineRunResponse",
+ "description": "The response of a pipeline run.",
+ "readOnly": true
+ },
+ "forceUpdateTag": {
+ "description": "How the pipeline run should be forced to recreate even if the pipeline run configuration has not changed.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineRunRequest": {
+ "description": "The request properties provided for a pipeline run.",
+ "type": "object",
+ "properties": {
+ "pipelineResourceId": {
+ "description": "The resource ID of the pipeline to run.",
+ "type": "string"
+ },
+ "artifacts": {
+ "description": "List of source artifacts to be transferred by the pipeline. \r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "source": {
+ "$ref": "#/definitions/PipelineRunSourceProperties",
+ "description": "The source properties of the pipeline run."
+ },
+ "target": {
+ "$ref": "#/definitions/PipelineRunTargetProperties",
+ "description": "The target properties of the pipeline run."
+ },
+ "catalogDigest": {
+ "description": "The digest of the tar used to transfer the artifacts.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineRunResponse": {
+ "description": "The response properties returned for a pipeline run.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The current status of the pipeline run.",
+ "type": "string"
+ },
+ "importedArtifacts": {
+ "description": "The artifacts imported in the pipeline run.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "progress": {
+ "$ref": "#/definitions/ProgressProperties",
+ "description": "The current progress of the copy operation."
+ },
+ "startTime": {
+ "format": "date-time",
+ "description": "The time the pipeline run started.",
+ "type": "string"
+ },
+ "finishTime": {
+ "format": "date-time",
+ "description": "The time the pipeline run finished.",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "#/definitions/ImportPipelineSourceProperties",
+ "description": "The source of the pipeline run."
+ },
+ "target": {
+ "$ref": "#/definitions/ExportPipelineTargetProperties",
+ "description": "The target of the pipeline run."
+ },
+ "catalogDigest": {
+ "description": "The digest of the tar used to transfer the artifacts.",
+ "type": "string"
+ },
+ "trigger": {
+ "$ref": "#/definitions/PipelineTriggerDescriptor",
+ "description": "The trigger that caused the pipeline run."
+ },
+ "pipelineRunErrorMessage": {
+ "description": "The detailed error message for the pipeline run in the case of failure.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineRunSourceProperties": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of the source.",
+ "default": "AzureStorageBlob",
+ "enum": [
+ "AzureStorageBlob"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PipelineRunSourceType",
+ "modelAsString": true
+ }
+ },
+ "name": {
+ "description": "The name of the source.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineRunTargetProperties": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of the target.",
+ "default": "AzureStorageBlob",
+ "enum": [
+ "AzureStorageBlob"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PipelineRunTargetType",
+ "modelAsString": true
+ }
+ },
+ "name": {
+ "description": "The name of the target.",
+ "type": "string"
+ }
+ }
+ },
+ "ProgressProperties": {
+ "type": "object",
+ "properties": {
+ "percentage": {
+ "description": "The percentage complete of the copy operation.",
+ "type": "string"
+ }
+ }
+ },
+ "PipelineTriggerDescriptor": {
+ "type": "object",
+ "properties": {
+ "sourceTrigger": {
+ "$ref": "#/definitions/PipelineSourceTriggerDescriptor",
+ "description": "The source trigger that caused the pipeline run."
+ }
+ }
+ },
+ "PipelineSourceTriggerDescriptor": {
+ "type": "object",
+ "properties": {
+ "timestamp": {
+ "format": "date-time",
+ "description": "The timestamp when the source update happened.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateEndpointConnectionListResult": {
+ "description": "The result of a request to list private endpoint connections for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of private endpoint connections. Since this list may be incomplete, the nextLink field should be used to request the next list of private endpoint connections.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of private endpoint connections.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "description": "An object that represents a private endpoint connection for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "description": "The properties of a private endpoint connection.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PrivateEndpointConnectionProperties": {
+ "description": "The properties of a private endpoint connection.",
+ "type": "object",
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The resource of private endpoint."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ },
+ "provisioningState": {
+ "description": "The provisioning state of private endpoint connection resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "PrivateEndpoint": {
+ "description": "The Private Endpoint resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "This is private endpoint resource created with Microsoft.Network resource provider.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "description": "The state of a private link service connection.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The private link service connection status.",
+ "enum": [
+ "Approved",
+ "Pending",
+ "Rejected",
+ "Disconnected"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "description": "The description for connection status. For example if connection is rejected it can indicate reason for rejection.",
+ "type": "string"
+ },
+ "actionsRequired": {
+ "description": "A message indicating if changes on the service provider require any updates on the consumer.",
+ "enum": [
+ "None",
+ "Recreate"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ActionsRequired",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RegistryListResult": {
+ "description": "The result of a request to list container registries.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of container registries. Since this list may be incomplete, the nextLink field should be used to request the next list of container registries.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Registry"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of container registries.",
+ "type": "string"
+ }
+ }
+ },
+ "Registry": {
+ "description": "An object that represents a container registry.",
+ "required": [
+ "sku"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "The SKU of the container registry."
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "The identity of the container registry."
+ },
+ "properties": {
+ "$ref": "#/definitions/RegistryProperties",
+ "description": "The properties of the container registry.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "Sku": {
+ "description": "The SKU of a container registry.",
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The SKU name of the container registry. Required for registry creation.",
+ "enum": [
+ "Classic",
+ "Basic",
+ "Standard",
+ "Premium"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "SkuName",
+ "modelAsString": true
+ }
+ },
+ "tier": {
+ "description": "The SKU tier based on the SKU name.",
+ "enum": [
+ "Classic",
+ "Basic",
+ "Standard",
+ "Premium"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "SkuTier",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RegistryProperties": {
+ "description": "The properties of a container registry.",
+ "type": "object",
+ "properties": {
+ "loginServer": {
+ "description": "The URL that can be used to log into the container registry.",
+ "type": "string",
+ "readOnly": true
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of the container registry in ISO8601 format.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the container registry at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/Status",
+ "description": "The status of the container registry at the time the operation was called.",
+ "readOnly": true
+ },
+ "adminUserEnabled": {
+ "description": "The value that indicates whether the admin user is enabled.",
+ "default": false,
+ "type": "boolean"
+ },
+ "networkRuleSet": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "The network rule set for a container registry."
+ },
+ "policies": {
+ "$ref": "#/definitions/Policies",
+ "description": "The policies for a container registry."
+ },
+ "encryption": {
+ "$ref": "#/definitions/EncryptionProperty",
+ "description": "The encryption settings of container registry."
+ },
+ "dataEndpointEnabled": {
+ "description": "Enable a single data endpoint per region for serving data.",
+ "type": "boolean"
+ },
+ "dataEndpointHostNames": {
+ "description": "List of host names that will serve data when dataEndpointEnabled is true.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "privateEndpointConnections": {
+ "description": "List of private endpoint connections for a container registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "readOnly": true
+ },
+ "publicNetworkAccess": {
+ "description": "Whether or not public network access is allowed for the container registry.",
+ "default": "Enabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "networkRuleBypassOptions": {
+ "description": "Whether to allow trusted Azure services to access a network restricted registry.",
+ "default": "AzureServices",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "zoneRedundancy": {
+ "description": "Whether or not zone redundancy is enabled for this container registry",
+ "default": "Disabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ZoneRedundancy",
+ "modelAsString": true
+ }
+ },
+ "anonymousPullEnabled": {
+ "description": "Enables registry-wide pull from unauthenticated clients.",
+ "default": false,
+ "type": "boolean"
+ }
+ }
+ },
+ "Status": {
+ "description": "The status of an Azure resource at the time the operation was called.",
+ "type": "object",
+ "properties": {
+ "displayStatus": {
+ "description": "The short label for the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "The detailed message for the status, including alerts and error messages.",
+ "type": "string",
+ "readOnly": true
+ },
+ "timestamp": {
+ "format": "date-time",
+ "description": "The timestamp when the status was changed to the current value.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageAccountProperties": {
+ "description": "The properties of a storage account for a container registry. Only applicable to Classic SKU.",
+ "required": [
+ "id"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The resource ID of the storage account.",
+ "type": "string"
+ }
+ }
+ },
+ "NetworkRuleSet": {
+ "description": "The network rule set for a container registry.",
+ "required": [
+ "defaultAction"
+ ],
+ "type": "object",
+ "properties": {
+ "defaultAction": {
+ "description": "The default action of allow or deny when no other rules match.",
+ "default": "Allow",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DefaultAction",
+ "modelAsString": true
+ }
+ },
+ "ipRules": {
+ "description": "The IP ACL rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IPRule"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "Policies": {
+ "description": "The policies for a container registry.",
+ "type": "object",
+ "properties": {
+ "quarantinePolicy": {
+ "$ref": "#/definitions/QuarantinePolicy",
+ "description": "The quarantine policy for a container registry."
+ },
+ "trustPolicy": {
+ "$ref": "#/definitions/TrustPolicy",
+ "description": "The content trust policy for a container registry."
+ },
+ "retentionPolicy": {
+ "$ref": "#/definitions/RetentionPolicy",
+ "description": "The retention policy for a container registry."
+ },
+ "exportPolicy": {
+ "$ref": "#/definitions/ExportPolicy",
+ "description": "The export policy for a container registry."
+ },
+ "azureADAuthenticationAsArmPolicy": {
+ "$ref": "#/definitions/AzureADAuthenticationAsArmPolicy",
+ "description": "The policy for using ARM audience token for a container registry."
+ },
+ "softDeletePolicy": {
+ "$ref": "#/definitions/SoftDeletePolicy",
+ "description": "The soft delete policy for a container registry."
+ }
+ }
+ },
+ "EncryptionProperty": {
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "Indicates whether or not the encryption is enabled for container registry.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "EncryptionStatus",
+ "modelAsString": true
+ }
+ },
+ "keyVaultProperties": {
+ "$ref": "#/definitions/KeyVaultProperties",
+ "description": "Key vault properties."
+ }
+ }
+ },
+ "PackageType": {
+ "description": "The properties of a package type.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the package type.",
+ "type": "string"
+ },
+ "endpoint": {
+ "description": "The endpoint of the package type.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "IPRule": {
+ "description": "IP rule with specific IP or IP range in CIDR format.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "action": {
+ "description": "The action of IP ACL rule.",
+ "default": "Allow",
+ "enum": [
+ "Allow"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Action",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed.",
+ "type": "string",
+ "x-ms-client-name": "IPAddressOrRange"
+ }
+ }
+ },
+ "QuarantinePolicy": {
+ "description": "The quarantine policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "TrustPolicy": {
+ "description": "The content trust policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of trust policy.",
+ "default": "Notary",
+ "enum": [
+ "Notary"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TrustPolicyType",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RetentionPolicy": {
+ "description": "The retention policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "days": {
+ "format": "int32",
+ "description": "The number of days to retain an untagged manifest after which it gets purged.",
+ "default": 7,
+ "type": "integer"
+ },
+ "lastUpdatedTime": {
+ "format": "date-time",
+ "description": "The timestamp when the policy was last updated.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ExportPolicy": {
+ "description": "The export policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "enabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ExportPolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "AzureADAuthenticationAsArmPolicy": {
+ "description": "The policy for using ARM audience token for a container registry.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "enabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AzureADAuthenticationAsArmPolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "SoftDeletePolicy": {
+ "description": "The soft delete policy for a container registry",
+ "type": "object",
+ "properties": {
+ "retentionDays": {
+ "format": "int32",
+ "description": "The number of days after which a soft-deleted item is permanently deleted.",
+ "default": 7,
+ "type": "integer"
+ },
+ "lastUpdatedTime": {
+ "format": "date-time",
+ "description": "The timestamp when the policy was last updated.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "KeyVaultProperties": {
+ "type": "object",
+ "properties": {
+ "keyIdentifier": {
+ "description": "Key vault uri to access the encryption key.",
+ "type": "string"
+ },
+ "versionedKeyIdentifier": {
+ "description": "The fully qualified key identifier that includes the version of the key that is actually used for encryption.",
+ "type": "string",
+ "readOnly": true
+ },
+ "identity": {
+ "description": "The client id of the identity which will be used to access key vault.",
+ "type": "string"
+ },
+ "keyRotationEnabled": {
+ "description": "Auto key rotation status for a CMK enabled registry.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "lastKeyRotationTimestamp": {
+ "format": "date-time",
+ "description": "Timestamp of the last successful key rotation.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RegistryUpdateParameters": {
+ "description": "The parameters for updating a container registry.",
+ "type": "object",
+ "properties": {
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "The identity of the container registry."
+ },
+ "tags": {
+ "description": "The tags for the container registry.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "The SKU of the container registry."
+ },
+ "properties": {
+ "$ref": "#/definitions/RegistryPropertiesUpdateParameters",
+ "description": "The properties that the container registry will be updated with.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RegistryPropertiesUpdateParameters": {
+ "description": "The parameters for updating the properties of a container registry.",
+ "type": "object",
+ "properties": {
+ "adminUserEnabled": {
+ "description": "The value that indicates whether the admin user is enabled.",
+ "type": "boolean"
+ },
+ "networkRuleSet": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "The network rule set for a container registry."
+ },
+ "policies": {
+ "$ref": "#/definitions/Policies",
+ "description": "The policies for a container registry."
+ },
+ "encryption": {
+ "$ref": "#/definitions/EncryptionProperty",
+ "description": "The encryption settings of container registry."
+ },
+ "dataEndpointEnabled": {
+ "description": "Enable a single data endpoint per region for serving data.",
+ "type": "boolean"
+ },
+ "publicNetworkAccess": {
+ "description": "Whether or not public network access is allowed for the container registry.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "networkRuleBypassOptions": {
+ "description": "Whether to allow trusted Azure services to access a network restricted registry.",
+ "default": "AzureServices",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "anonymousPullEnabled": {
+ "description": "Enables registry-wide pull from unauthenticated clients.",
+ "type": "boolean"
+ }
+ }
+ },
+ "RegistryUsageListResult": {
+ "description": "The result of a request to get container registry quota usages.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of container registry quota usages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryUsage"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "RegistryUsage": {
+ "description": "The quota usage for a container registry.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the usage.",
+ "type": "string"
+ },
+ "limit": {
+ "format": "int64",
+ "description": "The limit of the usage.",
+ "type": "integer"
+ },
+ "currentValue": {
+ "format": "int64",
+ "description": "The current value of the usage.",
+ "type": "integer"
+ },
+ "unit": {
+ "description": "The unit of measurement.",
+ "enum": [
+ "Count",
+ "Bytes"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RegistryUsageUnit",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "PrivateLinkResourceListResult": {
+ "description": "The result of a request to list private link resources for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of private link resources. Since this list may be incomplete, the nextLink field should be used to request the next list of private link resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of private link resources.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkResource": {
+ "description": "A resource that supports private link capabilities.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The resource type is private link resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The resource ID.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "A resource that supports private link capabilities.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PrivateLinkResourceProperties": {
+ "description": "The properties of a private link resource.",
+ "type": "object",
+ "properties": {
+ "groupId": {
+ "description": "The private link resource group id.",
+ "type": "string"
+ },
+ "requiredMembers": {
+ "description": "The private link resource required member names.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "requiredZoneNames": {
+ "description": "The private link resource Private link DNS zone name.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "RegistryListCredentialsResult": {
+ "description": "The response from the ListCredentials operation.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username for a container registry.",
+ "type": "string"
+ },
+ "passwords": {
+ "description": "The list of passwords for a container registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryPassword"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "RegistryPassword": {
+ "description": "The login password for the container registry.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The password name.",
+ "enum": [
+ "password",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PasswordName",
+ "modelAsString": false
+ }
+ },
+ "value": {
+ "description": "The password value.",
+ "type": "string"
+ }
+ }
+ },
+ "RegenerateCredentialParameters": {
+ "description": "The parameters used to regenerate the login credential.",
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Specifies name of the password which should be regenerated -- password or password2.",
+ "enum": [
+ "password",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PasswordName",
+ "modelAsString": false
+ }
+ }
+ }
+ },
+ "ReplicationListResult": {
+ "description": "The result of a request to list replications for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of replications. Since this list may be incomplete, the nextLink field should be used to request the next list of replications.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Replication"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of replications.",
+ "type": "string"
+ }
+ }
+ },
+ "Replication": {
+ "description": "An object that represents a replication for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ReplicationProperties",
+ "description": "The properties of the replication.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ReplicationProperties": {
+ "description": "The properties of a replication.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "The provisioning state of the replication at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/Status",
+ "description": "The status of the replication at the time the operation was called.",
+ "readOnly": true
+ },
+ "regionEndpointEnabled": {
+ "description": "Specifies whether the replication's regional endpoint is enabled. Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue to be synced with other replications.",
+ "default": true,
+ "type": "boolean"
+ },
+ "zoneRedundancy": {
+ "description": "Whether or not zone redundancy is enabled for this container registry replication",
+ "default": "Disabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ZoneRedundancy",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ReplicationUpdateParameters": {
+ "description": "The parameters for updating a replication.",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "The tags for the replication.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/ReplicationUpdateParametersProperties",
+ "description": "The parameters for updating a replication's properties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ReplicationUpdateParametersProperties": {
+ "type": "object",
+ "properties": {
+ "regionEndpointEnabled": {
+ "description": "Specifies whether the replication's regional endpoint is enabled. Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue to be synced with other replications.",
+ "type": "boolean"
+ }
+ }
+ },
+ "ScopeMapListResult": {
+ "description": "The result of a request to list scope maps for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of scope maps. Since this list may be incomplete, the nextLink field should be used to request the next list of scope maps.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of scope maps.",
+ "type": "string"
+ }
+ }
+ },
+ "ScopeMap": {
+ "description": "An object that represents a scope map for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ScopeMapProperties",
+ "description": "The properties of the scope map.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ScopeMapProperties": {
+ "description": "The properties of a scope map.",
+ "required": [
+ "actions"
+ ],
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The user friendly description of the scope map.",
+ "type": "string"
+ },
+ "type": {
+ "description": "The type of the scope map. E.g. BuildIn scope map.",
+ "type": "string",
+ "readOnly": true
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of scope map.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "actions": {
+ "description": "The list of scoped permissions for registry artifacts.\r\nE.g. repositories/repository-name/content/read,\r\nrepositories/repository-name/metadata/write",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ScopeMapUpdateParameters": {
+ "description": "The properties for updating the scope map.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ScopeMapPropertiesUpdateParameters",
+ "description": "The update parameters for scope map properties.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ScopeMapPropertiesUpdateParameters": {
+ "description": "The update parameters for scope map properties.",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The user friendly description of the scope map.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of scope permissions for registry artifacts.\r\nE.g. repositories/repository-name/pull, \r\nrepositories/repository-name/delete",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "TokenListResult": {
+ "description": "The result of a request to list tokens for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of tokens. Since this list may be incomplete, the nextLink field should be used to request the next list of tokens.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of tokens.",
+ "type": "string"
+ }
+ }
+ },
+ "Token": {
+ "description": "An object that represents a token for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TokenProperties",
+ "description": "The properties of the token.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TokenProperties": {
+ "description": "The properties of a token.",
+ "type": "object",
+ "properties": {
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of scope map.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "scopeMapId": {
+ "description": "The resource ID of the scope map to which the token will be associated with.",
+ "type": "string"
+ },
+ "credentials": {
+ "$ref": "#/definitions/TokenCredentialsProperties",
+ "description": "The credentials that can be used for authenticating the token."
+ },
+ "status": {
+ "description": "The status of the token example enabled or disabled.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "TokenCredentialsProperties": {
+ "description": "The properties of the credentials that can be used for authenticating the token.",
+ "type": "object",
+ "properties": {
+ "certificates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TokenCertificate"
+ },
+ "x-ms-identifiers": [
+ "thumbprint"
+ ]
+ },
+ "passwords": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TokenPassword"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "ActiveDirectoryObject": {
+ "description": "The Active Directory Object that will be used for authenticating the token of a container registry.",
+ "type": "object",
+ "properties": {
+ "objectId": {
+ "description": "The user/group/application object ID for Active Directory Object that will be used for authenticating the token of a container registry.",
+ "type": "string"
+ },
+ "tenantId": {
+ "description": "The tenant ID of user/group/application object Active Directory Object that will be used for authenticating the token of a container registry.",
+ "type": "string"
+ }
+ }
+ },
+ "TokenCertificate": {
+ "description": "The properties of a certificate used for authenticating a token.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "enum": [
+ "certificate1",
+ "certificate2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenCertificateName",
+ "modelAsString": true
+ }
+ },
+ "expiry": {
+ "format": "date-time",
+ "description": "The expiry datetime of the certificate.",
+ "type": "string"
+ },
+ "thumbprint": {
+ "description": "The thumbprint of the certificate.",
+ "type": "string"
+ },
+ "encodedPemCertificate": {
+ "description": "Base 64 encoded string of the public certificate1 in PEM format that will be used for authenticating the token.",
+ "type": "string"
+ }
+ }
+ },
+ "TokenPassword": {
+ "description": "The password that will be used for authenticating the token of a container registry.",
+ "type": "object",
+ "properties": {
+ "creationTime": {
+ "format": "date-time",
+ "description": "The creation datetime of the password.",
+ "type": "string"
+ },
+ "expiry": {
+ "format": "date-time",
+ "description": "The expiry datetime of the password.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The password name \"password1\" or \"password2\"",
+ "enum": [
+ "password1",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenPasswordName",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "The password value.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TokenUpdateParameters": {
+ "description": "The parameters for updating a token.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TokenUpdateProperties",
+ "description": "The properties of the token update parameters.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TokenUpdateProperties": {
+ "description": "The parameters for updating token properties.",
+ "type": "object",
+ "properties": {
+ "scopeMapId": {
+ "description": "The resource ID of the scope map to which the token will be associated with.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the token example enabled or disabled.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenStatus",
+ "modelAsString": true
+ }
+ },
+ "credentials": {
+ "$ref": "#/definitions/TokenCredentialsProperties",
+ "description": "The credentials that can be used for authenticating the token."
+ }
+ }
+ },
+ "GenerateCredentialsParameters": {
+ "description": "The parameters used to generate credentials for a specified token or user of a container registry.",
+ "type": "object",
+ "properties": {
+ "tokenId": {
+ "description": "The resource ID of the token for which credentials have to be generated.",
+ "type": "string"
+ },
+ "expiry": {
+ "format": "date-time",
+ "description": "The expiry date of the generated credentials after which the credentials become invalid.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Specifies name of the password which should be regenerated if any -- password1 or password2.",
+ "enum": [
+ "password1",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenPasswordName",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "GenerateCredentialsResult": {
+ "description": "The response from the GenerateCredentials operation.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username for a container registry.",
+ "type": "string"
+ },
+ "passwords": {
+ "description": "The list of passwords for a container registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TokenPassword"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "WebhookListResult": {
+ "description": "The result of a request to list webhooks for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of webhooks. Since this list may be incomplete, the nextLink field should be used to request the next list of webhooks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of webhooks.",
+ "type": "string"
+ }
+ }
+ },
+ "Webhook": {
+ "description": "An object that represents a webhook for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WebhookProperties",
+ "description": "The properties of the webhook.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WebhookProperties": {
+ "description": "The properties of a webhook.",
+ "required": [
+ "actions"
+ ],
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The status of the webhook at the time the operation was called.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookStatus",
+ "modelAsString": true
+ }
+ },
+ "scope": {
+ "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of actions that trigger the webhook to post notifications.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "push",
+ "delete",
+ "quarantine",
+ "chart_push",
+ "chart_delete"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookAction",
+ "modelAsString": true
+ }
+ }
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the webhook at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "WebhookCreateParameters": {
+ "description": "The parameters for creating a webhook.",
+ "required": [
+ "location"
+ ],
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "The tags for the webhook.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "location": {
+ "description": "The location of the webhook. This cannot be changed after the resource is created.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/WebhookPropertiesCreateParameters",
+ "description": "The properties that the webhook will be created with.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WebhookPropertiesCreateParameters": {
+ "description": "The parameters for creating the properties of a webhook.",
+ "required": [
+ "serviceUri",
+ "actions"
+ ],
+ "type": "object",
+ "properties": {
+ "serviceUri": {
+ "description": "The service URI for the webhook to post notifications.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "customHeaders": {
+ "description": "Custom headers that will be added to the webhook notifications.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-secret": true
+ },
+ "status": {
+ "description": "The status of the webhook at the time the operation was called.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookStatus",
+ "modelAsString": true
+ }
+ },
+ "scope": {
+ "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of actions that trigger the webhook to post notifications.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "push",
+ "delete",
+ "quarantine",
+ "chart_push",
+ "chart_delete"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookAction",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "WebhookUpdateParameters": {
+ "description": "The parameters for updating a webhook.",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "The tags for the webhook.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/WebhookPropertiesUpdateParameters",
+ "description": "The properties that the webhook will be updated with.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WebhookPropertiesUpdateParameters": {
+ "description": "The parameters for updating the properties of a webhook.",
+ "type": "object",
+ "properties": {
+ "serviceUri": {
+ "description": "The service URI for the webhook to post notifications.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "customHeaders": {
+ "description": "Custom headers that will be added to the webhook notifications.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-secret": true
+ },
+ "status": {
+ "description": "The status of the webhook at the time the operation was called.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookStatus",
+ "modelAsString": true
+ }
+ },
+ "scope": {
+ "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of actions that trigger the webhook to post notifications.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "push",
+ "delete",
+ "quarantine",
+ "chart_push",
+ "chart_delete"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookAction",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "EventInfo": {
+ "description": "The basic information of an event.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The event ID.",
+ "type": "string"
+ }
+ }
+ },
+ "EventListResult": {
+ "description": "The result of a request to list events for a webhook.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of events. Since this list may be incomplete, the nextLink field should be used to request the next list of events.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Event"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of events.",
+ "type": "string"
+ }
+ }
+ },
+ "Event": {
+ "description": "The event for a webhook.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/EventInfo"
+ }
+ ],
+ "properties": {
+ "eventRequestMessage": {
+ "$ref": "#/definitions/EventRequestMessage",
+ "description": "The event request message sent to the service URI."
+ },
+ "eventResponseMessage": {
+ "$ref": "#/definitions/EventResponseMessage",
+ "description": "The event response message received from the service URI."
+ }
+ }
+ },
+ "EventRequestMessage": {
+ "description": "The event request message sent to the service URI.",
+ "type": "object",
+ "properties": {
+ "content": {
+ "$ref": "#/definitions/EventContent",
+ "description": "The content of the event request message."
+ },
+ "headers": {
+ "description": "The headers of the event request message.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "method": {
+ "description": "The HTTP method used to send the event request message.",
+ "type": "string"
+ },
+ "requestUri": {
+ "description": "The URI used to send the event request message.",
+ "type": "string"
+ },
+ "version": {
+ "description": "The HTTP message version.",
+ "type": "string"
+ }
+ }
+ },
+ "EventResponseMessage": {
+ "description": "The event response message received from the service URI.",
+ "type": "object",
+ "properties": {
+ "content": {
+ "description": "The content of the event response message.",
+ "type": "string"
+ },
+ "headers": {
+ "description": "The headers of the event response message.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "reasonPhrase": {
+ "description": "The reason phrase of the event response message.",
+ "type": "string"
+ },
+ "statusCode": {
+ "description": "The status code of the event response message.",
+ "type": "string"
+ },
+ "version": {
+ "description": "The HTTP message version.",
+ "type": "string"
+ }
+ }
+ },
+ "EventContent": {
+ "description": "The content of the event request message.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The event ID.",
+ "type": "string"
+ },
+ "timestamp": {
+ "format": "date-time",
+ "description": "The time at which the event occurred.",
+ "type": "string"
+ },
+ "action": {
+ "description": "The action that encompasses the provided event.",
+ "type": "string"
+ },
+ "target": {
+ "$ref": "#/definitions/Target",
+ "description": "The target of the event."
+ },
+ "request": {
+ "$ref": "#/definitions/Request",
+ "description": "The request that generated the event."
+ },
+ "actor": {
+ "$ref": "#/definitions/Actor",
+ "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request."
+ },
+ "source": {
+ "$ref": "#/definitions/Source",
+ "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it."
+ }
+ }
+ },
+ "Target": {
+ "description": "The target of the event.",
+ "type": "object",
+ "properties": {
+ "mediaType": {
+ "description": "The MIME type of the referenced object.",
+ "type": "string"
+ },
+ "size": {
+ "format": "int64",
+ "description": "The number of bytes of the content. Same as Length field.",
+ "type": "integer"
+ },
+ "digest": {
+ "description": "The digest of the content, as defined by the Registry V2 HTTP API Specification.",
+ "type": "string"
+ },
+ "length": {
+ "format": "int64",
+ "description": "The number of bytes of the content. Same as Size field.",
+ "type": "integer"
+ },
+ "repository": {
+ "description": "The repository name.",
+ "type": "string"
+ },
+ "url": {
+ "description": "The direct URL to the content.",
+ "type": "string"
+ },
+ "tag": {
+ "description": "The tag name.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the artifact.",
+ "type": "string"
+ },
+ "version": {
+ "description": "The version of the artifact.",
+ "type": "string"
+ }
+ }
+ },
+ "Request": {
+ "description": "The request that generated the event.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ID of the request that initiated the event.",
+ "type": "string"
+ },
+ "addr": {
+ "description": "The IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request.",
+ "type": "string"
+ },
+ "host": {
+ "description": "The externally accessible hostname of the registry instance, as specified by the http host header on incoming requests.",
+ "type": "string"
+ },
+ "method": {
+ "description": "The request method that generated the event.",
+ "type": "string"
+ },
+ "useragent": {
+ "description": "The user agent header of the request.",
+ "type": "string"
+ }
+ }
+ },
+ "Actor": {
+ "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The subject or username associated with the request context that generated the event.",
+ "type": "string"
+ }
+ }
+ },
+ "Source": {
+ "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it.",
+ "type": "object",
+ "properties": {
+ "addr": {
+ "description": "The IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port.",
+ "type": "string"
+ },
+ "instanceID": {
+ "description": "The running instance of an application. Changes after each restart.",
+ "type": "string"
+ }
+ }
+ },
+ "CallbackConfig": {
+ "description": "The configuration of service URI and custom headers for the webhook.",
+ "required": [
+ "serviceUri"
+ ],
+ "type": "object",
+ "properties": {
+ "serviceUri": {
+ "description": "The service URI for the webhook to post notifications.",
+ "type": "string"
+ },
+ "customHeaders": {
+ "description": "Custom headers that will be added to the webhook notifications.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ErrorResponseBody": {
+ "description": "An error response from the Azure Container Registry service.",
+ "required": [
+ "code",
+ "message"
+ ],
+ "properties": {
+ "code": {
+ "description": "error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "target of the particular error.",
+ "type": "string"
+ },
+ "details": {
+ "description": "an array of additional nested error response info objects, as described by this contract.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InnerErrorDescription"
+ },
+ "x-ms-identifiers": [
+ "message",
+ "target"
+ ]
+ }
+ }
+ },
+ "InnerErrorDescription": {
+ "description": "inner error.",
+ "required": [
+ "code",
+ "message"
+ ],
+ "properties": {
+ "code": {
+ "description": "error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "target of the particular error.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "RegistryNameParameter": {
+ "name": "registryName",
+ "in": "path",
+ "description": "The name of the container registry.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "WebhookNameParameter": {
+ "name": "webhookName",
+ "in": "path",
+ "description": "The name of the webhook.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ReplicationNameParameter": {
+ "name": "replicationName",
+ "in": "path",
+ "description": "The name of the replication.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ScopeMapNameParameter": {
+ "name": "scopeMapName",
+ "in": "path",
+ "description": "The name of the scope map.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-_]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "TokenNameParameter": {
+ "name": "tokenName",
+ "in": "path",
+ "description": "The name of the token.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "PrivateEndpointConnectionNameParameter": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "description": "The name of the private endpoint connection.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "GroupNameParameter": {
+ "name": "groupName",
+ "in": "path",
+ "description": "The name of the private link resource.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ExportPipelineNameParameter": {
+ "name": "exportPipelineName",
+ "in": "path",
+ "description": "The name of the export pipeline.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ImportPipelineNameParameter": {
+ "name": "importPipelineName",
+ "in": "path",
+ "description": "The name of the import pipeline.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "PipelineRunNameParameter": {
+ "name": "pipelineRunName",
+ "in": "path",
+ "description": "The name of the pipeline run.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ConnectedRegistryNameParameter": {
+ "name": "connectedRegistryName",
+ "in": "path",
+ "description": "The name of the connected registry.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ConnectedRegistryFilterParameter": {
+ "name": "$filter",
+ "in": "query",
+ "description": "An OData filter expression that describes a subset of connectedRegistries to return. The parameters that can be filtered are parent.id (the resource id of the connectedRegistry parent), mode, and connectionState. The supported operator is eq.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "PackageTypeParameter": {
+ "name": "packageType",
+ "in": "path",
+ "description": "The type of the package resource.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 3,
+ "pattern": "^[a-zA-Z]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ArchiveNameParameter": {
+ "name": "archiveName",
+ "in": "path",
+ "description": "The name of the archive resource.",
+ "required": true,
+ "type": "string",
+ "maxLength": 200,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ArchiveVersionNameParameter": {
+ "name": "archiveVersionName",
+ "in": "path",
+ "description": "The name of the archive version resource.",
+ "required": true,
+ "type": "string",
+ "maxLength": 200,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "CredentialSetNameParameter": {
+ "name": "credentialSetName",
+ "in": "path",
+ "description": "The name of the credential set.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "CacheRuleNameParameter": {
+ "name": "cacheRuleName",
+ "in": "path",
+ "description": "The name of the cache rule.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveCreate.json
new file mode 100644
index 000000000000..e5ba4e93fe87
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveCreate.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "rpm",
+ "archiveName": "myArchiveName",
+ "archiveCreateParameters": {
+ "properties": {
+ "packageSource": {
+ "type": "remote",
+ "url": "string"
+ },
+ "publishedVersion": "string",
+ "repositoryEndpointPrefix": "string"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/archives",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/rpm/archives/myArchiveName",
+ "name": "myArchiveName",
+ "properties": {
+ "packageSource": {
+ "type": "remote",
+ "url": "string"
+ },
+ "publishedVersion": "string",
+ "repositoryEndpointPrefix": "string",
+ "repositoryEndpoint": "string",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/rpm/archives/myArchiveName/operationStatuses/archive-00000000-0000-0000-0000-000000000000?api-version=2023-01-01-preview"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/archives",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/archives/myArchiveName",
+ "name": "myArchiveName",
+ "properties": {
+ "packageSource": {
+ "type": "remote",
+ "url": "string"
+ },
+ "publishedVersion": "string",
+ "repositoryEndpointPrefix": "string",
+ "repositoryEndpoint": "string",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveDelete.json
new file mode 100644
index 000000000000..01fc5732615c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "myPackageType",
+ "archiveName": "myArchiveName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/myPackageType/archives/myArchiveName/operationStatuses/archive-00000000-0000-0000-0000-000000000000?api-version=2023-01-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveGet.json
new file mode 100644
index 000000000000..1612860b8f4c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveGet.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "myPackageType",
+ "archiveName": "myArchiveName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/packages/archives",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/myPackageType/archives/myArchiveName",
+ "name": "myArchiveName",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2023-02-24T00:13:46.836Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-02-24T00:13:46.836Z"
+ },
+ "properties": {
+ "packageSource": {
+ "type": "string",
+ "url": "string"
+ },
+ "publishedVersion": "string",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveList.json
new file mode 100644
index 000000000000..6f2199e4a8d3
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveList.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "myPackageType"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "string",
+ "name": "string",
+ "type": "string",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2023-02-24T00:22:47.311Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-02-24T00:22:47.311Z"
+ },
+ "properties": {
+ "packageSource": {
+ "type": "string",
+ "url": "string"
+ },
+ "publishedVersion": "string",
+ "provisioningState": "Creating"
+ }
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveUpdate.json
new file mode 100644
index 000000000000..34157eb86565
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveUpdate.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "myPackageType",
+ "archiveName": "myArchiveName",
+ "archiveUpdateParameters": {
+ "properties": {
+ "publishedVersion": "string"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/packages/archives",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/myPackageType/archives/myArchiveName",
+ "name": "myArchiveName",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2023-06-09T23:41:38.720Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-06-09T23:41:38.720Z"
+ },
+ "properties": {
+ "packageSource": {
+ "type": "remote",
+ "url": "string"
+ },
+ "publishedVersion": "string",
+ "repositoryEndpointPrefix": "string",
+ "repositoryEndpoint": "string",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionCreate.json
new file mode 100644
index 000000000000..a21676ca76ac
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionCreate.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "rpm",
+ "archiveName": "myArchiveName",
+ "archiveVersionName": "myArchiveVersionName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/packages/archives/versions",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/rpm/archives/myArchiveName/versions/myArchiveVersionName",
+ "name": "myArchiveVersionName",
+ "properties": {
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/rpm/archives/myArchiveName/versions/myArchiveVersionName/operationStatuses/archoveversion-00000000-0000-0000-0000-000000000000?api-version=2023-01-01-preview"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/packages/archives/versions",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/rpm/archives/myArchiveName/versions/myArchiveVersionName",
+ "name": "myCacheRule",
+ "properties": {
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionDelete.json
new file mode 100644
index 000000000000..7f851a0d1f52
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionDelete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "myPackageType",
+ "archiveName": "myArchiveName",
+ "archiveVersionName": "myArchiveVersionName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/myPackageType/archives/myArchiveName/versions/myArchiveVersionName/operationStatuses/archive-00000000-0000-0000-0000-000000000000?api-version=2023-01-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionGet.json
new file mode 100644
index 000000000000..34051a3f1829
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionGet.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "rpm",
+ "archiveName": "myArchiveName",
+ "archiveVersionName": "myArchiveVersionName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/packages/archives",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/packages/rpm/archives/myArchiveName/versions/myArchiveVersionName",
+ "name": "myArchiveName",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2023-02-24T00:13:46.836Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-02-24T00:13:46.836Z"
+ },
+ "properties": {
+ "provisioningState": "Creating",
+ "archiveVersionErrorMessage": "string"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionList.json
new file mode 100644
index 000000000000..7463d316deb7
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ArchiveVersionList.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "packageType": "myPackageType",
+ "archiveName": "myArchiveName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "string",
+ "name": "string",
+ "type": "string",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2023-02-24T00:22:47.311Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-02-24T00:22:47.311Z"
+ },
+ "properties": {
+ "provisioningState": "Creating",
+ "archiveVersionErrorMessage": "string"
+ }
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleCreate.json
new file mode 100644
index 000000000000..e5a657bb34a0
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleCreate.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule",
+ "cacheRuleCreateParameters": {
+ "properties": {
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule/operationStatuses/cacherules-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleDelete.json
new file mode 100644
index 000000000000..a820d1ba34a8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule/operationStatuses/cacherules-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleGet.json
new file mode 100644
index 000000000000..c683b61bd58f
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleGet.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleList.json
new file mode 100644
index 000000000000..3cc791637ad6
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleList.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleUpdate.json
new file mode 100644
index 000000000000..45e1cb3ce21c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CacheRuleUpdate.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule",
+ "cacheRuleUpdateParameters": {
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet2",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule/operationStatuses/cacherules-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet2",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Updating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryCreate.json
new file mode 100644
index 000000000000..05999ec7d939
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryCreate.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "connectedRegistryName": "myConnectedRegistry",
+ "connectedRegistryCreateParameters": {
+ "properties": {
+ "mode": "ReadWrite",
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 9 * * *",
+ "messageTtl": "P2D",
+ "syncWindow": "PT3H"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token"
+ ],
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry",
+ "name": "myConnectedRegistry",
+ "type": "Microsoft.ContainerRegistry/registries/connectedRegistries",
+ "properties": {
+ "mode": "ReadWrite",
+ "activation": {
+ "status": "Inactive"
+ },
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 9 * * *",
+ "messageTtl": "P2D",
+ "syncWindow": "PT3H"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token"
+ ],
+ "logging": {
+ "logLevel": "Information",
+ "auditLogStatus": "Disabled"
+ },
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry/operationStatuses/connectedregistries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry",
+ "name": "myConnectedRegistry",
+ "type": "Microsoft.ContainerRegistry/registries/connectedRegistries",
+ "properties": {
+ "mode": "ReadWrite",
+ "activation": {
+ "status": "Inactive"
+ },
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 9 * * *",
+ "messageTtl": "P2D",
+ "syncWindow": "PT3H"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token"
+ ],
+ "logging": {
+ "logLevel": "Information",
+ "auditLogStatus": "Disabled"
+ },
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryDeactivate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryDeactivate.json
new file mode 100644
index 000000000000..ce13b9e0bbe3
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryDeactivate.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "connectedRegistryName": "myConnectedRegistry"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry/operationStatuses/connectedregistries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryDelete.json
new file mode 100644
index 000000000000..9266b507d2e0
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "connectedRegistryName": "myConnectedRegistry"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry/operationStatuses/connectedregistries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryGet.json
new file mode 100644
index 000000000000..a0bc1f9b2f0a
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryGet.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "connectedRegistryName": "myConnectedRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry",
+ "name": "myConnectedRegistry",
+ "type": "Microsoft.ContainerRegistry/registries/connectedRegistries",
+ "properties": {
+ "mode": "ReadWrite",
+ "activation": {
+ "status": "Inactive"
+ },
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 9 * * *",
+ "messageTtl": "P2D",
+ "syncWindow": "PT3H"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token"
+ ],
+ "logging": {
+ "logLevel": "Information",
+ "auditLogStatus": "Disabled"
+ },
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryList.json
new file mode 100644
index 000000000000..9346cec4d52b
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryList.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry",
+ "name": "myConnectedRegistry",
+ "type": "Microsoft.ContainerRegistry/registries/connectedRegistries",
+ "properties": {
+ "mode": "ReadWrite",
+ "activation": {
+ "status": "Inactive"
+ },
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 9 * * *",
+ "messageTtl": "P2D",
+ "syncWindow": "PT3H"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token"
+ ],
+ "logging": {
+ "logLevel": "Information",
+ "auditLogStatus": "Disabled"
+ },
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryUpdate.json
new file mode 100644
index 000000000000..62f034ce9d17
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ConnectedRegistryUpdate.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "connectedRegistryName": "myScopeMap",
+ "connectedRegistryUpdateParameters": {
+ "properties": {
+ "syncProperties": {
+ "schedule": "0 0 */10 * *",
+ "messageTtl": "P30D",
+ "syncWindow": "P2D"
+ },
+ "logging": {
+ "logLevel": "Debug",
+ "auditLogStatus": "Enabled"
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client2Token"
+ ],
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry",
+ "name": "myConnectedRegistry",
+ "type": "Microsoft.ContainerRegistry/registries/connectedRegistries",
+ "properties": {
+ "mode": "ReadWrite",
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 0 */10 * *",
+ "messageTtl": "P30D",
+ "syncWindow": "P2D"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client2Token"
+ ],
+ "logging": {
+ "logLevel": "Debug",
+ "auditLogStatus": "Enabled"
+ },
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry/operationStatuses/connectedregistries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/connectedRegistries/myConnectedRegistry",
+ "name": "myConnectedRegistry",
+ "type": "Microsoft.ContainerRegistry/registries/connectedRegistries",
+ "properties": {
+ "mode": "ReadWrite",
+ "parent": {
+ "syncProperties": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/syncToken",
+ "schedule": "0 0 */10 * *",
+ "messageTtl": "P30D",
+ "syncWindow": "P2D"
+ }
+ },
+ "clientTokenIds": [
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client1Token",
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/client2Token"
+ ],
+ "logging": {
+ "logLevel": "Debug",
+ "auditLogStatus": "Enabled"
+ },
+ "notificationsList": [
+ "hello-world:*:*",
+ "sample/repo/*:1.0:*"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetCreate.json
new file mode 100644
index 000000000000..cd3647719012
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetCreate.json
@@ -0,0 +1,83 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet",
+ "credentialSetCreateParameters": {
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password"
+ }
+ ]
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet/operationStatuses/credentialsets-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetDelete.json
new file mode 100644
index 000000000000..1f06ac02633e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet/operationStatuses/credentialsets-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetGet.json
new file mode 100644
index 000000000000..75b4c200c7a5
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetGet.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetList.json
new file mode 100644
index 000000000000..fa930c9c0382
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetList.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetUpdate.json
new file mode 100644
index 000000000000..b2ad6e37f2c8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/CredentialSetUpdate.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet",
+ "credentialSetUpdateParameters": {
+ "properties": {
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username2",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password2"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username2",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password2",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet/operationStatuses/credentialsets-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username2",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password2",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Updating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineCreate.json
new file mode 100644
index 000000000000..a6e07490399b
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineCreate.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "exportPipelineName": "myExportPipeline",
+ "exportPipelineCreateParameters": {
+ "location": "westus",
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "target": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ },
+ "options": [
+ "OverwriteBlobs"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "name": "myExportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/exportPipelines",
+ "properties": {
+ "target": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ },
+ "options": [
+ "OverwriteBlobs"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v",
+ "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd",
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline/operationStatuses/exportpipelines-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "name": "myExportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/exportPipelines",
+ "properties": {
+ "target": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ },
+ "options": [
+ "OverwriteBlobs"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v",
+ "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineDelete.json
new file mode 100644
index 000000000000..37f07c210263
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "exportPipelineName": "myExportPipeline"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline/operationStatuses/exportpipelines-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineGet.json
new file mode 100644
index 000000000000..373658b728f4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineGet.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "exportPipelineName": "myExportPipeline"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "name": "myExportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/exportPipelines",
+ "properties": {
+ "target": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ },
+ "options": [
+ "OverwriteBlobs"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v",
+ "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd",
+ "type": "SystemAssigned"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineList.json
new file mode 100644
index 000000000000..9b4c186a6292
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ExportPipelineList.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "name": "myExportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/exportPipelines",
+ "properties": {
+ "target": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ },
+ "options": [
+ "OverwriteBlobs"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v",
+ "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd",
+ "type": "SystemAssigned"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageByManifestDigest.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageByManifestDigest.json
new file mode 100644
index 000000000000..022c3318e408
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageByManifestDigest.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "parameters": {
+ "source": {
+ "resourceId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry",
+ "sourceImage": "sourceRepository@sha256:0000000000000000000000000000000000000000000000000000000000000000"
+ },
+ "targetTags": [
+ "targetRepository:targetTag"
+ ],
+ "untaggedTargetRepositories": [
+ "targetRepository1"
+ ],
+ "mode": "Force"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/locations/location/operationResults/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageByTag.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageByTag.json
new file mode 100644
index 000000000000..b5ed3878b69c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageByTag.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "parameters": {
+ "source": {
+ "resourceId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry",
+ "sourceImage": "sourceRepository:sourceTag"
+ },
+ "targetTags": [
+ "targetRepository:targetTag"
+ ],
+ "untaggedTargetRepositories": [
+ "targetRepository1"
+ ],
+ "mode": "Force"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/locations/location/operationResults/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageFromPublicRegistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageFromPublicRegistry.json
new file mode 100644
index 000000000000..3c080b2d240a
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportImageFromPublicRegistry.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "parameters": {
+ "source": {
+ "registryUri": "registry.hub.docker.com",
+ "sourceImage": "library/hello-world"
+ },
+ "targetTags": [
+ "targetRepository:targetTag"
+ ],
+ "untaggedTargetRepositories": [
+ "targetRepository1"
+ ],
+ "mode": "Force"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/locations/location/operationResults/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineCreate.json
new file mode 100644
index 000000000000..b721a9622755
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineCreate.json
@@ -0,0 +1,105 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "importPipelineName": "myImportPipeline",
+ "importPipelineCreateParameters": {
+ "location": "westus",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {}
+ }
+ },
+ "properties": {
+ "source": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "options": [
+ "OverwriteTags",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline",
+ "name": "myImportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/importPipelines",
+ "properties": {
+ "source": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "trigger": {
+ "sourceTrigger": {
+ "status": "Enabled"
+ }
+ },
+ "options": [
+ "OverwriteTags",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {
+ "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e",
+ "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline/operationStatuses/importpipelines-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline",
+ "name": "myImportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/importPipelines",
+ "properties": {
+ "source": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "trigger": {
+ "sourceTrigger": {
+ "status": "Enabled"
+ }
+ },
+ "options": [
+ "OverwriteTags",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {
+ "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e",
+ "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineDelete.json
new file mode 100644
index 000000000000..c70f69a77c8e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "importPipelineName": "myImportPipeline"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline/operationStatuses/importpipelines-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineGet.json
new file mode 100644
index 000000000000..1ac6a4a52e62
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineGet.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "importPipelineName": "myImportPipeline"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline",
+ "name": "myImportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/importPipelines",
+ "properties": {
+ "source": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "trigger": {
+ "sourceTrigger": {
+ "status": "Enabled"
+ }
+ },
+ "options": [
+ "OverwriteTags",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {
+ "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e",
+ "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineList.json
new file mode 100644
index 000000000000..92028d8adf96
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ImportPipelineList.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline",
+ "name": "myImportPipeline",
+ "type": "Microsoft.ContainerRegistry/registries/importPipelines",
+ "properties": {
+ "source": {
+ "type": "AzureStorageBlobContainer",
+ "uri": "https://accountname.blob.core.windows.net/containername",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "trigger": {
+ "sourceTrigger": {
+ "status": "Enabled"
+ }
+ },
+ "options": [
+ "OverwriteTags",
+ "DeleteSourceBlobOnSuccess",
+ "ContinueOnErrors"
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "location": "westus",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {
+ "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e",
+ "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466"
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/OperationList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/OperationList.json
new file mode 100644
index 000000000000..c3942a123710
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/OperationList.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ContainerRegistry/locations/deleteVirtualNetworkOrSubnets/action",
+ "display": {
+ "provider": "Microsoft ContainerRegistry",
+ "resource": "",
+ "operation": "Delete virtual network or subnets notifications",
+ "description": "Notifies Microsoft.ContainerRegistry that virtual network or subnet is being deleted"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunCreate_Export.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunCreate_Export.json
new file mode 100644
index 000000000000..936f04c0635e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunCreate_Export.json
@@ -0,0 +1,89 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "pipelineRunName": "myPipelineRun",
+ "pipelineRunCreateParameters": {
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "target": {
+ "type": "AzureStorageBlob",
+ "name": "myblob.tar.gz"
+ },
+ "artifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "artifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ]
+ },
+ "response": {
+ "status": "Running",
+ "catalogDigest": "sha256@",
+ "progress": {
+ "percentage": "20"
+ },
+ "startTime": "2020-03-04T17:23:21.9261521+00:00",
+ "target": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun/operationStatuses/pipelineruns-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "artifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ]
+ },
+ "response": {
+ "status": "Running",
+ "catalogDigest": "sha256@",
+ "progress": {
+ "percentage": "20"
+ },
+ "startTime": "2020-03-04T17:23:21.9261521+00:00",
+ "target": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunCreate_Import.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunCreate_Import.json
new file mode 100644
index 000000000000..72da560f08f4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunCreate_Import.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "pipelineRunName": "myPipelineRun",
+ "pipelineRunCreateParameters": {
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline",
+ "source": {
+ "type": "AzureStorageBlob",
+ "name": "myblob.tar.gz"
+ },
+ "catalogDigest": "sha256@"
+ },
+ "forceUpdateTag": "2020-03-04T17:23:21.9261521+00:00"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline"
+ },
+ "response": {
+ "status": "Succeeded",
+ "progress": {
+ "percentage": "100"
+ },
+ "startTime": "2020-03-04T17:23:21.9261521+00:00",
+ "importedArtifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ],
+ "source": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "catalogDigest": "sha256@"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun/operationStatuses/pipelineruns-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline"
+ },
+ "response": {
+ "status": "Succeeded",
+ "progress": {
+ "percentage": "100"
+ },
+ "startTime": "2020-03-04T17:23:21.9261521+00:00",
+ "finishTime": "2020-03-04T17:25:21.9261521+00:00",
+ "importedArtifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ],
+ "source": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "catalogDigest": "sha256@"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunDelete.json
new file mode 100644
index 000000000000..9b575af4c3e1
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "pipelineRunName": "myPipelineRun"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun/operationStatuses/pipelineruns-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunGet.json
new file mode 100644
index 000000000000..70d9f60795a4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunGet.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "pipelineRunName": "myPipelineRun"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "artifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ]
+ },
+ "response": {
+ "status": "Running",
+ "catalogDigest": "sha256@",
+ "progress": {
+ "percentage": "20"
+ },
+ "startTime": "2020-03-04T17:23:21.9261521+00:00",
+ "target": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunList.json
new file mode 100644
index 000000000000..16edfcc1de4f
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PipelineRunList.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline",
+ "artifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ]
+ },
+ "response": {
+ "status": "Running",
+ "catalogDigest": "sha256@",
+ "progress": {
+ "percentage": "20"
+ },
+ "startTime": "2020-03-04T17:23:21.9261521+00:00",
+ "target": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun",
+ "name": "myPipelineRun",
+ "type": "Microsoft.ContainerRegistry/registries/pipelineRuns",
+ "properties": {
+ "request": {
+ "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline"
+ },
+ "response": {
+ "status": "Succeeded",
+ "progress": {
+ "percentage": "100"
+ },
+ "startTime": "2020-03-03T17:23:21.9261521+00:00",
+ "importedArtifacts": [
+ "sourceRepository/hello-world",
+ "sourceRepository2@sha256:00000000000000000000000000000000000"
+ ],
+ "source": {
+ "type": "AzureStorageBlob",
+ "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz",
+ "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas"
+ },
+ "catalogDigest": "sha256@"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json
new file mode 100644
index 000000000000..50fe02a73db5
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "privateEndpointConnectionName": "myConnection",
+ "privateEndpointConnection": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection/operationStatuses/privateendpointconnections-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionDelete.json
new file mode 100644
index 000000000000..bda54bdc3f5e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "privateEndpointConnectionName": "myConnection"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection/operationStatuses/privateendpointconnections-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionGet.json
new file mode 100644
index 000000000000..0afcd1be706a
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionGet.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "privateEndpointConnectionName": "myConnection"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionList.json
new file mode 100644
index 000000000000..9d2ad5229310
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/PrivateEndpointConnectionList.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCheckNameAvailable.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCheckNameAvailable.json
new file mode 100644
index 000000000000..6c6244ef54cd
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCheckNameAvailable.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "registryNameCheckRequest": {
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCheckNameNotAvailable.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCheckNameNotAvailable.json
new file mode 100644
index 000000000000..ba2d9b3e3c89
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCheckNameNotAvailable.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "registryNameCheckRequest": {
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": false,
+ "reason": "AlreadyExists",
+ "message": "The registry myRegistry is already in use."
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCreate.json
new file mode 100644
index 000000000000..026a17842140
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCreate.json
@@ -0,0 +1,128 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "registry": {
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "properties": {
+ "adminUserEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Creating",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCreateZoneRedundant.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCreateZoneRedundant.json
new file mode 100644
index 000000000000..ac5c693fcdd8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryCreateZoneRedundant.json
@@ -0,0 +1,131 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "registry": {
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "properties": {
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Enabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Creating",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Enabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryDelete.json
new file mode 100644
index 000000000000..fffca78ddfe3
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGenerateCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGenerateCredentials.json
new file mode 100644
index 000000000000..d732b1bc04f1
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGenerateCredentials.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "generateCredentialsParameters": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "expiry": "2020-12-31T15:59:59.0707808Z"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "username": "myToken",
+ "passwords": [
+ {
+ "expiry": "2020-12-31T15:59:59.0707808Z",
+ "name": "password1",
+ "value": "00000000000000000000000000000000"
+ },
+ {
+ "expiry": "2020-12-31T15:59:59.0707808Z",
+ "name": "password2",
+ "value": "00000000000000000000000000000000"
+ }
+ ]
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGet.json
new file mode 100644
index 000000000000..465a74a37e0f
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGet.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGetPrivateLinkResource.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGetPrivateLinkResource.json
new file mode 100644
index 000000000000..2a041022d52f
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryGetPrivateLinkResource.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "groupName": "registry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateLinkResources/registry",
+ "name": "registry",
+ "type": "Microsoft.ContainerRegistry/registries/privateLinkResources",
+ "properties": {
+ "groupId": "registry",
+ "requiredMembers": [
+ "registry",
+ "registry_data_myregion"
+ ],
+ "requiredZoneNames": [
+ "privatelink.azurecr.io"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryList.json
new file mode 100644
index 000000000000..4ddc20b3eb8a
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryList.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListByResourceGroup.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListByResourceGroup.json
new file mode 100644
index 000000000000..0758ff0a16fc
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListByResourceGroup.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListCredentials.json
new file mode 100644
index 000000000000..bc4eaeb34d68
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListCredentials.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "username": "myRegistry",
+ "passwords": [
+ {
+ "name": "password",
+ "value": "00000000000000000000000000000000"
+ },
+ {
+ "name": "password2",
+ "value": "00000000000000000000000000000000"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListPrivateLinkResources.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListPrivateLinkResources.json
new file mode 100644
index 000000000000..87346b42ba26
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListPrivateLinkResources.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateLinkResources/registry",
+ "name": "registry",
+ "type": "Microsoft.ContainerRegistry/registries/privateLinkResources",
+ "properties": {
+ "groupId": "registry",
+ "requiredMembers": [
+ "registry",
+ "registry_data_myregion"
+ ],
+ "requiredZoneNames": [
+ "privatelink.azurecr.io"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListUsages.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListUsages.json
new file mode 100644
index 000000000000..fec9e254c3d0
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryListUsages.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Size",
+ "limit": 107374182400,
+ "currentValue": 12345678,
+ "unit": "Bytes"
+ },
+ {
+ "name": "Webhooks",
+ "limit": 10,
+ "currentValue": 2,
+ "unit": "Count"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryRegenerateCredential.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryRegenerateCredential.json
new file mode 100644
index 000000000000..9668e6e158e4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryRegenerateCredential.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "regenerateCredentialParameters": {
+ "name": "password"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "username": "myRegistry",
+ "passwords": [
+ {
+ "name": "password",
+ "value": "00000000000000000000000000000000"
+ },
+ {
+ "name": "password2",
+ "value": "00000000000000000000000000000000"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryUpdate.json
new file mode 100644
index 000000000000..cbd064b47445
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/RegistryUpdate.json
@@ -0,0 +1,130 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "registryUpdateParameters": {
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "properties": {
+ "adminUserEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Updating",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled",
+ "anonymousPullEnabled": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationCreate.json
new file mode 100644
index 000000000000..695b46c8fb02
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationCreate.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication",
+ "replication": {
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Creating",
+ "status": {
+ "displayStatus": "Provisioning",
+ "message": "The replication is provisioning.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationCreateZoneRedundant.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationCreateZoneRedundant.json
new file mode 100644
index 000000000000..121833b1ab81
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationCreateZoneRedundant.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication",
+ "replication": {
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Creating",
+ "status": {
+ "displayStatus": "Provisioning",
+ "message": "The replication is provisioning.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationDelete.json
new file mode 100644
index 000000000000..454808de39b8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationGet.json
new file mode 100644
index 000000000000..ee01df959f28
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationGet.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationList.json
new file mode 100644
index 000000000000..b74280dcffac
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationList.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationUpdate.json
new file mode 100644
index 000000000000..af1bf1dabba6
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ReplicationUpdate.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication",
+ "replicationUpdateParameters": {
+ "tags": {
+ "key": "value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Updating",
+ "status": {
+ "displayStatus": "Provisioning",
+ "message": "The replication is provisioning.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapCreate.json
new file mode 100644
index 000000000000..4954ce97f485
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapCreate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap",
+ "scopeMapCreateParameters": {
+ "properties": {
+ "description": "Developer Scopes",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap/operationStatuses/scopemaps-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapDelete.json
new file mode 100644
index 000000000000..c9c00da25978
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap/operationStatuses/scopemaps-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapGet.json
new file mode 100644
index 000000000000..7b0e0ed1c231
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapGet.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapList.json
new file mode 100644
index 000000000000..07d94be5b807
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapUpdate.json
new file mode 100644
index 000000000000..60fb83516a3e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/ScopeMapUpdate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap",
+ "scopeMapUpdateParameters": {
+ "properties": {
+ "description": "Developer Scopes",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/contentRead"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/contentRead"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap/operationStatuses/scopemaps-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/contentRead"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenCreate.json
new file mode 100644
index 000000000000..b811fbef5ac8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenCreate.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken",
+ "tokenCreateParameters": {
+ "properties": {
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "status": "disabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "disabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "thumbprint": "feeb79a888bf1415f8e17c4965a2a5bb5c8a2ff7",
+ "expiry": "2020-12-04T15:32:48.0707808Z"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken/operationStatuses/tokens-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "disabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "thumbprint": "feeb79a888bf1415f8e17c4965a2a5bb5c8a2ff7",
+ "expiry": "2020-12-04T15:32:48.0707808Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenDelete.json
new file mode 100644
index 000000000000..815dce34dbd5
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken/operationStatuses/tokens-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenGet.json
new file mode 100644
index 000000000000..83376d3ceca4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenGet.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenList.json
new file mode 100644
index 000000000000..26008e9a9237
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenList.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenUpdate.json
new file mode 100644
index 000000000000..e28b0a1838ba
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/TokenUpdate.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken",
+ "tokenUpdateParameters": {
+ "properties": {
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken/operationStatuses/tokens-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookCreate.json
new file mode 100644
index 000000000000..7964cd0a8f35
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookCreate.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook",
+ "webhookCreateParameters": {
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "serviceUri": "http://myservice.com",
+ "customHeaders": {
+ "Authorization": "******"
+ },
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook/operationStatuses/webhooks-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookDelete.json
new file mode 100644
index 000000000000..d0325f44feae
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook/operationStatuses/webhooks-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookGet.json
new file mode 100644
index 000000000000..e2a3e0130819
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookGet.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookGetCallbackConfig.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookGetCallbackConfig.json
new file mode 100644
index 000000000000..a377e7322ce8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookGetCallbackConfig.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "serviceUri": "http://myservice.com",
+ "customHeaders": {
+ "Authorization": "******"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookList.json
new file mode 100644
index 000000000000..8638900a6b85
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookList.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookListEvents.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookListEvents.json
new file mode 100644
index 000000000000..63c651b73bf5
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookListEvents.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "eventRequestMessage": {
+ "content": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "timestamp": "2017-03-01T23:14:37.0707808Z",
+ "action": "push",
+ "target": {
+ "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
+ "size": 708,
+ "digest": "sha256:fea8895f450959fa676bcc1df0611ea93823a735a01205fd8622846041d0c7cf",
+ "length": 708,
+ "repository": "hello-world",
+ "url": "http://192.168.100.227:5000/v2/hello-world/manifests/sha256:fea8895f450959fa676bcc1df0611ea93823a735a01205fd8622846041d0c7cf",
+ "tag": "latest"
+ },
+ "request": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "addr": "192.168.64.11:42961",
+ "host": "192.168.100.227:5000",
+ "method": "GET",
+ "useragent": "curl/7.38.0"
+ },
+ "actor": {},
+ "source": {
+ "addr": "xtal.local:5000",
+ "instanceID": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ "headers": {
+ "Content-Type": "application/json",
+ "Content-Length": "719",
+ "Authorization": "******"
+ },
+ "method": "POST",
+ "requestUri": "http://myservice.com",
+ "version": "1.1"
+ },
+ "eventResponseMessage": {
+ "headers": {
+ "Content-Length": "0"
+ },
+ "statusCode": "200",
+ "version": "1.1"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookPing.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookPing.json
new file mode 100644
index 000000000000..a5b4ad250a09
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookPing.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookUpdate.json
new file mode 100644
index 000000000000..527918cd8781
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-06-01-preview/examples/WebhookUpdate.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook",
+ "webhookUpdateParameters": {
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "serviceUri": "http://myservice.com",
+ "customHeaders": {
+ "Authorization": "******"
+ },
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook/operationStatuses/webhooks-00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Updating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/containerregistry.json
new file mode 100644
index 000000000000..a54a152e7528
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/containerregistry.json
@@ -0,0 +1,5249 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2023-07-01",
+ "title": "ContainerRegistryManagementClient"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/cacheRules": {
+ "get": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Lists all cache rule resources for the specified container registry.",
+ "operationId": "CacheRules_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRulesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleList": {
+ "$ref": "./examples/CacheRuleList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/cacheRules/{cacheRuleName}": {
+ "get": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Gets the properties of the specified cache rule resource.",
+ "operationId": "CacheRules_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleGet": {
+ "$ref": "./examples/CacheRuleGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Creates a cache rule for a container registry with the specified parameters.",
+ "operationId": "CacheRules_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ },
+ {
+ "name": "cacheRuleCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a cache rule.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleCreate": {
+ "$ref": "./examples/CacheRuleCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Deletes a cache rule resource from a container registry.",
+ "operationId": "CacheRules_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The cache rule does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleDelete": {
+ "$ref": "./examples/CacheRuleDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "CacheRules"
+ ],
+ "description": "Updates a cache rule for a container registry with the specified parameters.",
+ "operationId": "CacheRules_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CacheRuleNameParameter"
+ },
+ {
+ "name": "cacheRuleUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a cache rule.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CacheRuleUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CacheRule"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CacheRuleUpdate": {
+ "$ref": "./examples/CacheRuleUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/credentialSets": {
+ "get": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Lists all credential set resources for the specified container registry.",
+ "operationId": "CredentialSets_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSetListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetList": {
+ "$ref": "./examples/CredentialSetList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/credentialSets/{credentialSetName}": {
+ "get": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Gets the properties of the specified credential set resource.",
+ "operationId": "CredentialSets_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetGet": {
+ "$ref": "./examples/CredentialSetGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Creates a credential set for a container registry with the specified parameters.",
+ "operationId": "CredentialSets_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ },
+ {
+ "name": "credentialSetCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a credential set.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetCreate": {
+ "$ref": "./examples/CredentialSetCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Deletes a credential set from a container registry.",
+ "operationId": "CredentialSets_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The credential store resource does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetDelete": {
+ "$ref": "./examples/CredentialSetDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "CredentialSets"
+ ],
+ "description": "Updates a credential set for a container registry with the specified parameters.",
+ "operationId": "CredentialSets_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialSetNameParameter"
+ },
+ {
+ "name": "credentialSetUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a credential set.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CredentialSetUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/CredentialSet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CredentialSetUpdate": {
+ "$ref": "./examples/CredentialSetUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Copies an image to this container registry from the specified container registry.",
+ "operationId": "Registries_ImportImage",
+ "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/RegistryNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "description": "The parameters specifying the image to copy and the source container registry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ImportImageParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the operation has completed successfully."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ImportImageByTag": {
+ "$ref": "./examples/ImportImageByTag.json"
+ },
+ "ImportImageByManifestDigest": {
+ "$ref": "./examples/ImportImageByManifestDigest.json"
+ },
+ "ImportImageFromPublicRegistry": {
+ "$ref": "./examples/ImportImageFromPublicRegistry.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/providers/Microsoft.ContainerRegistry/operations": {
+ "get": {
+ "tags": [
+ "Operation"
+ ],
+ "description": "Lists all of the available Azure Container Registry REST API operations.",
+ "operationId": "Operations_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "OperationList": {
+ "$ref": "./examples/OperationList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "Operation"
+ ],
+ "description": "Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length.",
+ "operationId": "Registries_CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "registryNameCheckRequest",
+ "in": "body",
+ "description": "The object containing information for the availability request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RegistryNameCheckRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/RegistryNameStatus"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryCheckNameAvailable": {
+ "$ref": "./examples/RegistryCheckNameAvailable.json"
+ },
+ "RegistryCheckNameNotAvailable": {
+ "$ref": "./examples/RegistryCheckNameNotAvailable.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "List all private endpoint connections in a container registry.",
+ "operationId": "PrivateEndpointConnections_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionList": {
+ "$ref": "./examples/PrivateEndpointConnectionList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Get the specified private endpoint connection associated with the container registry.",
+ "operationId": "PrivateEndpointConnections_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionGet": {
+ "$ref": "./examples/PrivateEndpointConnectionGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Update the state of specified private endpoint connection associated with the container registry.",
+ "operationId": "PrivateEndpointConnections_CreateOrUpdate",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ },
+ {
+ "name": "privateEndpointConnection",
+ "in": "body",
+ "description": "The parameters for creating a private endpoint connection.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionCreateOrUpdate": {
+ "$ref": "./examples/PrivateEndpointConnectionCreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Deletes the specified private endpoint connection associated with the container registry.",
+ "operationId": "PrivateEndpointConnections_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "PrivateEndpointConnectionDelete": {
+ "$ref": "./examples/PrivateEndpointConnectionDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists all the container registries under the specified subscription.",
+ "operationId": "Registries_List",
+ "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 was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryList": {
+ "$ref": "./examples/RegistryList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists all the container registries under the specified resource group.",
+ "operationId": "Registries_ListByResourceGroup",
+ "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": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListByResourceGroup": {
+ "$ref": "./examples/RegistryListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Gets the properties of the specified container registry.",
+ "operationId": "Registries_Get",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryGet": {
+ "$ref": "./examples/RegistryGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Creates a container registry with the specified parameters.",
+ "operationId": "Registries_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "name": "registry",
+ "in": "body",
+ "description": "The parameters for creating a container registry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryCreate": {
+ "$ref": "./examples/RegistryCreate.json"
+ },
+ "RegistryCreateZoneRedundant": {
+ "$ref": "./examples/RegistryCreateZoneRedundant.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Deletes a container registry.",
+ "operationId": "Registries_Delete",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The container registry does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "RegistryDelete": {
+ "$ref": "./examples/RegistryDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Updates a container registry with the specified parameters.",
+ "operationId": "Registries_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "name": "registryUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a container registry.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RegistryUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Registry"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryUpdate": {
+ "$ref": "./examples/RegistryUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Gets the quota usages for the specified container registry.",
+ "operationId": "Registries_ListUsages",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the registry usages retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/RegistryUsageListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListUsages": {
+ "$ref": "./examples/RegistryListUsages.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists the private link resources for a container registry.",
+ "operationId": "Registries_ListPrivateLinkResources",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the private link resources were retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListPrivateLinkResources": {
+ "$ref": "./examples/RegistryListPrivateLinkResources.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources/{groupName}": {
+ "get": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Gets a private link resource by a specified group name for a container registry.",
+ "operationId": "Registries_GetPrivateLinkResource",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/GroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the private link resource was retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryGetPrivateLinkResource": {
+ "$ref": "./examples/RegistryGetPrivateLinkResource.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listCredentials": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Lists the login credentials for the specified container registry.",
+ "operationId": "Registries_ListCredentials",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the list of credentials retrieved and returned successfully.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListCredentialsResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryListCredentials": {
+ "$ref": "./examples/RegistryListCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredential": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Regenerates one of the login credentials for the specified container registry.",
+ "operationId": "Registries_RegenerateCredential",
+ "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/RegistryNameParameter"
+ },
+ {
+ "name": "regenerateCredentialParameters",
+ "in": "body",
+ "description": "Specifies name of the password which should be regenerated -- password or password2.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RegenerateCredentialParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the specified credential regenerated successfully.",
+ "schema": {
+ "$ref": "#/definitions/RegistryListCredentialsResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryRegenerateCredential": {
+ "$ref": "./examples/RegistryRegenerateCredential.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications": {
+ "get": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Lists all the replications for the specified container registry.",
+ "operationId": "Replications_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ReplicationListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationList": {
+ "$ref": "./examples/ReplicationList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": {
+ "get": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Gets the properties of the specified replication.",
+ "operationId": "Replications_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationGet": {
+ "$ref": "./examples/ReplicationGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Creates a replication for a container registry with the specified parameters.",
+ "operationId": "Replications_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ },
+ {
+ "name": "replication",
+ "in": "body",
+ "description": "The parameters for creating a replication.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationCreate": {
+ "$ref": "./examples/ReplicationCreate.json"
+ },
+ "ReplicationCreateZoneRedundant": {
+ "$ref": "./examples/ReplicationCreateZoneRedundant.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Deletes a replication from a container registry.",
+ "operationId": "Replications_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The replication does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationDelete": {
+ "$ref": "./examples/ReplicationDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Replications"
+ ],
+ "description": "Updates a replication for a container registry with the specified parameters.",
+ "operationId": "Replications_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ReplicationNameParameter"
+ },
+ {
+ "name": "replicationUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a replication.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ReplicationUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Replication"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReplicationUpdate": {
+ "$ref": "./examples/ReplicationUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/scopeMaps": {
+ "get": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Lists all the scope maps for the specified container registry.",
+ "operationId": "ScopeMaps_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMapListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapList": {
+ "$ref": "./examples/ScopeMapList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/scopeMaps/{scopeMapName}": {
+ "get": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Gets the properties of the specified scope map.",
+ "operationId": "ScopeMaps_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapGet": {
+ "$ref": "./examples/ScopeMapGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Creates a scope map for a container registry with the specified parameters.",
+ "operationId": "ScopeMaps_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ },
+ {
+ "name": "scopeMapCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a scope map.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapCreate": {
+ "$ref": "./examples/ScopeMapCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Deletes a scope map from a container registry.",
+ "operationId": "ScopeMaps_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The scopemap does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapDelete": {
+ "$ref": "./examples/ScopeMapDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "ScopeMaps"
+ ],
+ "description": "Updates a scope map with the specified parameters.",
+ "operationId": "ScopeMaps_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ScopeMapNameParameter"
+ },
+ {
+ "name": "scopeMapUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a scope map.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ScopeMapUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/ScopeMap"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ScopeMapUpdate": {
+ "$ref": "./examples/ScopeMapUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tokens": {
+ "get": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Lists all the tokens for the specified container registry.",
+ "operationId": "Tokens_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/TokenListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenList": {
+ "$ref": "./examples/TokenList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tokens/{tokenName}": {
+ "get": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Gets the properties of the specified token.",
+ "operationId": "Tokens_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenGet": {
+ "$ref": "./examples/TokenGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Creates a token for a container registry with the specified parameters.",
+ "operationId": "Tokens_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ },
+ {
+ "name": "tokenCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a token.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenCreate": {
+ "$ref": "./examples/TokenCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Deletes a token from a container registry.",
+ "operationId": "Tokens_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The token does not exist in the subscription."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenDelete": {
+ "$ref": "./examples/TokenDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Tokens"
+ ],
+ "description": "Updates a token with the specified parameters.",
+ "operationId": "Tokens_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TokenNameParameter"
+ },
+ {
+ "name": "tokenUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a token.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TokenUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Token"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If any of the input parameters are invalid, 400 (Bad Request) is returned. If the request cannot be processed due to a conflict in the request, 409 (Conflict) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TokenUpdate": {
+ "$ref": "./examples/TokenUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/generateCredentials": {
+ "post": {
+ "tags": [
+ "Registries"
+ ],
+ "description": "Generate keys for a token of a specified container registry.",
+ "operationId": "Registries_GenerateCredentials",
+ "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/RegistryNameParameter"
+ },
+ {
+ "name": "generateCredentialsParameters",
+ "in": "body",
+ "description": "The parameters for generating credentials.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/GenerateCredentialsParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/GenerateCredentialsResult"
+ }
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the resource does not exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "RegistryGenerateCredentials": {
+ "$ref": "./examples/RegistryGenerateCredentials.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks": {
+ "get": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Lists all the webhooks for the specified container registry.",
+ "operationId": "Webhooks_List",
+ "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/RegistryNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/WebhookListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookList": {
+ "$ref": "./examples/WebhookList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}": {
+ "get": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Gets the properties of the specified webhook.",
+ "operationId": "Webhooks_Get",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookGet": {
+ "$ref": "./examples/WebhookGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Creates a webhook for a container registry with the specified parameters.",
+ "operationId": "Webhooks_Create",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ },
+ {
+ "name": "webhookCreateParameters",
+ "in": "body",
+ "description": "The parameters for creating a webhook.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WebhookCreateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookCreate": {
+ "$ref": "./examples/WebhookCreate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Deletes a webhook from a container registry.",
+ "operationId": "Webhooks_Delete",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly."
+ },
+ "202": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The webhook does not exist in the subscription."
+ }
+ },
+ "x-ms-examples": {
+ "WebhookDelete": {
+ "$ref": "./examples/WebhookDelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Updates a webhook with the specified parameters.",
+ "operationId": "Webhooks_Update",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ },
+ {
+ "name": "webhookUpdateParameters",
+ "in": "body",
+ "description": "The parameters for updating a webhook.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WebhookUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "201": {
+ "description": "The request was successful; the operation will complete asynchronously.",
+ "schema": {
+ "$ref": "#/definitions/Webhook"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookUpdate": {
+ "$ref": "./examples/WebhookUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/ping": {
+ "post": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Triggers a ping event to be sent to the webhook.",
+ "operationId": "Webhooks_Ping",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/EventInfo"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookPing": {
+ "$ref": "./examples/WebhookPing.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/listEvents": {
+ "post": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Lists recent events for the specified webhook.",
+ "operationId": "Webhooks_ListEvents",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/EventListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookListEvents": {
+ "$ref": "./examples/WebhookListEvents.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/getCallbackConfig": {
+ "post": {
+ "tags": [
+ "Webhooks"
+ ],
+ "description": "Gets the configuration of service URI and custom headers for the webhook.",
+ "operationId": "Webhooks_GetCallbackConfig",
+ "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/RegistryNameParameter"
+ },
+ {
+ "$ref": "#/parameters/WebhookNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the request was well-formed and received properly.",
+ "schema": {
+ "$ref": "#/definitions/CallbackConfig"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "WebhookGetCallbackConfig": {
+ "$ref": "./examples/WebhookGetCallbackConfig.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CacheRulesListResult": {
+ "description": "The result of a request to list cache rules for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of cache rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CacheRule"
+ }
+ },
+ "nextLink": {
+ "description": "If provided, client must use NextLink URI to request next list of cache rules.",
+ "type": "string"
+ }
+ }
+ },
+ "CacheRule": {
+ "description": "An object that represents a cache rule for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CacheRuleProperties",
+ "description": "The properties of the cache rule.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "CacheRuleProperties": {
+ "description": "The properties of a cache rule.",
+ "type": "object",
+ "properties": {
+ "credentialSetResourceId": {
+ "description": "The ARM resource ID of the credential store which is associated with the cache rule.",
+ "type": "string"
+ },
+ "sourceRepository": {
+ "description": "Source repository pulled from upstream.",
+ "type": "string"
+ },
+ "targetRepository": {
+ "description": "Target repository specified in docker pull command.\r\nEg: docker pull myregistry.azurecr.io/{targetRepository}:{tag}",
+ "type": "string"
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of the cache rule.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CacheRuleUpdateParameters": {
+ "description": "The parameters for updating a cache rule.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CacheRuleUpdateProperties",
+ "description": "The properties of the cache rule update parameters.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "CacheRuleUpdateProperties": {
+ "description": "The parameters for updating cache rule properties.",
+ "type": "object",
+ "properties": {
+ "credentialSetResourceId": {
+ "description": "The ARM resource ID of the credential store which is associated with the Cache rule.",
+ "type": "string"
+ }
+ }
+ },
+ "CredentialSetListResult": {
+ "description": "The result of a request to list credential sets for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of credential sets. Since this list may be incomplete, the nextLink field should be used to request the next list of credential sets.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CredentialSet"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of credential sets.",
+ "type": "string"
+ }
+ }
+ },
+ "CredentialSet": {
+ "description": "An object that represents a credential set resource for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "Identities associated with the resource. This is used to access the KeyVault secrets."
+ },
+ "properties": {
+ "$ref": "#/definitions/CredentialSetProperties",
+ "description": "The properties of the credential set.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "IdentityProperties": {
+ "description": "Managed identity for the resource.",
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "description": "The principal ID of resource identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tenantId": {
+ "description": "The tenant ID of resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The identity type.",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "SystemAssigned, UserAssigned",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false
+ }
+ },
+ "userAssignedIdentities": {
+ "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/UserIdentityProperties"
+ }
+ }
+ }
+ },
+ "CredentialSetProperties": {
+ "description": "The properties of a credential set resource.",
+ "type": "object",
+ "properties": {
+ "loginServer": {
+ "description": "The credentials are stored for this upstream or login server.",
+ "type": "string"
+ },
+ "authCredentials": {
+ "description": "List of authentication credentials stored for an upstream.\r\nUsually consists of a primary and an optional secondary credential.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AuthCredential"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of credential store resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "UserIdentityProperties": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "description": "The principal id of user assigned identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "clientId": {
+ "description": "The client id of user assigned identity.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Resource": {
+ "description": "An Azure resource.",
+ "required": [
+ "location"
+ ],
+ "properties": {
+ "id": {
+ "description": "The resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "The location of the resource. This cannot be changed after the resource is created.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "tags": {
+ "description": "The tags of the resource.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "systemData": {
+ "$ref": "#/definitions/SystemData",
+ "description": "Metadata pertaining to creation and last modification of the resource.",
+ "type": "object",
+ "readOnly": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "AuthCredential": {
+ "description": "Authentication credential stored for an upstream.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the credential.",
+ "enum": [
+ "Credential1"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CredentialName",
+ "modelAsString": true
+ }
+ },
+ "usernameSecretIdentifier": {
+ "description": "KeyVault Secret URI for accessing the username.",
+ "type": "string"
+ },
+ "passwordSecretIdentifier": {
+ "description": "KeyVault Secret URI for accessing the password.",
+ "type": "string"
+ },
+ "credentialHealth": {
+ "$ref": "#/definitions/CredentialHealth",
+ "description": "This provides data pertaining to the health of the auth credential.",
+ "readOnly": true
+ }
+ }
+ },
+ "ProxyResource": {
+ "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags.",
+ "properties": {
+ "id": {
+ "description": "The resource ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "systemData": {
+ "$ref": "#/definitions/SystemData",
+ "description": "Metadata pertaining to creation and last modification of the resource.",
+ "type": "object",
+ "readOnly": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "CredentialHealth": {
+ "description": "The health of the auth credential.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The health status of credential.",
+ "enum": [
+ "Healthy",
+ "Unhealthy"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CredentialHealthStatus",
+ "modelAsString": true
+ }
+ },
+ "errorCode": {
+ "description": "Error code representing the health check error.",
+ "type": "string"
+ },
+ "errorMessage": {
+ "description": "Descriptive message representing the health check error.",
+ "type": "string"
+ }
+ }
+ },
+ "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
+ },
+ "CredentialSetUpdateParameters": {
+ "description": "The parameters for updating a credential set",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CredentialSetUpdateProperties",
+ "description": "The properties of the credential set update parameters",
+ "x-ms-client-flatten": true
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "Identities associated with the resource. This is used to access the KeyVault secrets."
+ }
+ }
+ },
+ "CredentialSetUpdateProperties": {
+ "description": "The parameters for updating credential set properties.",
+ "type": "object",
+ "properties": {
+ "authCredentials": {
+ "description": "List of authentication credentials stored for an upstream.\r\nUsually consists of a primary and an optional secondary credential.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AuthCredential"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "ImportImageParameters": {
+ "required": [
+ "source"
+ ],
+ "type": "object",
+ "properties": {
+ "source": {
+ "$ref": "#/definitions/ImportSource",
+ "description": "The source of the image."
+ },
+ "targetTags": {
+ "description": "List of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "untaggedTargetRepositories": {
+ "description": "List of strings of repository names to do a manifest only copy. No tag will be created.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "mode": {
+ "description": "When Force, any existing target tags will be overwritten. When NoForce, any existing target tags will fail the operation before any copying begins.",
+ "default": "NoForce",
+ "enum": [
+ "NoForce",
+ "Force"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ImportMode",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ImportSource": {
+ "required": [
+ "sourceImage"
+ ],
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "description": "The resource identifier of the source Azure Container Registry.",
+ "type": "string"
+ },
+ "registryUri": {
+ "description": "The address of the source registry (e.g. 'mcr.microsoft.com').",
+ "type": "string"
+ },
+ "credentials": {
+ "$ref": "#/definitions/ImportSourceCredentials",
+ "description": "Credentials used when importing from a registry uri."
+ },
+ "sourceImage": {
+ "description": "Repository name of the source image.\r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').",
+ "type": "string"
+ }
+ }
+ },
+ "ImportSourceCredentials": {
+ "required": [
+ "password"
+ ],
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username to authenticate with the source registry.",
+ "type": "string"
+ },
+ "password": {
+ "description": "The password used to authenticate with the source registry.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationListResult": {
+ "description": "The result of a request to list container registry operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of container registry operations. Since this list may be incomplete, the nextLink field should be used to request the next list of operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of container registry operations.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDefinition": {
+ "description": "The definition of a container registry operation.",
+ "type": "object",
+ "properties": {
+ "origin": {
+ "description": "The origin information of the container registry operation.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}.",
+ "type": "string"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplayDefinition",
+ "description": "The display information for the container registry operation."
+ },
+ "properties": {
+ "$ref": "#/definitions/OperationPropertiesDefinition",
+ "description": "The properties information for the container registry operation.",
+ "x-ms-client-flatten": true
+ },
+ "isDataAction": {
+ "description": "This property indicates if the operation is an action or a data action\r\nref: https://docs.microsoft.com/en-us/azure/role-based-access-control/role-definitions#management-and-data-operations",
+ "type": "boolean"
+ }
+ }
+ },
+ "OperationDisplayDefinition": {
+ "description": "The display information for a container registry operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "The resource provider name: Microsoft.ContainerRegistry.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "The resource on which the operation is performed.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "The operation that users can perform.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description for the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationPropertiesDefinition": {
+ "description": "The definition of Azure Monitoring properties.",
+ "type": "object",
+ "properties": {
+ "serviceSpecification": {
+ "$ref": "#/definitions/OperationServiceSpecificationDefinition",
+ "description": "The definition of Azure Monitoring service."
+ }
+ }
+ },
+ "OperationServiceSpecificationDefinition": {
+ "description": "The definition of Azure Monitoring list.",
+ "type": "object",
+ "properties": {
+ "metricSpecifications": {
+ "description": "A list of Azure Monitoring metrics definition.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationMetricSpecificationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "logSpecifications": {
+ "description": "A list of Azure Monitoring log definitions.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationLogSpecificationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "OperationMetricSpecificationDefinition": {
+ "description": "The definition of Azure Monitoring metric.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Metric name.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Metric display name.",
+ "type": "string"
+ },
+ "displayDescription": {
+ "description": "Metric description.",
+ "type": "string"
+ },
+ "unit": {
+ "description": "Metric unit.",
+ "type": "string"
+ },
+ "aggregationType": {
+ "description": "Metric aggregation type.",
+ "type": "string"
+ },
+ "internalMetricName": {
+ "description": "Internal metric name.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationLogSpecificationDefinition": {
+ "description": "The definition of Azure Monitoring log.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Log name.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Log display name.",
+ "type": "string"
+ },
+ "blobDuration": {
+ "description": "Log blob duration.",
+ "type": "string"
+ }
+ }
+ },
+ "RegistryNameCheckRequest": {
+ "description": "A request to check whether a container registry name is available.",
+ "required": [
+ "name",
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the container registry.",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "type": "string"
+ },
+ "type": {
+ "description": "The resource type of the container registry. This field must be set to 'Microsoft.ContainerRegistry/registries'.",
+ "enum": [
+ "Microsoft.ContainerRegistry/registries"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ContainerRegistryResourceType",
+ "modelAsString": false
+ }
+ }
+ }
+ },
+ "RegistryNameStatus": {
+ "description": "The result of a request to check the availability of a container registry name.",
+ "type": "object",
+ "properties": {
+ "nameAvailable": {
+ "description": "The value that indicates whether the name is available.",
+ "type": "boolean"
+ },
+ "reason": {
+ "description": "If any, the reason that the name is not available.",
+ "type": "string"
+ },
+ "message": {
+ "description": "If any, the error message that provides more detail for the reason that the name is not available.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateEndpointConnectionListResult": {
+ "description": "The result of a request to list private endpoint connections for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of private endpoint connections. Since this list may be incomplete, the nextLink field should be used to request the next list of private endpoint connections.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of private endpoint connections.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "description": "An object that represents a private endpoint connection for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "description": "The properties of a private endpoint connection.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PrivateEndpointConnectionProperties": {
+ "description": "The properties of a private endpoint connection.",
+ "type": "object",
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The resource of private endpoint."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ },
+ "provisioningState": {
+ "description": "The provisioning state of private endpoint connection resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "PrivateEndpoint": {
+ "description": "The Private Endpoint resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "This is private endpoint resource created with Microsoft.Network resource provider.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "description": "The state of a private link service connection.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The private link service connection status.",
+ "enum": [
+ "Approved",
+ "Pending",
+ "Rejected",
+ "Disconnected"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "description": "The description for connection status. For example if connection is rejected it can indicate reason for rejection.",
+ "type": "string"
+ },
+ "actionsRequired": {
+ "description": "A message indicating if changes on the service provider require any updates on the consumer.",
+ "enum": [
+ "None",
+ "Recreate"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ActionsRequired",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RegistryListResult": {
+ "description": "The result of a request to list container registries.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of container registries. Since this list may be incomplete, the nextLink field should be used to request the next list of container registries.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Registry"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of container registries.",
+ "type": "string"
+ }
+ }
+ },
+ "Registry": {
+ "description": "An object that represents a container registry.",
+ "required": [
+ "sku"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "The SKU of the container registry."
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "The identity of the container registry."
+ },
+ "properties": {
+ "$ref": "#/definitions/RegistryProperties",
+ "description": "The properties of the container registry.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "Sku": {
+ "description": "The SKU of a container registry.",
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The SKU name of the container registry. Required for registry creation.",
+ "enum": [
+ "Classic",
+ "Basic",
+ "Standard",
+ "Premium"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "SkuName",
+ "modelAsString": true
+ }
+ },
+ "tier": {
+ "description": "The SKU tier based on the SKU name.",
+ "enum": [
+ "Classic",
+ "Basic",
+ "Standard",
+ "Premium"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "SkuTier",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RegistryProperties": {
+ "description": "The properties of a container registry.",
+ "type": "object",
+ "properties": {
+ "loginServer": {
+ "description": "The URL that can be used to log into the container registry.",
+ "type": "string",
+ "readOnly": true
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of the container registry in ISO8601 format.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the container registry at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/Status",
+ "description": "The status of the container registry at the time the operation was called.",
+ "readOnly": true
+ },
+ "adminUserEnabled": {
+ "description": "The value that indicates whether the admin user is enabled.",
+ "default": false,
+ "type": "boolean"
+ },
+ "networkRuleSet": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "The network rule set for a container registry."
+ },
+ "policies": {
+ "$ref": "#/definitions/Policies",
+ "description": "The policies for a container registry."
+ },
+ "encryption": {
+ "$ref": "#/definitions/EncryptionProperty",
+ "description": "The encryption settings of container registry."
+ },
+ "dataEndpointEnabled": {
+ "description": "Enable a single data endpoint per region for serving data.",
+ "type": "boolean"
+ },
+ "dataEndpointHostNames": {
+ "description": "List of host names that will serve data when dataEndpointEnabled is true.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "privateEndpointConnections": {
+ "description": "List of private endpoint connections for a container registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "readOnly": true
+ },
+ "publicNetworkAccess": {
+ "description": "Whether or not public network access is allowed for the container registry.",
+ "default": "Enabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "networkRuleBypassOptions": {
+ "description": "Whether to allow trusted Azure services to access a network restricted registry.",
+ "default": "AzureServices",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "zoneRedundancy": {
+ "description": "Whether or not zone redundancy is enabled for this container registry",
+ "default": "Disabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ZoneRedundancy",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "Status": {
+ "description": "The status of an Azure resource at the time the operation was called.",
+ "type": "object",
+ "properties": {
+ "displayStatus": {
+ "description": "The short label for the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "The detailed message for the status, including alerts and error messages.",
+ "type": "string",
+ "readOnly": true
+ },
+ "timestamp": {
+ "format": "date-time",
+ "description": "The timestamp when the status was changed to the current value.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageAccountProperties": {
+ "description": "The properties of a storage account for a container registry. Only applicable to Classic SKU.",
+ "required": [
+ "id"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The resource ID of the storage account.",
+ "type": "string"
+ }
+ }
+ },
+ "NetworkRuleSet": {
+ "description": "The network rule set for a container registry.",
+ "required": [
+ "defaultAction"
+ ],
+ "type": "object",
+ "properties": {
+ "defaultAction": {
+ "description": "The default action of allow or deny when no other rules match.",
+ "default": "Allow",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "DefaultAction",
+ "modelAsString": true
+ }
+ },
+ "ipRules": {
+ "description": "The IP ACL rules.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IPRule"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "Policies": {
+ "description": "The policies for a container registry.",
+ "type": "object",
+ "properties": {
+ "quarantinePolicy": {
+ "$ref": "#/definitions/QuarantinePolicy",
+ "description": "The quarantine policy for a container registry."
+ },
+ "trustPolicy": {
+ "$ref": "#/definitions/TrustPolicy",
+ "description": "The content trust policy for a container registry."
+ },
+ "retentionPolicy": {
+ "$ref": "#/definitions/RetentionPolicy",
+ "description": "The retention policy for a container registry."
+ },
+ "exportPolicy": {
+ "$ref": "#/definitions/ExportPolicy",
+ "description": "The export policy for a container registry."
+ }
+ }
+ },
+ "EncryptionProperty": {
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "Indicates whether or not the encryption is enabled for container registry.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "EncryptionStatus",
+ "modelAsString": true
+ }
+ },
+ "keyVaultProperties": {
+ "$ref": "#/definitions/KeyVaultProperties",
+ "description": "Key vault properties."
+ }
+ }
+ },
+ "PackageType": {
+ "description": "The properties of a package type.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the package type.",
+ "type": "string"
+ },
+ "endpoint": {
+ "description": "The endpoint of the package type.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "IPRule": {
+ "description": "IP rule with specific IP or IP range in CIDR format.",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "action": {
+ "description": "The action of IP ACL rule.",
+ "default": "Allow",
+ "enum": [
+ "Allow"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "Action",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed.",
+ "type": "string",
+ "x-ms-client-name": "IPAddressOrRange"
+ }
+ }
+ },
+ "QuarantinePolicy": {
+ "description": "The quarantine policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "TrustPolicy": {
+ "description": "The content trust policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of trust policy.",
+ "default": "Notary",
+ "enum": [
+ "Notary"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TrustPolicyType",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RetentionPolicy": {
+ "description": "The retention policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "days": {
+ "format": "int32",
+ "description": "The number of days to retain an untagged manifest after which it gets purged.",
+ "default": 7,
+ "type": "integer"
+ },
+ "lastUpdatedTime": {
+ "format": "date-time",
+ "description": "The timestamp when the policy was last updated.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "disabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ExportPolicy": {
+ "description": "The export policy for a container registry.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The value that indicates whether the policy is enabled or not.",
+ "default": "enabled",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ExportPolicyStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "KeyVaultProperties": {
+ "type": "object",
+ "properties": {
+ "keyIdentifier": {
+ "description": "Key vault uri to access the encryption key.",
+ "type": "string"
+ },
+ "versionedKeyIdentifier": {
+ "description": "The fully qualified key identifier that includes the version of the key that is actually used for encryption.",
+ "type": "string",
+ "readOnly": true
+ },
+ "identity": {
+ "description": "The client id of the identity which will be used to access key vault.",
+ "type": "string"
+ },
+ "keyRotationEnabled": {
+ "description": "Auto key rotation status for a CMK enabled registry.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "lastKeyRotationTimestamp": {
+ "format": "date-time",
+ "description": "Timestamp of the last successful key rotation.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RegistryUpdateParameters": {
+ "description": "The parameters for updating a container registry.",
+ "type": "object",
+ "properties": {
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties",
+ "description": "The identity of the container registry."
+ },
+ "tags": {
+ "description": "The tags for the container registry.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "The SKU of the container registry."
+ },
+ "properties": {
+ "$ref": "#/definitions/RegistryPropertiesUpdateParameters",
+ "description": "The properties that the container registry will be updated with.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RegistryPropertiesUpdateParameters": {
+ "description": "The parameters for updating the properties of a container registry.",
+ "type": "object",
+ "properties": {
+ "adminUserEnabled": {
+ "description": "The value that indicates whether the admin user is enabled.",
+ "type": "boolean"
+ },
+ "networkRuleSet": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "The network rule set for a container registry."
+ },
+ "policies": {
+ "$ref": "#/definitions/Policies",
+ "description": "The policies for a container registry."
+ },
+ "encryption": {
+ "$ref": "#/definitions/EncryptionProperty",
+ "description": "The encryption settings of container registry."
+ },
+ "dataEndpointEnabled": {
+ "description": "Enable a single data endpoint per region for serving data.",
+ "type": "boolean"
+ },
+ "publicNetworkAccess": {
+ "description": "Whether or not public network access is allowed for the container registry.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "networkRuleBypassOptions": {
+ "description": "Whether to allow trusted Azure services to access a network restricted registry.",
+ "default": "AzureServices",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "RegistryUsageListResult": {
+ "description": "The result of a request to get container registry quota usages.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of container registry quota usages.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryUsage"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "RegistryUsage": {
+ "description": "The quota usage for a container registry.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the usage.",
+ "type": "string"
+ },
+ "limit": {
+ "format": "int64",
+ "description": "The limit of the usage.",
+ "type": "integer"
+ },
+ "currentValue": {
+ "format": "int64",
+ "description": "The current value of the usage.",
+ "type": "integer"
+ },
+ "unit": {
+ "description": "The unit of measurement.",
+ "enum": [
+ "Count",
+ "Bytes"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RegistryUsageUnit",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "PrivateLinkResourceListResult": {
+ "description": "The result of a request to list private link resources for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of private link resources. Since this list may be incomplete, the nextLink field should be used to request the next list of private link resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of private link resources.",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkResource": {
+ "description": "A resource that supports private link capabilities.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The resource type is private link resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The resource ID.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "A resource that supports private link capabilities.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PrivateLinkResourceProperties": {
+ "description": "The properties of a private link resource.",
+ "type": "object",
+ "properties": {
+ "groupId": {
+ "description": "The private link resource group id.",
+ "type": "string"
+ },
+ "requiredMembers": {
+ "description": "The private link resource required member names.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "requiredZoneNames": {
+ "description": "The private link resource Private link DNS zone name.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "RegistryListCredentialsResult": {
+ "description": "The response from the ListCredentials operation.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username for a container registry.",
+ "type": "string"
+ },
+ "passwords": {
+ "description": "The list of passwords for a container registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegistryPassword"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "RegistryPassword": {
+ "description": "The login password for the container registry.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The password name.",
+ "enum": [
+ "password",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PasswordName",
+ "modelAsString": false
+ }
+ },
+ "value": {
+ "description": "The password value.",
+ "type": "string"
+ }
+ }
+ },
+ "RegenerateCredentialParameters": {
+ "description": "The parameters used to regenerate the login credential.",
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Specifies name of the password which should be regenerated -- password or password2.",
+ "enum": [
+ "password",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PasswordName",
+ "modelAsString": false
+ }
+ }
+ }
+ },
+ "ReplicationListResult": {
+ "description": "The result of a request to list replications for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of replications. Since this list may be incomplete, the nextLink field should be used to request the next list of replications.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Replication"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of replications.",
+ "type": "string"
+ }
+ }
+ },
+ "Replication": {
+ "description": "An object that represents a replication for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ReplicationProperties",
+ "description": "The properties of the replication.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ReplicationProperties": {
+ "description": "The properties of a replication.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "The provisioning state of the replication at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/Status",
+ "description": "The status of the replication at the time the operation was called.",
+ "readOnly": true
+ },
+ "regionEndpointEnabled": {
+ "description": "Specifies whether the replication's regional endpoint is enabled. Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue to be synced with other replications.",
+ "default": true,
+ "type": "boolean"
+ },
+ "zoneRedundancy": {
+ "description": "Whether or not zone redundancy is enabled for this container registry replication",
+ "default": "Disabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ZoneRedundancy",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ReplicationUpdateParameters": {
+ "description": "The parameters for updating a replication.",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "The tags for the replication.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/ReplicationUpdateParametersProperties",
+ "description": "The parameters for updating a replication's properties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ReplicationUpdateParametersProperties": {
+ "type": "object",
+ "properties": {
+ "regionEndpointEnabled": {
+ "description": "Specifies whether the replication's regional endpoint is enabled. Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue to be synced with other replications.",
+ "type": "boolean"
+ }
+ }
+ },
+ "ScopeMapListResult": {
+ "description": "The result of a request to list scope maps for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of scope maps. Since this list may be incomplete, the nextLink field should be used to request the next list of scope maps.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ScopeMap"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of scope maps.",
+ "type": "string"
+ }
+ }
+ },
+ "ScopeMap": {
+ "description": "An object that represents a scope map for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ScopeMapProperties",
+ "description": "The properties of the scope map.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ScopeMapProperties": {
+ "description": "The properties of a scope map.",
+ "required": [
+ "actions"
+ ],
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The user friendly description of the scope map.",
+ "type": "string"
+ },
+ "type": {
+ "description": "The type of the scope map. E.g. BuildIn scope map.",
+ "type": "string",
+ "readOnly": true
+ },
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of scope map.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "actions": {
+ "description": "The list of scoped permissions for registry artifacts.\r\nE.g. repositories/repository-name/content/read,\r\nrepositories/repository-name/metadata/write",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ScopeMapUpdateParameters": {
+ "description": "The properties for updating the scope map.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ScopeMapPropertiesUpdateParameters",
+ "description": "The update parameters for scope map properties.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ScopeMapPropertiesUpdateParameters": {
+ "description": "The update parameters for scope map properties.",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The user friendly description of the scope map.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of scope permissions for registry artifacts.\r\nE.g. repositories/repository-name/pull, \r\nrepositories/repository-name/delete",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "TokenListResult": {
+ "description": "The result of a request to list tokens for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of tokens. Since this list may be incomplete, the nextLink field should be used to request the next list of tokens.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Token"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of tokens.",
+ "type": "string"
+ }
+ }
+ },
+ "Token": {
+ "description": "An object that represents a token for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TokenProperties",
+ "description": "The properties of the token.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TokenProperties": {
+ "description": "The properties of a token.",
+ "type": "object",
+ "properties": {
+ "creationDate": {
+ "format": "date-time",
+ "description": "The creation date of scope map.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "scopeMapId": {
+ "description": "The resource ID of the scope map to which the token will be associated with.",
+ "type": "string"
+ },
+ "credentials": {
+ "$ref": "#/definitions/TokenCredentialsProperties",
+ "description": "The credentials that can be used for authenticating the token."
+ },
+ "status": {
+ "description": "The status of the token example enabled or disabled.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenStatus",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "TokenCredentialsProperties": {
+ "description": "The properties of the credentials that can be used for authenticating the token.",
+ "type": "object",
+ "properties": {
+ "certificates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TokenCertificate"
+ },
+ "x-ms-identifiers": [
+ "thumbprint"
+ ]
+ },
+ "passwords": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TokenPassword"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "ActiveDirectoryObject": {
+ "description": "The Active Directory Object that will be used for authenticating the token of a container registry.",
+ "type": "object",
+ "properties": {
+ "objectId": {
+ "description": "The user/group/application object ID for Active Directory Object that will be used for authenticating the token of a container registry.",
+ "type": "string"
+ },
+ "tenantId": {
+ "description": "The tenant ID of user/group/application object Active Directory Object that will be used for authenticating the token of a container registry.",
+ "type": "string"
+ }
+ }
+ },
+ "TokenCertificate": {
+ "description": "The properties of a certificate used for authenticating a token.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "enum": [
+ "certificate1",
+ "certificate2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenCertificateName",
+ "modelAsString": true
+ }
+ },
+ "expiry": {
+ "format": "date-time",
+ "description": "The expiry datetime of the certificate.",
+ "type": "string"
+ },
+ "thumbprint": {
+ "description": "The thumbprint of the certificate.",
+ "type": "string"
+ },
+ "encodedPemCertificate": {
+ "description": "Base 64 encoded string of the public certificate1 in PEM format that will be used for authenticating the token.",
+ "type": "string"
+ }
+ }
+ },
+ "TokenPassword": {
+ "description": "The password that will be used for authenticating the token of a container registry.",
+ "type": "object",
+ "properties": {
+ "creationTime": {
+ "format": "date-time",
+ "description": "The creation datetime of the password.",
+ "type": "string"
+ },
+ "expiry": {
+ "format": "date-time",
+ "description": "The expiry datetime of the password.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The password name \"password1\" or \"password2\"",
+ "enum": [
+ "password1",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenPasswordName",
+ "modelAsString": true
+ }
+ },
+ "value": {
+ "description": "The password value.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TokenUpdateParameters": {
+ "description": "The parameters for updating a token.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TokenUpdateProperties",
+ "description": "The properties of the token update parameters.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TokenUpdateProperties": {
+ "description": "The parameters for updating token properties.",
+ "type": "object",
+ "properties": {
+ "scopeMapId": {
+ "description": "The resource ID of the scope map to which the token will be associated with.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the token example enabled or disabled.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenStatus",
+ "modelAsString": true
+ }
+ },
+ "credentials": {
+ "$ref": "#/definitions/TokenCredentialsProperties",
+ "description": "The credentials that can be used for authenticating the token."
+ }
+ }
+ },
+ "GenerateCredentialsParameters": {
+ "description": "The parameters used to generate credentials for a specified token or user of a container registry.",
+ "type": "object",
+ "properties": {
+ "tokenId": {
+ "description": "The resource ID of the token for which credentials have to be generated.",
+ "type": "string"
+ },
+ "expiry": {
+ "format": "date-time",
+ "description": "The expiry date of the generated credentials after which the credentials become invalid.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Specifies name of the password which should be regenerated if any -- password1 or password2.",
+ "enum": [
+ "password1",
+ "password2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "TokenPasswordName",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "GenerateCredentialsResult": {
+ "description": "The response from the GenerateCredentials operation.",
+ "type": "object",
+ "properties": {
+ "username": {
+ "description": "The username for a container registry.",
+ "type": "string"
+ },
+ "passwords": {
+ "description": "The list of passwords for a container registry.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TokenPassword"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "WebhookListResult": {
+ "description": "The result of a request to list webhooks for a container registry.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of webhooks. Since this list may be incomplete, the nextLink field should be used to request the next list of webhooks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of webhooks.",
+ "type": "string"
+ }
+ }
+ },
+ "Webhook": {
+ "description": "An object that represents a webhook for a container registry.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WebhookProperties",
+ "description": "The properties of the webhook.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WebhookProperties": {
+ "description": "The properties of a webhook.",
+ "required": [
+ "actions"
+ ],
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The status of the webhook at the time the operation was called.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookStatus",
+ "modelAsString": true
+ }
+ },
+ "scope": {
+ "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of actions that trigger the webhook to post notifications.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "push",
+ "delete",
+ "quarantine",
+ "chart_push",
+ "chart_delete"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookAction",
+ "modelAsString": true
+ }
+ }
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the webhook at the time the operation was called.",
+ "enum": [
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "WebhookCreateParameters": {
+ "description": "The parameters for creating a webhook.",
+ "required": [
+ "location"
+ ],
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "The tags for the webhook.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "location": {
+ "description": "The location of the webhook. This cannot be changed after the resource is created.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/WebhookPropertiesCreateParameters",
+ "description": "The properties that the webhook will be created with.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WebhookPropertiesCreateParameters": {
+ "description": "The parameters for creating the properties of a webhook.",
+ "required": [
+ "serviceUri",
+ "actions"
+ ],
+ "type": "object",
+ "properties": {
+ "serviceUri": {
+ "description": "The service URI for the webhook to post notifications.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "customHeaders": {
+ "description": "Custom headers that will be added to the webhook notifications.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-secret": true
+ },
+ "status": {
+ "description": "The status of the webhook at the time the operation was called.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookStatus",
+ "modelAsString": true
+ }
+ },
+ "scope": {
+ "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of actions that trigger the webhook to post notifications.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "push",
+ "delete",
+ "quarantine",
+ "chart_push",
+ "chart_delete"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookAction",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "WebhookUpdateParameters": {
+ "description": "The parameters for updating a webhook.",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "The tags for the webhook.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/WebhookPropertiesUpdateParameters",
+ "description": "The properties that the webhook will be updated with.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WebhookPropertiesUpdateParameters": {
+ "description": "The parameters for updating the properties of a webhook.",
+ "type": "object",
+ "properties": {
+ "serviceUri": {
+ "description": "The service URI for the webhook to post notifications.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "customHeaders": {
+ "description": "Custom headers that will be added to the webhook notifications.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-secret": true
+ },
+ "status": {
+ "description": "The status of the webhook at the time the operation was called.",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookStatus",
+ "modelAsString": true
+ }
+ },
+ "scope": {
+ "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.",
+ "type": "string"
+ },
+ "actions": {
+ "description": "The list of actions that trigger the webhook to post notifications.",
+ "type": "array",
+ "items": {
+ "enum": [
+ "push",
+ "delete",
+ "quarantine",
+ "chart_push",
+ "chart_delete"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "WebhookAction",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "EventInfo": {
+ "description": "The basic information of an event.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The event ID.",
+ "type": "string"
+ }
+ }
+ },
+ "EventListResult": {
+ "description": "The result of a request to list events for a webhook.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of events. Since this list may be incomplete, the nextLink field should be used to request the next list of events.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Event"
+ }
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next list of events.",
+ "type": "string"
+ }
+ }
+ },
+ "Event": {
+ "description": "The event for a webhook.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/EventInfo"
+ }
+ ],
+ "properties": {
+ "eventRequestMessage": {
+ "$ref": "#/definitions/EventRequestMessage",
+ "description": "The event request message sent to the service URI."
+ },
+ "eventResponseMessage": {
+ "$ref": "#/definitions/EventResponseMessage",
+ "description": "The event response message received from the service URI."
+ }
+ }
+ },
+ "EventRequestMessage": {
+ "description": "The event request message sent to the service URI.",
+ "type": "object",
+ "properties": {
+ "content": {
+ "$ref": "#/definitions/EventContent",
+ "description": "The content of the event request message."
+ },
+ "headers": {
+ "description": "The headers of the event request message.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "method": {
+ "description": "The HTTP method used to send the event request message.",
+ "type": "string"
+ },
+ "requestUri": {
+ "description": "The URI used to send the event request message.",
+ "type": "string"
+ },
+ "version": {
+ "description": "The HTTP message version.",
+ "type": "string"
+ }
+ }
+ },
+ "EventResponseMessage": {
+ "description": "The event response message received from the service URI.",
+ "type": "object",
+ "properties": {
+ "content": {
+ "description": "The content of the event response message.",
+ "type": "string"
+ },
+ "headers": {
+ "description": "The headers of the event response message.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "reasonPhrase": {
+ "description": "The reason phrase of the event response message.",
+ "type": "string"
+ },
+ "statusCode": {
+ "description": "The status code of the event response message.",
+ "type": "string"
+ },
+ "version": {
+ "description": "The HTTP message version.",
+ "type": "string"
+ }
+ }
+ },
+ "EventContent": {
+ "description": "The content of the event request message.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The event ID.",
+ "type": "string"
+ },
+ "timestamp": {
+ "format": "date-time",
+ "description": "The time at which the event occurred.",
+ "type": "string"
+ },
+ "action": {
+ "description": "The action that encompasses the provided event.",
+ "type": "string"
+ },
+ "target": {
+ "$ref": "#/definitions/Target",
+ "description": "The target of the event."
+ },
+ "request": {
+ "$ref": "#/definitions/Request",
+ "description": "The request that generated the event."
+ },
+ "actor": {
+ "$ref": "#/definitions/Actor",
+ "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request."
+ },
+ "source": {
+ "$ref": "#/definitions/Source",
+ "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it."
+ }
+ }
+ },
+ "Target": {
+ "description": "The target of the event.",
+ "type": "object",
+ "properties": {
+ "mediaType": {
+ "description": "The MIME type of the referenced object.",
+ "type": "string"
+ },
+ "size": {
+ "format": "int64",
+ "description": "The number of bytes of the content. Same as Length field.",
+ "type": "integer"
+ },
+ "digest": {
+ "description": "The digest of the content, as defined by the Registry V2 HTTP API Specification.",
+ "type": "string"
+ },
+ "length": {
+ "format": "int64",
+ "description": "The number of bytes of the content. Same as Size field.",
+ "type": "integer"
+ },
+ "repository": {
+ "description": "The repository name.",
+ "type": "string"
+ },
+ "url": {
+ "description": "The direct URL to the content.",
+ "type": "string"
+ },
+ "tag": {
+ "description": "The tag name.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the artifact.",
+ "type": "string"
+ },
+ "version": {
+ "description": "The version of the artifact.",
+ "type": "string"
+ }
+ }
+ },
+ "Request": {
+ "description": "The request that generated the event.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ID of the request that initiated the event.",
+ "type": "string"
+ },
+ "addr": {
+ "description": "The IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request.",
+ "type": "string"
+ },
+ "host": {
+ "description": "The externally accessible hostname of the registry instance, as specified by the http host header on incoming requests.",
+ "type": "string"
+ },
+ "method": {
+ "description": "The request method that generated the event.",
+ "type": "string"
+ },
+ "useragent": {
+ "description": "The user agent header of the request.",
+ "type": "string"
+ }
+ }
+ },
+ "Actor": {
+ "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The subject or username associated with the request context that generated the event.",
+ "type": "string"
+ }
+ }
+ },
+ "Source": {
+ "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it.",
+ "type": "object",
+ "properties": {
+ "addr": {
+ "description": "The IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port.",
+ "type": "string"
+ },
+ "instanceID": {
+ "description": "The running instance of an application. Changes after each restart.",
+ "type": "string"
+ }
+ }
+ },
+ "CallbackConfig": {
+ "description": "The configuration of service URI and custom headers for the webhook.",
+ "required": [
+ "serviceUri"
+ ],
+ "type": "object",
+ "properties": {
+ "serviceUri": {
+ "description": "The service URI for the webhook to post notifications.",
+ "type": "string"
+ },
+ "customHeaders": {
+ "description": "Custom headers that will be added to the webhook notifications.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "RegistryNameParameter": {
+ "name": "registryName",
+ "in": "path",
+ "description": "The name of the container registry.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "WebhookNameParameter": {
+ "name": "webhookName",
+ "in": "path",
+ "description": "The name of the webhook.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ReplicationNameParameter": {
+ "name": "replicationName",
+ "in": "path",
+ "description": "The name of the replication.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "ScopeMapNameParameter": {
+ "name": "scopeMapName",
+ "in": "path",
+ "description": "The name of the scope map.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-_]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "TokenNameParameter": {
+ "name": "tokenName",
+ "in": "path",
+ "description": "The name of the token.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "PrivateEndpointConnectionNameParameter": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "description": "The name of the private endpoint connection.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "GroupNameParameter": {
+ "name": "groupName",
+ "in": "path",
+ "description": "The name of the private link resource.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "CredentialSetNameParameter": {
+ "name": "credentialSetName",
+ "in": "path",
+ "description": "The name of the credential set.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ },
+ "CacheRuleNameParameter": {
+ "name": "cacheRuleName",
+ "in": "path",
+ "description": "The name of the cache rule.",
+ "required": true,
+ "type": "string",
+ "maxLength": 50,
+ "minLength": 5,
+ "pattern": "^[a-zA-Z0-9-]*$",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleCreate.json
new file mode 100644
index 000000000000..3183912d56fe
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleCreate.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule",
+ "cacheRuleCreateParameters": {
+ "properties": {
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule/operationStatuses/cacherules-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleDelete.json
new file mode 100644
index 000000000000..4714c49edecd
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule/operationStatuses/cacherules-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleGet.json
new file mode 100644
index 000000000000..c3754476ee7c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleGet.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleList.json
new file mode 100644
index 000000000000..3b42dc22f6b7
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleList.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleUpdate.json
new file mode 100644
index 000000000000..bcaafb7d0a6a
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CacheRuleUpdate.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "cacheRuleName": "myCacheRule",
+ "cacheRuleUpdateParameters": {
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet2",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule/operationStatuses/cacherules-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/cacheRules",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/cacheRules/myCacheRule",
+ "name": "myCacheRule",
+ "properties": {
+ "credentialSetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet2",
+ "sourceRepository": "docker.io/library/hello-world",
+ "targetRepository": "cached-docker-hub/hello-world",
+ "creationDate": "2022-11-07T18:20:33.8374968+00:00",
+ "provisioningState": "Updating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetCreate.json
new file mode 100644
index 000000000000..045b8781adf4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetCreate.json
@@ -0,0 +1,83 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet",
+ "credentialSetCreateParameters": {
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password"
+ }
+ ]
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet/operationStatuses/credentialsets-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetDelete.json
new file mode 100644
index 000000000000..30868ef61035
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet/operationStatuses/credentialsets-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetGet.json
new file mode 100644
index 000000000000..28c1a1d97e79
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetGet.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetList.json
new file mode 100644
index 000000000000..48fcc3bf9567
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetList.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetUpdate.json
new file mode 100644
index 000000000000..67afbf40a5ba
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/CredentialSetUpdate.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "credentialSetName": "myCredentialSet",
+ "credentialSetUpdateParameters": {
+ "properties": {
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username2",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password2"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username2",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password2",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet/operationStatuses/credentialsets-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "type": "Microsoft.ContainerRegistry/registries/credentialSets",
+ "identity": {
+ "principalId": "00000000-0000-0000-0000-000000000000",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "type": "SystemAssigned"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/credentialSets/myCredentialSet",
+ "name": "myCredentialSet",
+ "properties": {
+ "loginServer": "docker.io",
+ "authCredentials": [
+ {
+ "name": "Credential1",
+ "usernameSecretIdentifier": "https://myvault.vault.azure.net/secrets/username2",
+ "passwordSecretIdentifier": "https://myvault.vault.azure.net/secrets/password2",
+ "credentialHealth": {
+ "status": "Healthy"
+ }
+ }
+ ],
+ "creationDate": "2022-11-07T18:20:08.012276+00:00",
+ "provisioningState": "Updating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageByManifestDigest.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageByManifestDigest.json
new file mode 100644
index 000000000000..ec76fe24350a
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageByManifestDigest.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "parameters": {
+ "source": {
+ "resourceId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry",
+ "sourceImage": "sourceRepository@sha256:0000000000000000000000000000000000000000000000000000000000000000"
+ },
+ "targetTags": [
+ "targetRepository:targetTag"
+ ],
+ "untaggedTargetRepositories": [
+ "targetRepository1"
+ ],
+ "mode": "Force"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/locations/location/operationResults/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageByTag.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageByTag.json
new file mode 100644
index 000000000000..284a51ec2651
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageByTag.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "parameters": {
+ "source": {
+ "resourceId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry",
+ "sourceImage": "sourceRepository:sourceTag"
+ },
+ "targetTags": [
+ "targetRepository:targetTag"
+ ],
+ "untaggedTargetRepositories": [
+ "targetRepository1"
+ ],
+ "mode": "Force"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/locations/location/operationResults/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageFromPublicRegistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageFromPublicRegistry.json
new file mode 100644
index 000000000000..8c4d727c043e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ImportImageFromPublicRegistry.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "parameters": {
+ "source": {
+ "registryUri": "registry.hub.docker.com",
+ "sourceImage": "library/hello-world"
+ },
+ "targetTags": [
+ "targetRepository:targetTag"
+ ],
+ "untaggedTargetRepositories": [
+ "targetRepository1"
+ ],
+ "mode": "Force"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/locations/location/operationResults/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/OperationList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/OperationList.json
new file mode 100644
index 000000000000..b4f2ed4e06d8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/OperationList.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ContainerRegistry/locations/deleteVirtualNetworkOrSubnets/action",
+ "display": {
+ "provider": "Microsoft ContainerRegistry",
+ "resource": "",
+ "operation": "Delete virtual network or subnets notifications",
+ "description": "Notifies Microsoft.ContainerRegistry that virtual network or subnet is being deleted"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionCreateOrUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionCreateOrUpdate.json
new file mode 100644
index 000000000000..c4faa08a560c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionCreateOrUpdate.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "privateEndpointConnectionName": "myConnection",
+ "privateEndpointConnection": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection/operationStatuses/privateendpointconnections-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionDelete.json
new file mode 100644
index 000000000000..6c20f974ce89
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "privateEndpointConnectionName": "myConnection"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection/operationStatuses/privateendpointconnections-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionGet.json
new file mode 100644
index 000000000000..3d026cd023cd
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionGet.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "privateEndpointConnectionName": "myConnection"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionList.json
new file mode 100644
index 000000000000..7a8b409002e6
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/PrivateEndpointConnectionList.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection",
+ "name": "myConnection",
+ "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "Auto-Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCheckNameAvailable.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCheckNameAvailable.json
new file mode 100644
index 000000000000..bc3e240962b4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCheckNameAvailable.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "registryNameCheckRequest": {
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCheckNameNotAvailable.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCheckNameNotAvailable.json
new file mode 100644
index 000000000000..1cec59760415
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCheckNameNotAvailable.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "registryNameCheckRequest": {
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": false,
+ "reason": "AlreadyExists",
+ "message": "The registry myRegistry is already in use."
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCreate.json
new file mode 100644
index 000000000000..32543a1b3b2d
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCreate.json
@@ -0,0 +1,126 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "registry": {
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "properties": {
+ "adminUserEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Creating",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCreateZoneRedundant.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCreateZoneRedundant.json
new file mode 100644
index 000000000000..8c0a6635aae3
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryCreateZoneRedundant.json
@@ -0,0 +1,129 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "registry": {
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "properties": {
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Creating",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryDelete.json
new file mode 100644
index 000000000000..31f391358f02
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGenerateCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGenerateCredentials.json
new file mode 100644
index 000000000000..c96cf923e525
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGenerateCredentials.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "generateCredentialsParameters": {
+ "tokenId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "expiry": "2020-12-31T15:59:59.0707808Z"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "username": "myToken",
+ "passwords": [
+ {
+ "expiry": "2020-12-31T15:59:59.0707808Z",
+ "name": "password1",
+ "value": "00000000000000000000000000000000"
+ },
+ {
+ "expiry": "2020-12-31T15:59:59.0707808Z",
+ "name": "password2",
+ "value": "00000000000000000000000000000000"
+ }
+ ]
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGet.json
new file mode 100644
index 000000000000..25389eaddda0
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGet.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGetPrivateLinkResource.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGetPrivateLinkResource.json
new file mode 100644
index 000000000000..ffd531a7661b
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryGetPrivateLinkResource.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "groupName": "registry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateLinkResources/registry",
+ "name": "registry",
+ "type": "Microsoft.ContainerRegistry/registries/privateLinkResources",
+ "properties": {
+ "groupId": "registry",
+ "requiredMembers": [
+ "registry",
+ "registry_data_myregion"
+ ],
+ "requiredZoneNames": [
+ "privatelink.azurecr.io"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryList.json
new file mode 100644
index 000000000000..6c822ebf9d22
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryList.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListByResourceGroup.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListByResourceGroup.json
new file mode 100644
index 000000000000..f70f8e6c8530
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListByResourceGroup.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": false,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListCredentials.json
new file mode 100644
index 000000000000..86f88eaba752
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListCredentials.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "username": "myRegistry",
+ "passwords": [
+ {
+ "name": "password",
+ "value": "00000000000000000000000000000000"
+ },
+ {
+ "name": "password2",
+ "value": "00000000000000000000000000000000"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListPrivateLinkResources.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListPrivateLinkResources.json
new file mode 100644
index 000000000000..a643941b2181
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListPrivateLinkResources.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateLinkResources/registry",
+ "name": "registry",
+ "type": "Microsoft.ContainerRegistry/registries/privateLinkResources",
+ "properties": {
+ "groupId": "registry",
+ "requiredMembers": [
+ "registry",
+ "registry_data_myregion"
+ ],
+ "requiredZoneNames": [
+ "privatelink.azurecr.io"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListUsages.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListUsages.json
new file mode 100644
index 000000000000..62d628568fb4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryListUsages.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Size",
+ "limit": 107374182400,
+ "currentValue": 12345678,
+ "unit": "Bytes"
+ },
+ {
+ "name": "Webhooks",
+ "limit": 10,
+ "currentValue": 2,
+ "unit": "Count"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryRegenerateCredential.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryRegenerateCredential.json
new file mode 100644
index 000000000000..8e5d66dd1481
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryRegenerateCredential.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "regenerateCredentialParameters": {
+ "name": "password"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "username": "myRegistry",
+ "passwords": [
+ {
+ "name": "password",
+ "value": "00000000000000000000000000000000"
+ },
+ {
+ "name": "password2",
+ "value": "00000000000000000000000000000000"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryUpdate.json
new file mode 100644
index 000000000000..f355ebf8e5b6
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/RegistryUpdate.json
@@ -0,0 +1,128 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "registryUpdateParameters": {
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "properties": {
+ "adminUserEnabled": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Succeeded",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/operationStatuses/registries-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry",
+ "name": "myRegistry",
+ "type": "Microsoft.ContainerRegistry/registries",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "sku": {
+ "name": "Standard",
+ "tier": "Standard"
+ },
+ "properties": {
+ "loginServer": "myRegistry.azurecr-test.io",
+ "creationDate": "2021-06-15T21:38:26.1537861Z",
+ "provisioningState": "Updating",
+ "adminUserEnabled": true,
+ "networkRuleSet": {
+ "defaultAction": "Allow",
+ "ipRules": []
+ },
+ "policies": {
+ "quarantinePolicy": {
+ "status": "disabled"
+ },
+ "trustPolicy": {
+ "type": "Notary",
+ "status": "disabled"
+ },
+ "retentionPolicy": {
+ "days": 7,
+ "lastUpdatedTime": "2021-06-15T21:40:12.8506835+00:00",
+ "status": "disabled"
+ },
+ "exportPolicy": {
+ "status": "enabled"
+ }
+ },
+ "encryption": {
+ "status": "disabled"
+ },
+ "status": null,
+ "dataEndpointEnabled": false,
+ "dataEndpointHostNames": [],
+ "privateEndpointConnections": [],
+ "publicNetworkAccess": "Enabled",
+ "networkRuleBypassOptions": "AzureServices",
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationCreate.json
new file mode 100644
index 000000000000..acb7c72cf2b4
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationCreate.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication",
+ "replication": {
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Creating",
+ "status": {
+ "displayStatus": "Provisioning",
+ "message": "The replication is provisioning.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationCreateZoneRedundant.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationCreateZoneRedundant.json
new file mode 100644
index 000000000000..d5f429a1013c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationCreateZoneRedundant.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication",
+ "replication": {
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Creating",
+ "status": {
+ "displayStatus": "Provisioning",
+ "message": "The replication is provisioning.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationDelete.json
new file mode 100644
index 000000000000..5c5d2282d94e
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationGet.json
new file mode 100644
index 000000000000..e5f33d6d2d48
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationGet.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationList.json
new file mode 100644
index 000000000000..8c5e5c7720a5
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationList.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationUpdate.json
new file mode 100644
index 000000000000..df5e8862eff7
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ReplicationUpdate.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "replicationName": "myReplication",
+ "replicationUpdateParameters": {
+ "tags": {
+ "key": "value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "displayStatus": "Ready",
+ "message": "The replication is ready.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication/operationStatuses/replications-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication",
+ "name": "myReplication",
+ "type": "Microsoft.ContainerRegistry/registries/replications",
+ "location": "eastus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "provisioningState": "Updating",
+ "status": {
+ "displayStatus": "Provisioning",
+ "message": "The replication is provisioning.",
+ "timestamp": "2017-03-01T23:15:37.0707808Z"
+ },
+ "regionEndpointEnabled": true,
+ "zoneRedundancy": "Disabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapCreate.json
new file mode 100644
index 000000000000..e559234299f6
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapCreate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap",
+ "scopeMapCreateParameters": {
+ "properties": {
+ "description": "Developer Scopes",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap/operationStatuses/scopemaps-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapDelete.json
new file mode 100644
index 000000000000..69487398834f
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap/operationStatuses/scopemaps-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapGet.json
new file mode 100644
index 000000000000..052082d4f68b
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapGet.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapList.json
new file mode 100644
index 000000000000..198e0dfa9699
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/delete"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapUpdate.json
new file mode 100644
index 000000000000..6cac0fe09dbb
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/ScopeMapUpdate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "scopeMapName": "myScopeMap",
+ "scopeMapUpdateParameters": {
+ "properties": {
+ "description": "Developer Scopes",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/contentRead"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/contentRead"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap/operationStatuses/scopemaps-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "name": "myScopeMap",
+ "type": "Microsoft.ContainerRegistry/registries/scopeMaps",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "type": "IsUserDefined",
+ "actions": [
+ "repositories/myrepository/contentWrite",
+ "repositories/myrepository/contentRead"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenCreate.json
new file mode 100644
index 000000000000..9b26948afcea
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenCreate.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken",
+ "tokenCreateParameters": {
+ "properties": {
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "status": "disabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "disabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "thumbprint": "feeb79a888bf1415f8e17c4965a2a5bb5c8a2ff7",
+ "expiry": "2020-12-04T15:32:48.0707808Z"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken/operationStatuses/tokens-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "disabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "thumbprint": "feeb79a888bf1415f8e17c4965a2a5bb5c8a2ff7",
+ "expiry": "2020-12-04T15:32:48.0707808Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenDelete.json
new file mode 100644
index 000000000000..e0c8185f0cd5
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken/operationStatuses/tokens-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenGet.json
new file mode 100644
index 000000000000..46ad2a4ca7d8
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenGet.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenList.json
new file mode 100644
index 000000000000..dc496740800b
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenList.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenUpdate.json
new file mode 100644
index 000000000000..caf35b318e42
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/TokenUpdate.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "tokenName": "myToken",
+ "tokenUpdateParameters": {
+ "properties": {
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken/operationStatuses/tokens-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/tokens/myToken",
+ "name": "myToken",
+ "type": "Microsoft.ContainerRegistry/registries/tokens",
+ "properties": {
+ "creationDate": "2017-03-01T23:14:37.0707808Z",
+ "scopeMapId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/scopeMaps/myNewScopeMap",
+ "provisioningState": "Succeeded",
+ "status": "enabled",
+ "credentials": {
+ "certificates": [
+ {
+ "name": "certificate1",
+ "encodedPemCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUc3akNDQk5hZ0F3SUJBZ0lURmdBQlR3UVpyZGdmdmhxdzBnQUFBQUZQQkRBTkJna3Foa2lHOXcwQkFRc0YKQURDQml6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdUQ2xkaGMyaHBibWQwYjI0eEVEQU9CZ05WQkFjVApCMUpsWkcxdmJtUXhIakFjQmdOVkJBb1RGVTFwWTNKdmMyOW1kQ0JEYjNKd2IzSmhkR2x2YmpFVk1CTUdBMVVFCkN4TU1UV2xqY205emIyWjBJRWxVTVI0d0hBWURWUVFERXhWTmFXTnliM052Wm5RZ1NWUWdWRXhUSUVOQklEUXcKSGhjTk1UZ3dOREV5TWpJek1qUTRXaGNOTWpBd05ERXlNakl6TWpRNFdqQTVNVGN3TlFZRFZRUURFeTV6WlhKMgphV05sWTJ4cFpXNTBZMlZ5ZEMxd1lYSjBibVZ5TG0xaGJtRm5aVzFsYm5RdVlYcDFjbVV1WTI5dE1JSUJJakFOCkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTBSYjdJcHpxMmR4emhhbVpyS1ZDakMzeTQyYlYKUnNIY2pCUTFuSDBHZ1puUDhXeDZDSE1mWThybkVJQzRLeVRRYkJXVzhnNXlmc3NSQ0ZXbFpxYjR6SkRXS0pmTgpGSmNMUm9LNnhwTktZYVZVTkVlT25IdUxHYTM0ZlA0VjBFRjZybzdvbkRLME5zanhjY1dZVzRNVXVzc0xrQS94CkUrM2RwU1REdk1KcjJoWUpsVnFDcVR6blQvbmZaVUZzQUVEQnp5MUpOOHZiZDlIR2czc2Myd0x4dk95cFJOc0gKT1V3V2pmN2xzWWZleEVlcWkzY29EeHc2alpLVWEyVkdsUnBpTkowMjhBQitYSi9TU1FVNVBsd0JBbU9TT3ovRApGY0NKdGpPZlBqU1NKckFIQVV3SHU3RzlSV05JTFBwYU9zQ1J5eitETE5zNGpvNlEvUUg4d1lManJRSURBUUFCCm80SUNtakNDQXBZd0N3WURWUjBQQkFRREFnU3dNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUYKQlFjREFUQWRCZ05WSFE0RUZnUVVlbEdkVVJrZzJoSFFOWEQ4WUc4L3drdjJVT0F3SHdZRFZSMGpCQmd3Rm9BVQplbnVNd2Mvbm9Nb2MxR3Y2KytFend3OGFvcDB3Z2F3R0ExVWRId1NCcERDQm9UQ0JucUNCbTZDQm1JWkxhSFIwCmNEb3ZMMjF6WTNKc0xtMXBZM0p2YzI5bWRDNWpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjAKSlRJd1NWUWxNakJVVEZNbE1qQkRRU1V5TURRdVkzSnNoa2xvZEhSd09pOHZZM0pzTG0xcFkzSnZjMjltZEM1agpiMjB2Y0d0cEwyMXpZMjl5Y0M5amNtd3ZUV2xqY205emIyWjBKVEl3U1ZRbE1qQlVURk1sTWpCRFFTVXlNRFF1ClkzSnNNSUdGQmdnckJnRUZCUWNCQVFSNU1IY3dVUVlJS3dZQkJRVUhNQUtHUldoMGRIQTZMeTkzZDNjdWJXbGoKY205emIyWjBMbU52YlM5d2Eya3ZiWE5qYjNKd0wwMXBZM0p2YzI5bWRDVXlNRWxVSlRJd1ZFeFRKVEl3UTBFbApNakEwTG1OeWREQWlCZ2dyQmdFRkJRY3dBWVlXYUhSMGNEb3ZMMjlqYzNBdWJYTnZZM053TG1OdmJUQStCZ2tyCkJnRUVBWUkzRlFjRU1UQXZCaWNyQmdFRUFZSTNGUWlIMm9aMWcrN1pBWUxKaFJ1QnRaNWhoZlRyWUlGZGhOTGYKUW9Mbmszb0NBV1FDQVIwd1RRWURWUjBnQkVZd1JEQkNCZ2tyQmdFRUFZSTNLZ0V3TlRBekJnZ3JCZ0VGQlFjQwpBUlluYUhSMGNEb3ZMM2QzZHk1dGFXTnliM052Wm5RdVkyOXRMM0JyYVM5dGMyTnZjbkF2WTNCek1DY0dDU3NHCkFRUUJnamNWQ2dRYU1CZ3dDZ1lJS3dZQkJRVUhBd0l3Q2dZSUt3WUJCUVVIQXdFd09RWURWUjBSQkRJd01JSXUKYzJWeWRtbGpaV05zYVdWdWRHTmxjblF0Y0dGeWRHNWxjaTV0WVc1aFoyVnRaVzUwTG1GNmRYSmxMbU52YlRBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFIVXIzbk1vdUI5WWdDUlRWYndUTllIS2RkWGJkSW1GUXNDYys4T1g1CjE5c0N6dFFSR05iSXEwVW1Ba01MbFVvWTIxckh4ZXdxU2hWczFhL2RwaFh5Tk1pcUdaU2QzU1BtYzZscitqUFQKNXVEREs0MUlWeXN0K2VUNlpyazFvcCtMVmdkeS9EU2lyNzVqcWZFY016bS82bU8rNnFNeWRLTWtVYmM5K3JHVwphUkpUcjRWUUdIRmEwNEIwZVZpNUd4MG9pL2RpZDNSaXg2aXJMMjFJSGEwYjN6c1hzZHpHU0R2K3hqL2Q2S0l4Ckdrd2FhYmZvU1NoQnFqaFNlQ0VyZXFlb1RpYjljdGw0MGRVdUp3THl4bjhHS2N6K3AvMEJUOEIxU3lYK01OQ2wKY0pkMjVtMjhLajY2TGUxOEVyeFlJYXZJVGVGa3Y2eGZjdkEvcHladDdPaU41QTlGQk1IUmpQK1kyZ2tvdjMrcQpISFRUZG4xNnlRajduNit3YlFHNGVleXc0YisyQkRLcUxNVFU2ZmlSQ3ZPM2FPZVBLSFVNN3R4b1FidWl6Z3NzCkNiMzl3QnJOTEZsMkJLQ1RkSCtkSU9oZVJiSkZvbmlwOGRPOUVFZWdSSG9lQW54ZUlYTFBrdXMzTzEvZjRhNkIKWHQ3RG5BUm8xSzJmeEp3VXRaU2MvR3dFSjU5NzlnRXlEa3pDZEVsLzdpWE9QZXVjTXhlM2xVM2pweUtsNERUaApjSkJqQytqNGpLWTFrK1U4b040aGdqYnJISUx6Vnd2eU15OU5KS290U3BMSjQxeHdPOHlGangxalFTT3Bxc0N1ClFhUFUvTjhSZ0hxWjBGTkFzS3dNUmZ6WmdXanRCNzRzYUVEdk5jVmNuNFhCQnFNSG0ydHo2Uzk3d3kxZGt0cTgKSE5BPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookCreate.json
new file mode 100644
index 000000000000..891c3fa26168
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookCreate.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook",
+ "webhookCreateParameters": {
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "serviceUri": "http://myservice.com",
+ "customHeaders": {
+ "Authorization": "******"
+ },
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook/operationStatuses/webhooks-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Creating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookDelete.json
new file mode 100644
index 000000000000..8cb7fe51e23d
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookDelete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook/operationStatuses/webhooks-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookGet.json
new file mode 100644
index 000000000000..17eca35bc0c1
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookGet.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookGetCallbackConfig.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookGetCallbackConfig.json
new file mode 100644
index 000000000000..ed5636e47850
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookGetCallbackConfig.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "serviceUri": "http://myservice.com",
+ "customHeaders": {
+ "Authorization": "******"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookList.json
new file mode 100644
index 000000000000..cf1954aaa62c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookList.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookListEvents.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookListEvents.json
new file mode 100644
index 000000000000..04d471fa4359
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookListEvents.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "eventRequestMessage": {
+ "content": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "timestamp": "2017-03-01T23:14:37.0707808Z",
+ "action": "push",
+ "target": {
+ "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
+ "size": 708,
+ "digest": "sha256:fea8895f450959fa676bcc1df0611ea93823a735a01205fd8622846041d0c7cf",
+ "length": 708,
+ "repository": "hello-world",
+ "url": "http://192.168.100.227:5000/v2/hello-world/manifests/sha256:fea8895f450959fa676bcc1df0611ea93823a735a01205fd8622846041d0c7cf",
+ "tag": "latest"
+ },
+ "request": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "addr": "192.168.64.11:42961",
+ "host": "192.168.100.227:5000",
+ "method": "GET",
+ "useragent": "curl/7.38.0"
+ },
+ "actor": {},
+ "source": {
+ "addr": "xtal.local:5000",
+ "instanceID": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ "headers": {
+ "Content-Type": "application/json",
+ "Content-Length": "719",
+ "Authorization": "******"
+ },
+ "method": "POST",
+ "requestUri": "http://myservice.com",
+ "version": "1.1"
+ },
+ "eventResponseMessage": {
+ "headers": {
+ "Content-Length": "0"
+ },
+ "statusCode": "200",
+ "version": "1.1"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookPing.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookPing.json
new file mode 100644
index 000000000000..e68481eae66c
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookPing.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookUpdate.json
new file mode 100644
index 000000000000..f2136de5d058
--- /dev/null
+++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2023-07-01/examples/WebhookUpdate.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "registryName": "myRegistry",
+ "webhookName": "myWebhook",
+ "webhookUpdateParameters": {
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "serviceUri": "http://myservice.com",
+ "customHeaders": {
+ "Authorization": "******"
+ },
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook/operationStatuses/webhooks-00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ },
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook",
+ "name": "myWebhook",
+ "type": "Microsoft.ContainerRegistry/registries/webhooks",
+ "location": "westus",
+ "tags": {
+ "key": "value"
+ },
+ "properties": {
+ "status": "enabled",
+ "scope": "myRepository",
+ "actions": [
+ "push"
+ ],
+ "provisioningState": "Updating"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerregistry/resource-manager/readme.go.md b/specification/containerregistry/resource-manager/readme.go.md
index 9f195c74de1f..3235f9982a96 100644
--- a/specification/containerregistry/resource-manager/readme.go.md
+++ b/specification/containerregistry/resource-manager/readme.go.md
@@ -8,6 +8,21 @@ module-name: sdk/resourcemanager/containerregistry/armcontainerregistry
module: github.com/Azure/azure-sdk-for-go/$(module-name)
output-folder: $(go-sdk-folder)/$(module-name)
azure-arm: true
+directive:
+ - from: containerregistry_build.json
+ where: $.definitions.IdentityProperties.properties
+ transform: >
+ $.principalId['readOnly'] = true;
+ $.tenantId['readOnly'] = true;
+ - from: containerregistry_build.json
+ where: $.definitions.UserIdentityProperties.properties
+ transform: >
+ $.principalId['readOnly'] = true;
+ $.clientId['readOnly'] = true;
+ - from: containerregistry_build.json
+ where: $.definitions.ErrorResponse
+ transform: >
+ $['x-ms-client-name'] = 'ErrorResponseForContainerRegistry';
```
``` yaml $(go) && !$(track2)
@@ -21,6 +36,7 @@ go:
``` yaml $(go) && $(multiapi)
batch:
+ - tag: package-2023-07
- tag: package-2023-01-preview
- tag: package-2022-12
- tag: package-2022-02-preview
@@ -41,6 +57,15 @@ batch:
- tag: package-2016-06-preview
```
+### Tag: package-2023-07 and go
+
+These settings apply only when `--tag=package-2023-07 --go` is specified on the command line.
+Please also specify `--go-sdk-folder=`.
+
+``` yaml $(tag) == 'package-2023-07' && $(go)
+output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2023-07-01/$(namespace)
+```
+
### Tag: package-2023-01-preview and go
These settings apply only when `--tag=package-2023-01-preview --go` is specified on the command line.
diff --git a/specification/containerregistry/resource-manager/readme.java.md b/specification/containerregistry/resource-manager/readme.java.md
index c68b5b5d9bb9..bc864961ea5e 100644
--- a/specification/containerregistry/resource-manager/readme.java.md
+++ b/specification/containerregistry/resource-manager/readme.java.md
@@ -25,6 +25,7 @@ directive:
``` yaml $(java) && $(multiapi)
batch:
+ - tag: package-2023-07
- tag: package-2023-01-preview
- tag: package-2022-12
- tag: package-2022-02-preview
@@ -45,6 +46,19 @@ batch:
- tag: package-2016-06-preview
```
+### Tag: package-2023-07 and java
+
+These settings apply only when `--tag=package-2023-07 --java` is specified on the command line.
+Please also specify `--azure-libraries-for-java-folder=`.
+
+``` yaml $(tag) == 'package-2023-07' && $(java) && $(multiapi)
+java:
+ namespace: com.microsoft.azure.management.containerregistry.v2023_07_01
+ output-folder: $(azure-libraries-for-java-folder)/sdk/containerregistry/mgmt-v2023_07_01
+regenerate-manager: true
+generate-interface: true
+```
+
### Tag: package-2023-01-preview and java
These settings apply only when `--tag=package-2023-01-preview --java` is specified on the command line.
diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md
index 8554be22d927..463ef2f2a403 100644
--- a/specification/containerregistry/resource-manager/readme.md
+++ b/specification/containerregistry/resource-manager/readme.md
@@ -26,14 +26,52 @@ These are the global settings for the ContainerRegistry API.
``` yaml
openapi-type: arm
-tag: package-2023-01-preview
+tag: package-2023-07
+```
+
+### Tag: package-2023-07-only
+
+These settings apply only when `--tag=package-2023-07-only` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-07-only'
+input-file:
+ - Microsoft.ContainerRegistry/stable/2023-07-01/containerregistry.json
+```
+
+### Tag: package-2023-07
+
+These settings apply only when `--tag=package-2023-07` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-07'
+input-file:
+ - Microsoft.ContainerRegistry/stable/2023-07-01/containerregistry.json
+ - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
+```
+
+### Tag: package-2023-06-preview-only
+
+These settings apply only when `--tag=package-2023-06-preview-only` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-06-preview-only'
+input-file:
+ - Microsoft.ContainerRegistry/preview/2023-06-01-preview/containerregistry.json
+```
+
+### Tag: package-2023-06-preview
+
+These settings apply only when `--tag=package-2023-06-preview` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-06-preview'
+input-file:
+ - Microsoft.ContainerRegistry/preview/2023-06-01-preview/containerregistry.json
+ - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
```
### Tag: package-2023-01-preview-only
These settings apply only when `--tag=package-2023-01-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2023-01-preview-only'
+``` yaml $(tag) == 'package-2023-01-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json
```
@@ -42,17 +80,17 @@ input-file:
These settings apply only when `--tag=package-2023-01-preview` is specified on the command line.
-```yaml $(tag) == 'package-2023-01-preview'
+``` yaml $(tag) == 'package-2023-01-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
- ```
+```
### Tag: package-2022-12-only
These settings apply only when `--tag=package-2022-12-only` is specified on the command line.
-```yaml $(tag) == 'package-2022-12-only'
+``` yaml $(tag) == 'package-2022-12-only'
input-file:
- Microsoft.ContainerRegistry/stable/2022-12-01/containerregistry.json
```
@@ -61,7 +99,7 @@ input-file:
These settings apply only when `--tag=package-2022-12` is specified on the command line.
-```yaml $(tag) == 'package-2022-12'
+``` yaml $(tag) == 'package-2022-12'
input-file:
- Microsoft.ContainerRegistry/stable/2022-12-01/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -99,7 +137,7 @@ input-file:
These settings apply only when `--tag=package-2021-12-preview` is specified on the command line.
-```yaml $(tag) == 'package-2021-12-preview'
+``` yaml $(tag) == 'package-2021-12-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2021-12-01-preview/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -109,7 +147,7 @@ input-file:
These settings apply only when `--tag=package-2021-09-only` is specified on the command line.
-```yaml $(tag) == 'package-2021-09-only'
+``` yaml $(tag) == 'package-2021-09-only'
input-file:
- Microsoft.ContainerRegistry/stable/2021-09-01/containerregistry.json
```
@@ -118,7 +156,7 @@ input-file:
These settings apply only when `--tag=package-2021-09` is specified on the command line.
-```yaml $(tag) == 'package-2021-09'
+``` yaml $(tag) == 'package-2021-09'
input-file:
- Microsoft.ContainerRegistry/stable/2021-09-01/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -128,7 +166,7 @@ input-file:
These settings apply only when `--tag=package-2021-08-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2021-08-preview-only'
+``` yaml $(tag) == 'package-2021-08-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2021-08-01-preview/containerregistry.json
```
@@ -137,7 +175,7 @@ input-file:
These settings apply only when `--tag=package-2021-08-preview` is specified on the command line.
-```yaml $(tag) == 'package-2021-08-preview'
+``` yaml $(tag) == 'package-2021-08-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2021-08-01-preview/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -147,7 +185,7 @@ input-file:
These settings apply only when `--tag=package-2021-06-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2021-06-preview-only'
+``` yaml $(tag) == 'package-2021-06-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2021-06-01-preview/containerregistry.json
```
@@ -156,7 +194,7 @@ input-file:
These settings apply only when `--tag=package-2021-06-preview` is specified on the command line.
-```yaml $(tag) == 'package-2021-06-preview'
+``` yaml $(tag) == 'package-2021-06-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2021-06-01-preview/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -166,7 +204,7 @@ input-file:
These settings apply only when `--tag=package-2020-11-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2020-11-preview-only'
+``` yaml $(tag) == 'package-2020-11-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json
```
@@ -175,7 +213,7 @@ input-file:
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.ContainerRegistry/preview/2020-11-01-preview/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -185,7 +223,7 @@ input-file:
These settings apply only when `--tag=package-2019-12-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2019-12-preview-only'
+``` yaml $(tag) == 'package-2019-12-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json
```
@@ -194,7 +232,7 @@ input-file:
These settings apply only when `--tag=package-2019-12-preview` is specified on the command line.
-```yaml $(tag) == 'package-2019-12-preview'
+``` yaml $(tag) == 'package-2019-12-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -205,7 +243,7 @@ input-file:
These settings apply only when `--tag=package-2019-06-preview` is specified on the command line.
-```yaml $(tag) == 'package-2019-06-preview'
+``` yaml $(tag) == 'package-2019-06-preview'
input-file:
- Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
@@ -216,7 +254,7 @@ input-file:
These settings apply only when `--tag=package-2019-06-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2019-06-preview-only'
+``` yaml $(tag) == 'package-2019-06-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
```
@@ -225,7 +263,7 @@ input-file:
These settings apply only when `--tag=package-2019-05-only` is specified on the command line.
-```yaml $(tag) == 'package-2019-05-only'
+``` yaml $(tag) == 'package-2019-05-only'
input-file:
- Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json
```
@@ -234,7 +272,7 @@ input-file:
These settings apply only when `--tag=package-2019-05` is specified on the command line.
-```yaml $(tag) == 'package-2019-05'
+``` yaml $(tag) == 'package-2019-05'
input-file:
- Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json
- Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json
@@ -244,7 +282,7 @@ input-file:
These settings apply only when `--tag=package-2019-05-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2019-05-preview-only'
+``` yaml $(tag) == 'package-2019-05-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json
```
@@ -253,7 +291,7 @@ input-file:
These settings apply only when `--tag=package-2019-05-preview` is specified on the command line.
-```yaml $(tag) == 'package-2019-05-preview'
+``` yaml $(tag) == 'package-2019-05-preview'
input-file:
- Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json
@@ -263,7 +301,7 @@ input-file:
These settings apply only when `--tag=package-2019-04` is specified on the command line.
-```yaml $(tag) == 'package-2019-04'
+``` yaml $(tag) == 'package-2019-04'
input-file:
- Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json
- Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json
@@ -273,7 +311,7 @@ input-file:
These settings apply only when `--tag=package-2019-04-only` is specified on the command line.
-```yaml $(tag) == 'package-2019-04-only'
+``` yaml $(tag) == 'package-2019-04-only'
input-file:
- Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json
```
@@ -282,7 +320,7 @@ input-file:
These settings apply only when `--tag=package-2018-09-only` is specified on the command line.
-```yaml $(tag) == 'package-2018-09-only'
+``` yaml $(tag) == 'package-2018-09-only'
input-file:
- Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json
```
@@ -291,7 +329,7 @@ input-file:
These settings apply only when `--tag=package-2018-09` is specified on the command line.
-```yaml $(tag) == 'package-2018-09'
+``` yaml $(tag) == 'package-2018-09'
input-file:
- Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json
- Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json
@@ -301,7 +339,7 @@ input-file:
These settings apply only when `--tag=package-2018-02-preview-only` is specified on the command line.
-```yaml $(tag) == 'package-2018-02-preview-only'
+``` yaml $(tag) == 'package-2018-02-preview-only'
input-file:
- Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json
```
@@ -310,7 +348,7 @@ input-file:
These settings apply only when `--tag=package-2018-02-preview` is specified on the command line.
-```yaml $(tag) == 'package-2018-02-preview'
+``` yaml $(tag) == 'package-2018-02-preview'
input-file:
- Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json
- Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json
@@ -320,7 +358,7 @@ input-file:
These settings apply only when `--tag=package-2017-10` is specified on the command line.
-```yaml $(tag) == 'package-2017-10'
+``` yaml $(tag) == 'package-2017-10'
input-file:
- Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json
```
@@ -329,7 +367,7 @@ input-file:
These settings apply only when `--tag=package-2017-06-preview` is specified on the command line.
-```yaml $(tag) == 'package-2017-06-preview'
+``` yaml $(tag) == 'package-2017-06-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2017-06-01-preview/containerregistry.json
```
@@ -338,7 +376,7 @@ input-file:
These settings apply only when `--tag=package-2017-03` is specified on the command line.
-```yaml $(tag) == 'package-2017-03'
+``` yaml $(tag) == 'package-2017-03'
input-file:
- Microsoft.ContainerRegistry/stable/2017-03-01/containerregistry.json
```
@@ -347,7 +385,7 @@ input-file:
These settings apply only when `--tag=package-2016-06-preview` is specified on the command line.
-```yaml $(tag) == 'package-2016-06-preview'
+``` yaml $(tag) == 'package-2016-06-preview'
input-file:
- Microsoft.ContainerRegistry/preview/2016-06-27-preview/containerregistry.json
```
@@ -361,7 +399,7 @@ input-file:
This section describes what SDK should be generated by the automatic system.
This is not used by Autorest itself.
-```yaml $(swagger-to-sdk)
+``` yaml $(swagger-to-sdk)
swagger-to-sdk:
- repo: azure-sdk-for-net-track2
- repo: azure-sdk-for-python-track2
@@ -381,7 +419,7 @@ swagger-to-sdk:
These settings apply only when `--csharp` is specified on the command line.
Please also specify `--csharp-sdks-folder=`.
-```yaml $(csharp)
+``` yaml $(csharp)
csharp:
# stop the simplifier from making Task conflict:
skip-simplifier-on-namespace:
@@ -405,4 +443,4 @@ See configuration in [readme.go.md](./readme.go.md)
## Java
-See configuration in [readme.java.md](./readme.java.md)
+See configuration in [readme.java.md](./readme.java.md)
\ No newline at end of file
diff --git a/specification/containerregistry/resource-manager/readme.nodejs.md b/specification/containerregistry/resource-manager/readme.nodejs.md
index af21cc63acca..052d9a08cd40 100644
--- a/specification/containerregistry/resource-manager/readme.nodejs.md
+++ b/specification/containerregistry/resource-manager/readme.nodejs.md
@@ -12,6 +12,6 @@ nodejs:
generate-package-json: true
generate-readme-md: true
input-file:
-- Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json
+- Microsoft.ContainerRegistry/stable/2023-07-01/containerregistry.json
- Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json
```
diff --git a/specification/containerregistry/resource-manager/readme.python.md b/specification/containerregistry/resource-manager/readme.python.md
index 867e514c503e..9d60a3928315 100644
--- a/specification/containerregistry/resource-manager/readme.python.md
+++ b/specification/containerregistry/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: "2022-12-01"
+default-api-version: "2023-07-01"
clear-output-folder: true
batch:
+ - tag: package-2023-07-only
- tag: package-2023-01-preview-only
- tag: package-2022-12-only
- tag: package-2022-02-preview-only
@@ -46,6 +47,16 @@ output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregis
perform-load: false
```
+### Tag: package-2023-07-only and python
+
+These settings apply only when `--tag=package-2023-07-only --python` is specified on the command line.
+Please also specify `--python-sdks-folder=`.
+
+``` yaml $(tag) == 'package-2023-07-only' && $(python)
+namespace: azure.mgmt.containerregistry.v2023_07_01
+output-folder: $(python-sdks-folder)/containerregistry/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2023_07_01
+```
+
### Tag: package-2023-01-preview-only and python
These settings apply only when `--tag=package-2023-01-preview-only --python` is specified on the command line.
diff --git a/specification/containerregistry/resource-manager/readme.ruby.md b/specification/containerregistry/resource-manager/readme.ruby.md
index 564694a1dfed..a47fe5fb3bde 100644
--- a/specification/containerregistry/resource-manager/readme.ruby.md
+++ b/specification/containerregistry/resource-manager/readme.ruby.md
@@ -12,6 +12,7 @@ azure-arm: true
``` yaml $(ruby) && $(multiapi)
batch:
+ - tag: package-2023-07
- tag: package-2023-01-preview
- tag: package-2022-12
- tag: package-2022-02-preview
@@ -27,6 +28,16 @@ batch:
- tag: package-2016-06-preview
```
+### Tag: package-2023-07 and ruby
+
+These settings apply only when `--tag=package-2023-07 --ruby` is specified on the command line.
+Please also specify `--ruby-sdks-folder=`.
+
+``` yaml $(tag) == 'package-2023-07' && $(ruby)
+namespace: "Azure::ContainerRegistry::Mgmt::V2023_07_01"
+output-folder: $(ruby-sdks-folder)/management/azure_mgmt_container_registry/lib
+```
+
### Tag: package-2023-01-preview and ruby
These settings apply only when `--tag=package-2023-01-preview --ruby` is specified on the command line.
diff --git a/specification/containerservice/Fleet.Management/fleet.tsp b/specification/containerservice/Fleet.Management/fleet.tsp
index 6b7e8d6ad2af..1b9fb765e6a4 100644
--- a/specification/containerservice/Fleet.Management/fleet.tsp
+++ b/specification/containerservice/Fleet.Management/fleet.tsp
@@ -29,6 +29,7 @@ model Fleet is TrackedResource {
@segment("fleets")
@visibility("create", "read")
name: string;
+
...EntityTag;
}
diff --git a/specification/containerservice/Fleet.Management/fleetmember.tsp b/specification/containerservice/Fleet.Management/fleetmember.tsp
index 94793fef2fce..d741cda366b6 100644
--- a/specification/containerservice/Fleet.Management/fleetmember.tsp
+++ b/specification/containerservice/Fleet.Management/fleetmember.tsp
@@ -24,6 +24,7 @@ model FleetMember is ProxyResource {
@segment("members")
@visibility("create", "read")
name: string;
+
...EntityTag;
}
diff --git a/specification/containerservice/Fleet.Management/helpers.tsp b/specification/containerservice/Fleet.Management/helpers.tsp
index 7b35d2cbe420..6c42eab412bf 100644
--- a/specification/containerservice/Fleet.Management/helpers.tsp
+++ b/specification/containerservice/Fleet.Management/helpers.tsp
@@ -42,7 +42,7 @@ op ArmResourceNoRequestBodyActionSync<
TResponse extends TypeSpec.Reflection.Model,
TBaseParameters = Azure.ResourceManager.Foundations.BaseParameters
>(
- ...ResourceInstanceParameters
+ ...ResourceInstanceParameters,
): ArmResponse | ErrorResponse;
#suppress "@azure-tools/typespec-azure-core/documentation-required" "this is a template"
@@ -61,7 +61,7 @@ op ArmResourceNoRequestBodyActionAsync<
TResponse extends TypeSpec.Reflection.Model,
TBaseParameters = Azure.ResourceManager.Foundations.BaseParameters
>(
- ...ResourceInstanceParameters
+ ...ResourceInstanceParameters,
): ArmResponse | ArmAcceptedResponseWithLocationHeader | ErrorResponse;
#suppress "@azure-tools/cadl-azure-resource-manager/arm-resource-operation-outside-interface" "this is a template"
@@ -78,7 +78,7 @@ op FleetCustomPatchSync<
@doc("The resource properties to be updated.")
@body
- parameters?: TPatchModel //prevents api breaking change. properties -> parameters
+ parameters?: TPatchModel, //prevents api breaking change. properties -> parameters
): ArmResponse | ErrorResponse;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation-outside-interface" "this is a template"
@@ -101,7 +101,7 @@ op FleetArmResourceCreateOrUpdateAsync<
@doc("Resource create parameters.")
@body
- parameters: TResource //prevent api breaking change. resource -> parameters
+ parameters: TResource, //prevent api breaking change. resource -> parameters
): ArmResponse | ArmCreatedResponse | ErrorResponse;
// this is a copy of ArmResourceDeleteAsync that adds the location header to comply with arm linter.
diff --git a/specification/containerservice/Fleet.Management/updaterun.tsp b/specification/containerservice/Fleet.Management/updaterun.tsp
index 343e6c45a66b..ad2f63b4f497 100644
--- a/specification/containerservice/Fleet.Management/updaterun.tsp
+++ b/specification/containerservice/Fleet.Management/updaterun.tsp
@@ -30,6 +30,7 @@ model UpdateRun is ProxyResource {
@path
@visibility("create", "read")
name: string;
+
...EntityTag;
}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsAbortOperation.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsAbortOperation.json
new file mode 100644
index 000000000000..552d7bc5a490
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsAbortOperation.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operations/00000000-0000-0000-0000-000000000000?api-version=2017-08-31",
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsAssociate_CRG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsAssociate_CRG.json
new file mode 100644
index 000000000000..23ef23980b41
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsAssociate_CRG.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "capacityReservationGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/CapacityReservationGroups/crg1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "capacityReservationGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/CapacityReservationGroups/crg1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "capacityReservationGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/CapacityReservationGroups/crg1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_CustomNodeConfig.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_CustomNodeConfig.json
new file mode 100644
index 000000000000..de43307bd2f6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_CustomNodeConfig.json
@@ -0,0 +1,124 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_DedicatedHostGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_DedicatedHostGroup.json
new file mode 100644
index 000000000000..6fba9f3527bd
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_DedicatedHostGroup.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableCustomCATrust.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableCustomCATrust.json
new file mode 100644
index 000000000000..615940a76e1a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableCustomCATrust.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableCustomCATrust": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableCustomCATrust": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableCustomCATrust": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableEncryptionAtHost.json
new file mode 100644
index 000000000000..adaefc4bd2d6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableEncryptionAtHost.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableFIPS.json
new file mode 100644
index 000000000000..9a027a02a074
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableFIPS.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableUltraSSD.json
new file mode 100644
index 000000000000..fa1e72314a06
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_EnableUltraSSD.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Ephemeral.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Ephemeral.json
new file mode 100644
index 000000000000..47080ee522f7
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Ephemeral.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "osDiskSizeGB": 64
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "osDiskSizeGB": 64
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "kubeletDiskType": "OS",
+ "osDiskSizeGB": 64
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_GPUMIG.json
new file mode 100644
index 000000000000..7a34db4e73d9
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_GPUMIG.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_MessageOfTheDay.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_MessageOfTheDay.json
new file mode 100644
index 000000000000..8b44b5b08d97
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_MessageOfTheDay.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "messageOfTheDay": "Zm9vCg=="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "messageOfTheDay": "Zm9vCg=="
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "messageOfTheDay": "Zm9vCg=="
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_OSSKU.json
new file mode 100644
index 000000000000..e0b321fa6723
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_OSSKU.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_PPG.json
new file mode 100644
index 000000000000..76aae4c2120b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_PPG.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Snapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Snapshot.json
new file mode 100644
index 000000000000..74127dd2ea6d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Snapshot.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Spot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Spot.json
new file mode 100644
index 000000000000..d77971fb5448
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Spot.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "spotMaxPrice": -1
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "spotMaxPrice": -1
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Update.json
new file mode 100644
index 000000000000..b06e2f9a001c
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_Update.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WasmWasi.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WasmWasi.json
new file mode 100644
index 000000000000..43487b04e6d0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WasmWasi.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WindowsDisableOutboundNAT.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WindowsDisableOutboundNAT.json
new file mode 100644
index 000000000000..5554072f4522
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WindowsDisableOutboundNAT.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "wnp2",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "1.23.8",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "osType": "Windows",
+ "osSKU": "Windows2022",
+ "windowsProfile": {
+ "disableOutboundNat": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.23.8",
+ "currentOrchestratorVersion": "1.23.8",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022",
+ "windowsProfile": {
+ "disableOutboundNat": true
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.23.8",
+ "currentOrchestratorVersion": "1.23.8",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022",
+ "windowsProfile": {
+ "disableOutboundNat": true
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WindowsOSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WindowsOSSKU.json
new file mode 100644
index 000000000000..3032e7e49233
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsCreate_WindowsOSSKU.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "wnp2",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.23.3",
+ "currentOrchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.23.3",
+ "currentOrchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsDelete.json
new file mode 100644
index 000000000000..1f68f4b10596
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsDelete_IgnorePodDisruptionBudget.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsDelete_IgnorePodDisruptionBudget.json
new file mode 100644
index 000000000000..87e72210af87
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsDelete_IgnorePodDisruptionBudget.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "ignorePodDisruptionBudget": true
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGet.json
new file mode 100644
index 000000000000..199462e29f88
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGet.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGetAgentPoolAvailableVersions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGetAgentPoolAvailableVersions.json
new file mode 100644
index 000000000000..55f51d2ebb10
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGetAgentPoolAvailableVersions.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/availableagentpoolversions",
+ "name": "default",
+ "properties": {
+ "agentPoolVersions": [
+ {
+ "kubernetesVersion": "1.12.7"
+ },
+ {
+ "kubernetesVersion": "1.12.8"
+ },
+ {
+ "default": true,
+ "kubernetesVersion": "1.13.5",
+ "isPreview": true
+ }
+ ]
+ },
+ "type": "Microsoft.ContainerService/managedClusters/availableAgentpoolVersions"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGetUpgradeProfile.json
new file mode 100644
index 000000000000..922600be816a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsGetUpgradeProfile.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1/upgradeprofiles/default",
+ "name": "default",
+ "properties": {
+ "kubernetesVersion": "1.12.8",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.13.5"
+ }
+ ],
+ "latestNodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ },
+ "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsList.json
new file mode 100644
index 000000000000..89dc53c59219
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsUpgradeNodeImageVersion.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsUpgradeNodeImageVersion.json
new file mode 100644
index 000000000000..ac340d9e5433
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPoolsUpgradeNodeImageVersion.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ContainerService/locations/westus/operations/00000000-0000-0000-0000-000000000000?api-version=2018-07-31"
+ },
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "UpgradingNodeImageVersion",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu-1604-2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Start.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Start.json
new file mode 100644
index 000000000000..37ce2e16e9a9
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Start.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Starting",
+ "count": 50,
+ "enableAutoScaling": true,
+ "minCount": 3,
+ "maxCount": 55,
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Starting",
+ "count": 50,
+ "enableAutoScaling": true,
+ "minCount": 3,
+ "maxCount": 55,
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Stop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Stop.json
new file mode 100644
index 000000000000..fda5d0701d07
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Stop.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Stopping",
+ "count": 0,
+ "enableAutoScaling": false,
+ "minCount": null,
+ "maxCount": null,
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Stopping",
+ "count": 0,
+ "enableAutoScaling": false,
+ "minCount": null,
+ "maxCount": null,
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Update.json
new file mode 100644
index 000000000000..b1ea0dc9f4df
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/AgentPools_Update.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Updating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ContainerServiceGetOSOptions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ContainerServiceGetOSOptions.json
new file mode 100644
index 000000000000..8d6ec8ffdd49
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ContainerServiceGetOSOptions.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/osOptions/default",
+ "name": "default",
+ "type": "Microsoft.ContainerService/locations/osOptions",
+ "properties": {
+ "osOptionPropertyList": [
+ {
+ "os-type": "Linux",
+ "enable-fips-image": false
+ },
+ {
+ "os-type": "Windows",
+ "enable-fips-image": false
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/KubernetesVersions_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/KubernetesVersions_List.json
new file mode 100644
index 000000000000..2d51c6482227
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/KubernetesVersions_List.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "values": [
+ {
+ "version": "1.23",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.23.12": {
+ "upgrades": [
+ "1.23.15",
+ "1.24.6",
+ "1.24.9"
+ ]
+ },
+ "1.23.15": {
+ "upgrades": [
+ "1.24.6",
+ "1.24.9"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.24",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.24.6": {
+ "upgrades": [
+ "1.24.9",
+ "1.25.4",
+ "1.25.5"
+ ]
+ },
+ "1.24.9": {
+ "upgrades": [
+ "1.25.4",
+ "1.25.5"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.25",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.25.4": {
+ "upgrades": [
+ "1.25.5",
+ "1.26.0"
+ ]
+ },
+ "1.25.5": {
+ "upgrades": [
+ "1.26.0"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.26",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.26.0": {
+ "upgrades": []
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsCreate_Update.json
new file mode 100644
index 000000000000..e0ec267e11ef
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsCreate_Update.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default",
+ "parameters": {
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json
new file mode 100644
index 000000000000..a2795dbd9e69
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json
@@ -0,0 +1,116 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedAutoUpgradeSchedule",
+ "parameters": {
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "relativeMonthly": {
+ "intervalMonths": 3,
+ "weekIndex": "First",
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "weekly": {
+ "intervalWeeks": 3,
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "weekly": {
+ "intervalWeeks": 3,
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsDelete.json
new file mode 100644
index 000000000000..8076986fea79
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsDelete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json
new file mode 100644
index 000000000000..df263354b03c
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedNodeOSUpgradeSchedule"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsGet.json
new file mode 100644
index 000000000000..28cd5b48870c
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsGet.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json
new file mode 100644
index 000000000000..601e1864a896
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedNodeOSUpgradeSchedule"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "aksManagedNodeOSUpgradeSchedule",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "daily": {
+ "intervalDays": 3
+ }
+ },
+ "durationHours": 4,
+ "utcOffset": "-07:00",
+ "startDate": "2023-01-01",
+ "startTime": "09:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsList.json
new file mode 100644
index 000000000000..d3afd7eefbb8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsList.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "default",
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsList_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsList_MaintenanceWindow.json
new file mode 100644
index 000000000000..60dc15fb14d7
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/MaintenanceConfigurationsList_MaintenanceWindow.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "aksManagedNodeOSUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "daily": {
+ "intervalDays": 5
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "-07:00",
+ "startDate": "2023-01-01",
+ "startTime": "13:30"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "absoluteMonthly": {
+ "intervalMonths": 3,
+ "dayOfMonth": 15
+ }
+ },
+ "durationHours": 5,
+ "utcOffset": "+00:00",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsCreate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsCreate.json
new file mode 100644
index 000000000000..1833c22bfb22
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsCreate.json
@@ -0,0 +1,96 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1",
+ "type": "Microsoft.ContainerService/ManagedClusterSnapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ },
+ "snapshotType": "ManagedCluster",
+ "managedClusterPropertiesReadOnly": {
+ "kubernetesVersion": "1.20.5",
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "enableRbac": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "networkPolicy": "calico",
+ "networkMode": "bridge",
+ "loadBalancerSku": "standard"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1",
+ "type": "Microsoft.ContainerService/ManagedClusterSnapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ },
+ "snapshotType": "ManagedCluster",
+ "managedClusterPropertiesReadOnly": {
+ "kubernetesVersion": "1.20.5",
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "enableRbac": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "networkPolicy": "calico",
+ "networkMode": "bridge",
+ "loadBalancerSku": "standard"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsDelete.json
new file mode 100644
index 000000000000..f71b8f6f11a0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsDelete.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsGet.json
new file mode 100644
index 000000000000..5f555a3c0c01
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsGet.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1",
+ "type": "Microsoft.ContainerService/ManagedClusterSnapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ },
+ "snapshotType": "ManagedCluster",
+ "managedClusterPropertiesReadOnly": {
+ "kubernetesVersion": "1.20.5",
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "enableRbac": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "networkPolicy": "calico",
+ "networkMode": "bridge",
+ "loadBalancerSku": "standard"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsList.json
new file mode 100644
index 000000000000..5a732f05ec48
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsList.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1",
+ "type": "Microsoft.ContainerService/ManagedClusterSnapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ },
+ "snapshotType": "ManagedCluster",
+ "managedClusterPropertiesReadOnly": {
+ "kubernetesVersion": "1.20.5",
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "enableRbac": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "networkPolicy": "calico",
+ "networkMode": "bridge",
+ "loadBalancerSku": "standard"
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsListByResourceGroup.json
new file mode 100644
index 000000000000..cd087291da2e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsListByResourceGroup.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1",
+ "type": "Microsoft.ContainerService/ManagedClusterSnapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ },
+ "snapshotType": "ManagedCluster",
+ "managedClusterPropertiesReadOnly": {
+ "kubernetesVersion": "1.20.5",
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "enableRbac": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "networkPolicy": "calico",
+ "networkMode": "bridge",
+ "loadBalancerSku": "standard"
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsUpdateTags.json
new file mode 100644
index 000000000000..37a209e0303f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClusterSnapshotsUpdateTags.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "tags": {
+ "key2": "new-val2",
+ "key3": "val3"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1",
+ "type": "Microsoft.ContainerService/ManagedClusterSnapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1"
+ },
+ "snapshotType": "ManagedCluster",
+ "managedClusterPropertiesReadOnly": {
+ "kubernetesVersion": "1.20.5",
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "enableRbac": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "networkPolicy": "calico",
+ "networkMode": "bridge",
+ "loadBalancerSku": "standard"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersAbortOperation.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersAbortOperation.json
new file mode 100644
index 000000000000..a56344bc8588
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersAbortOperation.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operations/00000000-0000-0000-0000-000000000000?api-version=2017-08-31",
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersAssociate_CRG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersAssociate_CRG.json
new file mode 100644
index 000000000000..9948dafdea87
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersAssociate_CRG.json
@@ -0,0 +1,254 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "capacityReservationGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/capacityReservationGroups/crg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "capacityReservationGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/capacityReservationGroups/crg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json
new file mode 100644
index 000000000000..902fabf29a07
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json
@@ -0,0 +1,259 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DedicatedHostGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DedicatedHostGroup.json
new file mode 100644
index 000000000000..9c1da8940821
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DedicatedHostGroup.json
@@ -0,0 +1,251 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DisableRunCommand.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DisableRunCommand.json
new file mode 100644
index 000000000000..03aec350d5a4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DisableRunCommand.json
@@ -0,0 +1,265 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "KubernetesOfficial"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "KubernetesOfficial"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DualStackNetworking.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DualStackNetworking.json
new file mode 100644
index 000000000000..4469ac264401
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_DualStackNetworking.json
@@ -0,0 +1,321 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ },
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ]
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16",
+ "fd11:1234::/64"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16",
+ "fd00:1234::/108"
+ ],
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2,
+ "countIPv6": 1
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip3-ipv6"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16",
+ "fd11:1234::/64"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16",
+ "fd00:1234::/108"
+ ],
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2,
+ "countIPv6": 1
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip3-ipv6"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableCustomCATrust.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableCustomCATrust.json
new file mode 100644
index 000000000000..c4e3640fc7a6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableCustomCATrust.json
@@ -0,0 +1,269 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableCustomCATrust": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "securityProfile": {
+ "customCATrustCertificates": [
+ "ZHVtbXlFeGFtcGxlVGVzdFZhbHVlRm9yQ2VydGlmaWNhdGVUb0JlQWRkZWQ="
+ ]
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableCustomCATrust": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "securityProfile": {
+ "customCATrustCertificates": [
+ "ZHVtbXlFeGFtcGxlVGVzdFZhbHVlRm9yQ2VydGlmaWNhdGVUb0JlQWRkZWQ="
+ ]
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableCustomCATrust": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "securityProfile": {
+ "customCATrustCertificates": [
+ "ZHVtbXlFeGFtcGxlVGVzdFZhbHVlRm9yQ2VydGlmaWNhdGVUb0JlQWRkZWQ="
+ ]
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableEncryptionAtHost.json
new file mode 100644
index 000000000000..1f48ebc40aba
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableEncryptionAtHost.json
@@ -0,0 +1,254 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableUltraSSD.json
new file mode 100644
index 000000000000..082364f7e07d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnableUltraSSD.json
@@ -0,0 +1,254 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnabledFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnabledFIPS.json
new file mode 100644
index 000000000000..ecbc975457db
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_EnabledFIPS.json
@@ -0,0 +1,254 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_GPUMIG.json
new file mode 100644
index 000000000000..58575743d7ad
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_GPUMIG.json
@@ -0,0 +1,281 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_HTTPProxy.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_HTTPProxy.json
new file mode 100644
index 000000000000..08541f49892f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_HTTPProxy.json
@@ -0,0 +1,278 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_IngressProfile_WebAppRouting.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_IngressProfile_WebAppRouting.json
new file mode 100644
index 000000000000..143355d36fef
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_IngressProfile_WebAppRouting.json
@@ -0,0 +1,243 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "ingressProfile": {
+ "webAppRouting": {
+ "enabled": true,
+ "dnsZoneResourceId": "/subscriptions/SUB_ID/resourceGroups/RG_NAME/providers/Microsoft.Network/dnszones/DNS_ZONE_NAME"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "ingressProfile": {
+ "webAppRouting": {
+ "enabled": true,
+ "dnsZoneResourceId": "/subscriptions/SUB_ID/resourceGroups/RG_NAME/providers/Microsoft.Network/dnszones/DNS_ZONE_NAME"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "ingressProfile": {
+ "webAppRouting": {
+ "enabled": true,
+ "dnsZoneResourceId": "/subscriptions/SUB_ID/resourceGroups/RG_NAME/providers/Microsoft.Network/dnszones/DNS_ZONE_NAME"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_MCSnapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_MCSnapshot.json
new file mode 100644
index 000000000000..a9d8feed4423
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_MCSnapshot.json
@@ -0,0 +1,222 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1"
+ },
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1"
+ },
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedclustersnapshots/snapshot1"
+ },
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_ManagedNATGateway.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_ManagedNATGateway.json
new file mode 100644
index 000000000000..c934d3df0afd
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_ManagedNATGateway.json
@@ -0,0 +1,231 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "managedOutboundIPProfile": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "idleTimeoutInMinutes": 4,
+ "managedOutboundIPProfile": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "idleTimeoutInMinutes": 4,
+ "managedOutboundIPProfile": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_NodePublicIPPrefix.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_NodePublicIPPrefix.json
new file mode 100644
index 000000000000..b8e40511bd2c
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_NodePublicIPPrefix.json
@@ -0,0 +1,254 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_OSSKU.json
new file mode 100644
index 000000000000..f9b9a34d541f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_OSSKU.json
@@ -0,0 +1,281 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PPG.json
new file mode 100644
index 000000000000..b526bdb105e3
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PPG.json
@@ -0,0 +1,254 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PodIdentity.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PodIdentity.json
new file mode 100644
index 000000000000..b1e27ed34c74
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PodIdentity.json
@@ -0,0 +1,263 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Premium.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Premium.json
new file mode 100644
index 000000000000..8b4662dd3a0e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Premium.json
@@ -0,0 +1,270 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json
new file mode 100644
index 000000000000..b7d1cf195f0f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json
@@ -0,0 +1,264 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "privateFQDN": "domain1.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "privateFQDN": "domain1.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json
new file mode 100644
index 000000000000..9e0dda6a976e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json
@@ -0,0 +1,268 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true,
+ "privateDNSZone": "system"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true,
+ "privateDNSZone": "system"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_SecurityProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_SecurityProfile.json
new file mode 100644
index 000000000000..a9a45391b368
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_SecurityProfile.json
@@ -0,0 +1,251 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Snapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Snapshot.json
new file mode 100644
index 000000000000..c212cf4109a2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Snapshot.json
@@ -0,0 +1,263 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Update.json
new file mode 100644
index 000000000000..835883ed3708
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_Update.json
@@ -0,0 +1,319 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "upgradeSettings": {
+ "overrideSettings": {
+ "controlPlaneOverrides": [
+ "IgnoreKubernetesDeprecations"
+ ],
+ "until": "2022-11-01T13:00:00Z"
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "upgradeSettings": {
+ "overrideSettings": {
+ "controlPlaneOverrides": [
+ "IgnoreKubernetesDeprecations"
+ ],
+ "until": "2022-11-01T13:00:00Z"
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWindowsGmsa.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWindowsGmsa.json
new file mode 100644
index 000000000000..b4d41f2af09a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWindowsGmsa.json
@@ -0,0 +1,299 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithAHUB.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithAHUB.json
new file mode 100644
index 000000000000..591837662813
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithAHUB.json
@@ -0,0 +1,293 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json
new file mode 100644
index 000000000000..eb2db6bd4a25
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json
@@ -0,0 +1,282 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "aadProfile": {
+ "managed": true,
+ "enableAzureRBAC": true
+ },
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "aadProfile": {
+ "managed": true,
+ "adminGroupObjectIDs": null,
+ "enableAzureRBAC": true,
+ "tenantID": "tenantID"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "aadProfile": {
+ "managed": true,
+ "adminGroupObjectIDs": null,
+ "enableAzureRBAC": true,
+ "tenantID": "tenantID"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithEnableNamespaceResources.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithEnableNamespaceResources.json
new file mode 100644
index 000000000000..e4ea9c2c139f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UpdateWithEnableNamespaceResources.json
@@ -0,0 +1,269 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "enableNamespaceResources": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "enableNamespaceResources": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "enableNamespaceResources": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UserAssignedNATGateway.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UserAssignedNATGateway.json
new file mode 100644
index 000000000000..4284f2f7fa49
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersCreate_UserAssignedNATGateway.json
@@ -0,0 +1,198 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersDelete.json
new file mode 100644
index 000000000000..9dc60caceb48
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersDelete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet.json
new file mode 100644
index 000000000000..8f41aeb6bb72
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet.json
@@ -0,0 +1,114 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "azurePortalFQDN": "dnsprefix1-abcd1234.portal.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "outboundIPs": {
+ "publicIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip2"
+ }
+ ]
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "upgradeSettings": {
+ "overrideSettings": {
+ "controlPlaneOverrides": [
+ "IgnoreKubernetesDeprecations"
+ ],
+ "until": "2022-11-01T13:00:00Z"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGetAccessProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGetAccessProfile.json
new file mode 100644
index 000000000000..9e8e04f05fa7
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGetAccessProfile.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "roleName": "clusterUser"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser",
+ "location": "location1",
+ "name": "clusterUser",
+ "properties": {
+ "kubeConfig": "a3ViZUNvbmZpZzE="
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGetUpgradeProfile.json
new file mode 100644
index 000000000000..16e440fe8f37
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGetUpgradeProfile.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default",
+ "name": "default",
+ "properties": {
+ "agentPoolProfiles": [
+ {
+ "kubernetesVersion": "1.7.7",
+ "name": "agent",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.7.9"
+ },
+ {
+ "kubernetesVersion": "1.7.11",
+ "isPreview": true
+ }
+ ]
+ }
+ ],
+ "controlPlaneProfile": {
+ "kubernetesVersion": "1.7.7",
+ "name": "master",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.7.9",
+ "isPreview": true
+ },
+ {
+ "kubernetesVersion": "1.7.11"
+ }
+ ]
+ }
+ },
+ "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet_MeshRevisionProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet_MeshRevisionProfile.json
new file mode 100644
index 000000000000..1838f4d4fba2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet_MeshRevisionProfile.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "location": "location1",
+ "mode": "istio"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/meshRevisionProfiles/istio",
+ "type": "Microsoft.ContainerService/locations/meshRevisionProfiles",
+ "name": "istio",
+ "properties": {
+ "meshRevisions": [
+ {
+ "revision": "asm-1-17",
+ "upgrades": [
+ "1-18"
+ ],
+ "compatibleWith": [
+ {
+ "name": "kubernetes",
+ "versions": [
+ "1.23",
+ "1.24",
+ "1.25",
+ "1.26"
+ ]
+ }
+ ]
+ },
+ {
+ "revision": "asm-1-18",
+ "upgrades": [],
+ "compatibleWith": [
+ {
+ "name": "kubernetes",
+ "versions": [
+ "1.24",
+ "1.25",
+ "1.26",
+ "1.27"
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet_MeshUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet_MeshUpgradeProfile.json
new file mode 100644
index 000000000000..142014330b72
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersGet_MeshUpgradeProfile.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "mode": "istio"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/meshUpgradeProfiles/istio",
+ "type": "Microsoft.ContainerService/managedClusters/meshUpgradeProfiles",
+ "name": "istio",
+ "properties": {
+ "revision": "asm-1-17",
+ "upgrades": [
+ "1-18"
+ ],
+ "compatibleWith": [
+ {
+ "name": "kubernetes",
+ "versions": [
+ "1.23",
+ "1.24",
+ "1.25",
+ "1.26"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList.json
new file mode 100644
index 000000000000..223503fa01bf
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "maxAgentPools": 1,
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersListByResourceGroup.json
new file mode 100644
index 000000000000..311652d46f82
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersListByResourceGroup.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "maxAgentPools": 1,
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersListClusterCredentialResult.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersListClusterCredentialResult.json
new file mode 100644
index 000000000000..8bc7a28c2f51
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersListClusterCredentialResult.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList_MeshRevisionProfiles.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList_MeshRevisionProfiles.json
new file mode 100644
index 000000000000..76bca7a38246
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList_MeshRevisionProfiles.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/meshRevisionProfiles/istio",
+ "type": "Microsoft.ContainerService/locations/meshRevisionProfiles",
+ "name": "istio",
+ "properties": {
+ "meshRevisions": [
+ {
+ "revision": "asm-1-17",
+ "upgrades": [
+ "1-18"
+ ],
+ "compatibleWith": [
+ {
+ "name": "kubernetes",
+ "versions": [
+ "1.23",
+ "1.24",
+ "1.25",
+ "1.26"
+ ]
+ }
+ ]
+ },
+ {
+ "revision": "asm-1-18",
+ "upgrades": [],
+ "compatibleWith": [
+ {
+ "name": "kubernetes",
+ "versions": [
+ "1.24",
+ "1.25",
+ "1.26",
+ "1.27"
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList_MeshUpgradeProfiles.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList_MeshUpgradeProfiles.json
new file mode 100644
index 000000000000..e98b0cc14af0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersList_MeshUpgradeProfiles.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/meshUpgradeProfiles/istio",
+ "type": "Microsoft.ContainerService/managedClusters/meshUpgradeProfiles",
+ "name": "istio",
+ "properties": {
+ "revision": "asm-1-17",
+ "upgrades": [
+ "1-18"
+ ],
+ "compatibleWith": [
+ {
+ "name": "kubernetes",
+ "versions": [
+ "1.23",
+ "1.24",
+ "1.25",
+ "1.26"
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersResetAADProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersResetAADProfile.json
new file mode 100644
index 000000000000..e6ebbaf576a0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersResetAADProfile.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "clientAppID": "clientappid",
+ "serverAppID": "serverappid",
+ "serverAppSecret": "serverappsecret",
+ "tenantID": "tenantid"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersResetServicePrincipalProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersResetServicePrincipalProfile.json
new file mode 100644
index 000000000000..4342fe1a1340
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersResetServicePrincipalProfile.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "clientId": "clientid",
+ "secret": "secret"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersRotateClusterCertificates.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersRotateClusterCertificates.json
new file mode 100644
index 000000000000..9dc60caceb48
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersRotateClusterCertificates.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersRotateServiceAccountSigningKeys.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersRotateServiceAccountSigningKeys.json
new file mode 100644
index 000000000000..9dc60caceb48
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersRotateServiceAccountSigningKeys.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersStart.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersStart.json
new file mode 100644
index 000000000000..9dc60caceb48
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersStart.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersStop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersStop.json
new file mode 100644
index 000000000000..9dc60caceb48
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersStop.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersUpdateTags.json
new file mode 100644
index 000000000000..1cde7fd452b3
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ManagedClustersUpdateTags.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "tags": {
+ "tier": "testing",
+ "archv3": ""
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv3": "",
+ "tier": "testing"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/Operation_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/Operation_List.json
new file mode 100644
index 000000000000..61eb9e2dda63
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/Operation_List.json
@@ -0,0 +1,3583 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "display": {
+ "description": "Gets the status of an asynchronous operation",
+ "operation": "Get Operation",
+ "provider": "Microsoft Container Service",
+ "resource": "Operation"
+ },
+ "name": "Microsoft.ContainerService/locations/operations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Lists the supported orchestrators",
+ "operation": "List Orchestrators",
+ "provider": "Microsoft Container Service",
+ "resource": "Orchestrator"
+ },
+ "name": "Microsoft.ContainerService/locations/orchestrators/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets OS options",
+ "operation": "Get OS Options",
+ "provider": "Microsoft Container Service",
+ "resource": "OSOptions"
+ },
+ "name": "Microsoft.ContainerService/locations/osOptions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Lists operations available on Microsoft.ContainerService resource provider",
+ "operation": "List Available Container Service Operations",
+ "provider": "Microsoft Container Service",
+ "resource": "Available Container Service Operations"
+ },
+ "name": "Microsoft.ContainerService/operations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Registers Subscription with Microsoft.ContainerService resource provider",
+ "operation": "Register Subscription for Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Service Register Subscription"
+ },
+ "name": "Microsoft.ContainerService/register/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Unregisters Subscription with Microsoft.ContainerService resource provider",
+ "operation": "Unregister Subscription for Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Service Unregister Subscription"
+ },
+ "name": "Microsoft.ContainerService/unregister/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the status of an asynchronous operation result",
+ "operation": "Get Operation Result",
+ "provider": "Microsoft Container Service",
+ "resource": "OperationResult"
+ },
+ "name": "Microsoft.ContainerService/locations/operationresults/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a container service",
+ "operation": "Get Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new container service or updates an existing one",
+ "operation": "Create or Update Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a container service",
+ "operation": "Delete Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster",
+ "operation": "Get Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new managed cluster or updates an existing one",
+ "operation": "Create or Update Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a managed cluster",
+ "operation": "Delete Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Starts a managed cluster",
+ "operation": "Start Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/start/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Stops a managed cluster",
+ "operation": "Stop Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/stop/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets a maintenance configuration",
+ "operation": "Get a maintenance configuration",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new MaintenanceConfiguration or updates an existing one",
+ "operation": "Create or Update maintenance configuratio",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a maintenance configuration",
+ "operation": "Delete Maintenance Configuration",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets an agent pool",
+ "operation": "Get Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new agent pool or updates an existing one",
+ "operation": "Create or Update Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes an agent pool",
+ "operation": "Delete Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the upgrade profile of the Agent Pool",
+ "operation": "Get Agent Pool UpgradeProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Upgrade the node image version of agent pool",
+ "operation": "Upgrade agent pool node image version",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/upgradeNodeImageVersion/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the available agent pool versions of the cluster",
+ "operation": "Get Available Agent Pool Versions",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/availableAgentPoolVersions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster access profile by role name",
+ "operation": "Get Managed Cluster AccessProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/accessProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster access profile by role name using list credential",
+ "operation": "Get Managed Cluster AccessProfile by List Credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/accessProfiles/listCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the upgrade profile of the cluster",
+ "operation": "Get UpgradeProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "UpgradeProfile"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/upgradeProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterAdmin credential of a managed cluster",
+ "operation": "List clusterAdmin credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterAdminCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterUser credential of a managed cluster",
+ "operation": "List clusterUser credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterUserCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterMonitoringUser credential of a managed cluster",
+ "operation": "List clusterMonitoringUser credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterMonitoringUserCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reset the service principal profile of a managed cluster",
+ "operation": "Reset service principal profile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetServicePrincipalProfile/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Resolve the private link service id of a managed cluster",
+ "operation": "Resolve private link service id",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resolvePrivateLinkServiceId/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reset the AAD profile of a managed cluster",
+ "operation": "Reset AAD profile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetAADProfile/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Rotate certificates of a managed cluster",
+ "operation": "Rotate certificates of the cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rotateClusterCertificates/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Run user issued command against managed kubernetes server.",
+ "operation": "RunCommand",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/runCommand/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Retrieve result from previous issued command.",
+ "operation": "CommandResult",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/commandResults/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get the diagnostic setting for a managed cluster resource",
+ "operation": "Read Diagnostic Setting",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/diagnosticSettings/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Creates or updates the diagnostic setting for a managed cluster resource",
+ "operation": "Write Diagnostic Setting",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/diagnosticSettings/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get Managed Cluster Detector",
+ "operation": "Get Managed Cluster Detector",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Cluster Detector"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/detectors/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the diagnostics state of the cluster",
+ "operation": "Get Diagnostics State",
+ "provider": "Microsoft Container Service",
+ "resource": "Diagnostics State"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/diagnosticsState/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Determines if user is allowed to approve a private endpoint connection",
+ "operation": "Approve Private Endpoint Connections",
+ "provider": "Microsoft Container Service",
+ "resource": "Approve Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnectionsApproval/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get private endpoint connection",
+ "operation": "Get private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Approve or Reject a private endpoint connection",
+ "operation": "Update private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete private endpoint connection",
+ "operation": "Delete private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets an extension addon",
+ "operation": "Get an extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Creates a new extension addon or updates an existing one",
+ "operation": "Create or Update extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Deletes an extension addon",
+ "operation": "Delete an extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/delete",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get a snapshot",
+ "operation": "Get Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new snapshot",
+ "operation": "Create Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a snapshot",
+ "operation": "Delete Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get eventgrid filter",
+ "operation": "Get eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Create or Update eventgrid filter",
+ "operation": "Create or Update eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Delete an eventgrid filter",
+ "operation": "Delete an eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/delete",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Reads initializerconfigurations",
+ "operation": "Gets/List initializerconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes initializerconfigurations",
+ "operation": "Creates/Updates initializerconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes/DeletesCollection initializerconfigurations resource",
+ "operation": "Initializerconfigurations",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads mutatingwebhookconfigurations",
+ "operation": "Gets/List mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes mutatingwebhookconfigurations",
+ "operation": "Creates/Updates mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes mutatingwebhookconfigurations",
+ "operation": "Deletes/DeletesCollection mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads validatingwebhookconfigurations",
+ "operation": "Gets/List validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes validatingwebhookconfigurations",
+ "operation": "Creates/Updates validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes validatingwebhookconfigurations",
+ "operation": "Deletes/DeletesCollection validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads customresourcedefinitions",
+ "operation": "Gets/List customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes customresourcedefinitions",
+ "operation": "Creates/Updates customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes customresourcedefinitions",
+ "operation": "Deletes/DeletesCollection customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservices",
+ "operation": "Gets/List apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes apiservices",
+ "operation": "Creates/Updates apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes apiservices",
+ "operation": "Deletes/DeletesCollection apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads controllerrevisions",
+ "operation": "Gets/List controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes controllerrevisions",
+ "operation": "Creates/Updates controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes controllerrevisions",
+ "operation": "Deletes/DeletesCollection controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads daemonsets",
+ "operation": "Gets/List daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes daemonsets",
+ "operation": "Creates/Updates daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes daemonsets",
+ "operation": "Deletes/DeletesCollection daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads deployments",
+ "operation": "Gets/List deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes deployments",
+ "operation": "Creates/Updates deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes deployments",
+ "operation": "Deletes/DeletesCollection deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicasets",
+ "operation": "Gets/List replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicasets",
+ "operation": "Creates/Updates replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicasets",
+ "operation": "Deletes/DeletesCollection replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads statefulsets",
+ "operation": "Gets/List statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes statefulsets",
+ "operation": "Creates/Updates statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes statefulsets",
+ "operation": "Deletes/DeletesCollection statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes tokenreviews",
+ "operation": "Creates/Updates tokenreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Tokenreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authentication.k8s.io/tokenreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes localsubjectaccessreviews",
+ "operation": "Creates/Updates localsubjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Localsubjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/localsubjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes selfsubjectaccessreviews",
+ "operation": "Creates/Updates selfsubjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Selfsubjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/selfsubjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes selfsubjectrulesreviews",
+ "operation": "Creates/Updates selfsubjectrulesreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Selfsubjectrulesreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/selfsubjectrulesreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes subjectaccessreviews",
+ "operation": "Creates/Updates subjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Subjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/subjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads horizontalpodautoscalers",
+ "operation": "Gets/List horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes horizontalpodautoscalers",
+ "operation": "Creates/Updates horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes horizontalpodautoscalers",
+ "operation": "Deletes/DeletesCollection horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads cronjobs",
+ "operation": "Gets/List cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes cronjobs",
+ "operation": "Creates/Updates cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes cronjobs",
+ "operation": "Deletes/DeletesCollection cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads jobs",
+ "operation": "Gets/List jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes jobs",
+ "operation": "Creates/Updates jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes jobs",
+ "operation": "Deletes/DeletesCollection jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificatesigningrequests",
+ "operation": "Gets/List certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes certificatesigningrequests",
+ "operation": "Creates/Updates certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes certificatesigningrequests",
+ "operation": "Deletes/DeletesCollection certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads leases",
+ "operation": "Gets/List leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes leases",
+ "operation": "Creates/Updates leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes leases",
+ "operation": "Deletes/DeletesCollection leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes bindings",
+ "operation": "Creates/Updates bindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Bindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/bindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads componentstatuses",
+ "operation": "Gets/List componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes componentstatuses",
+ "operation": "Creates/Updates componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes componentstatuses",
+ "operation": "Deletes/DeletesCollection componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads configmaps",
+ "operation": "Gets/List configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes configmaps",
+ "operation": "Creates/Updates configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes configmaps",
+ "operation": "Deletes/DeletesCollection configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads endpoints",
+ "operation": "Gets/List endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes endpoints",
+ "operation": "Creates/Updates endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes endpoints",
+ "operation": "Deletes/DeletesCollection endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events",
+ "operation": "Gets/List events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes events",
+ "operation": "Creates/Updates events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes events",
+ "operation": "Deletes/DeletesCollection events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads limitranges",
+ "operation": "Gets/List limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes limitranges",
+ "operation": "Creates/Updates limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes limitranges",
+ "operation": "Deletes/DeletesCollection limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads namespaces",
+ "operation": "Gets/List namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes namespaces",
+ "operation": "Creates/Updates namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes namespaces",
+ "operation": "Deletes/DeletesCollection namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads nodes",
+ "operation": "Gets/List nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes nodes",
+ "operation": "Creates/Updates nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes nodes",
+ "operation": "Deletes/DeletesCollection nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads persistentvolumeclaims",
+ "operation": "Gets/List persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes persistentvolumeclaims",
+ "operation": "Creates/Updates persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes persistentvolumeclaims",
+ "operation": "Deletes/DeletesCollection persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads persistentvolumes",
+ "operation": "Gets/List persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes persistentvolumes",
+ "operation": "Creates/Updates persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes persistentvolumes",
+ "operation": "Deletes/DeletesCollection persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads pods",
+ "operation": "Gets/List pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes pods",
+ "operation": "Creates/Updates pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes pods",
+ "operation": "Deletes/DeletesCollection pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Exec into pods resource",
+ "operation": "Exec into pods resource ",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/exec/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podtemplates",
+ "operation": "Gets/List podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podtemplates",
+ "operation": "Creates/Updates podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podtemplates",
+ "operation": "Deletes/DeletesCollection podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicationcontrollers",
+ "operation": "Gets/List replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicationcontrollers",
+ "operation": "Creates/Updates replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicationcontrollers",
+ "operation": "Deletes/DeletesCollection replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads resourcequotas",
+ "operation": "Gets/List resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes resourcequotas",
+ "operation": "Creates/Updates resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes resourcequotas",
+ "operation": "Deletes/DeletesCollection resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads secrets",
+ "operation": "Gets/List secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes secrets",
+ "operation": "Creates/Updates secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes secrets",
+ "operation": "Deletes/DeletesCollection secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads serviceaccounts",
+ "operation": "Gets/List serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes serviceaccounts",
+ "operation": "Creates/Updates serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes serviceaccounts",
+ "operation": "Deletes/DeletesCollection serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads services",
+ "operation": "Gets/List services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes services",
+ "operation": "Creates/Updates services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes services",
+ "operation": "Deletes/DeletesCollection services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events",
+ "operation": "Gets/List events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes events",
+ "operation": "Creates/Updates events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes events",
+ "operation": "Deletes/DeletesCollection events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads daemonsets",
+ "operation": "Gets/List daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes daemonsets",
+ "operation": "Creates/Updates daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes daemonsets",
+ "operation": "Deletes/DeletesCollection daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads deployments",
+ "operation": "Gets/List deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes deployments",
+ "operation": "Creates/Updates deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes deployments",
+ "operation": "Deletes/DeletesCollection deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ingresses",
+ "operation": "Gets/List ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes ingresses",
+ "operation": "Creates/Updates ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes ingresses",
+ "operation": "Deletes/DeletesCollection ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networkpolicies",
+ "operation": "Gets/List networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes networkpolicies",
+ "operation": "Creates/Updates networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes networkpolicies",
+ "operation": "Deletes/DeletesCollection networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podsecuritypolicies",
+ "operation": "Gets/List podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podsecuritypolicies",
+ "operation": "Creates/Updates podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podsecuritypolicies",
+ "operation": "Deletes/DeletesCollection podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicasets",
+ "operation": "Gets/List replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicasets",
+ "operation": "Creates/Updates replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicasets",
+ "operation": "Deletes/DeletesCollection replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads pods",
+ "operation": "Gets/List pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics.k8s.io/pods/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads nodes",
+ "operation": "Gets/List nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics.k8s.io/nodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networkpolicies",
+ "operation": "Gets/List networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes networkpolicies",
+ "operation": "Creates/Updates networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes networkpolicies",
+ "operation": "Deletes/DeletesCollection networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ingresses",
+ "operation": "Gets/List ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes ingresses",
+ "operation": "Creates/Updates ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes ingresses",
+ "operation": "Deletes/DeletesCollection ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads runtimeclasses",
+ "operation": "Gets/List runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes runtimeclasses",
+ "operation": "Creates/Updates runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes runtimeclasses",
+ "operation": "Deletes/DeletesCollection runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads api",
+ "operation": "Gets/List api resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Api"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/api/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads api/v1",
+ "operation": "Gets/List api/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Api/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/api/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apis",
+ "operation": "Gets/List apis resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apis"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io",
+ "operation": "Gets/List admissionregistration.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io/v1",
+ "operation": "Gets/List admissionregistration.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io/v1beta1",
+ "operation": "Gets/List admissionregistration.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io",
+ "operation": "Gets/List apiextensions.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io/v1",
+ "operation": "Gets/List apiextensions.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io/v1beta1",
+ "operation": "Gets/List apiextensions.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io",
+ "operation": "Gets/List apiregistration.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io/v1",
+ "operation": "Gets/List apiregistration.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io/v1beta1",
+ "operation": "Gets/List apiregistration.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps",
+ "operation": "Gets/List apps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1",
+ "operation": "Gets/List apps/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1beta1",
+ "operation": "Gets/List apps/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1beta2",
+ "operation": "Gets/List apps/v1beta2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1beta2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1beta2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io",
+ "operation": "Gets/List authentication.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io/v1",
+ "operation": "Gets/List authentication.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io/v1beta1",
+ "operation": "Gets/List authentication.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io",
+ "operation": "Gets/List authorization.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io/v1",
+ "operation": "Gets/List authorization.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io/v1beta1",
+ "operation": "Gets/List authorization.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling",
+ "operation": "Gets/List autoscaling resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v1",
+ "operation": "Gets/List autoscaling/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v2beta1",
+ "operation": "Gets/List autoscaling/v2beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V2beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v2beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v2beta2",
+ "operation": "Gets/List autoscaling/v2beta2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V2beta2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v2beta2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch",
+ "operation": "Gets/List batch resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch/v1",
+ "operation": "Gets/List batch/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch/v1beta1",
+ "operation": "Gets/List batch/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificates.k8s.io",
+ "operation": "Gets/List certificates.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificates.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/certificates.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificates.k8s.io/v1beta1",
+ "operation": "Gets/List certificates.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificates.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/certificates.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination.k8s.io",
+ "operation": "Gets/List coordination.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination/v1",
+ "operation": "Gets/List coordination/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination.k8s.io/v1beta1",
+ "operation": "Gets/List coordination.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events.k8s.io",
+ "operation": "Gets/List events.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/events.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events.k8s.io/v1beta1",
+ "operation": "Gets/List events.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/events.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads extensions",
+ "operation": "Gets/List extensions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Extensions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/extensions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads extensions/v1beta1",
+ "operation": "Gets/List extensions/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Extensions/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/extensions/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics.k8s.io",
+ "operation": "Gets/List metrics.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/metrics.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics.k8s.io/v1beta1",
+ "operation": "Gets/List metrics.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/metrics.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking.k8s.io",
+ "operation": "Gets/List networking.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking/v1",
+ "operation": "Gets/List networking/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking.k8s.io/v1beta1",
+ "operation": "Gets/List networking.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads node.k8s.io",
+ "operation": "Gets/List node.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Node.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/node.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads node.k8s.io/v1beta1",
+ "operation": "Gets/List node.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Node.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/node.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads policy",
+ "operation": "Gets/List policy resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Policy"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/policy/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads policy/v1beta1",
+ "operation": "Gets/List policy/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Policy/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/policy/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization.k8s.io",
+ "operation": "Gets/List rbac.authorization.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization/v1",
+ "operation": "Gets/List rbac.authorization/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization.k8s.io/v1beta1",
+ "operation": "Gets/List rbac.authorization.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling.k8s.io",
+ "operation": "Gets/List scheduling.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling/v1",
+ "operation": "Gets/List scheduling/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling.k8s.io/v1beta1",
+ "operation": "Gets/List scheduling.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage.k8s.io",
+ "operation": "Gets/List storage.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage/v1",
+ "operation": "Gets/List storage/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage.k8s.io/v1beta1",
+ "operation": "Gets/List storage.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads healthz",
+ "operation": "Gets/List healthz resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads livez",
+ "operation": "Gets/List livez resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads logs",
+ "operation": "Gets/List logs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Logs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/logs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics",
+ "operation": "Gets/List metrics resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads v2",
+ "operation": "Gets/List v2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Openapi/V2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/openapi/v2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads readyz",
+ "operation": "Gets/List readyz resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads shutdown",
+ "operation": "Gets/List shutdown resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Shutdown"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/shutdown/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads resetMetrics",
+ "operation": "Gets/List resetMetrics resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resetmetrics"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetMetrics/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads swagger-ui",
+ "operation": "Gets/List swagger-ui resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Swagger-Ui"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/swagger-ui/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads swagger-api",
+ "operation": "Gets/List swagger-api resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Swagger-Api"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/swagger-api/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ui",
+ "operation": "Gets/List ui resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ui"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/ui/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads version",
+ "operation": "Gets/List version resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Version"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/version/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads poddisruptionbudgets",
+ "operation": "Gets/List poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes poddisruptionbudgets",
+ "operation": "Creates/Updates poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes poddisruptionbudgets",
+ "operation": "Deletes/DeletesCollection poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podsecuritypolicies",
+ "operation": "Gets/List podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podsecuritypolicies",
+ "operation": "Creates/Updates podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podsecuritypolicies",
+ "operation": "Deletes/DeletesCollection podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads clusterrolebindings",
+ "operation": "Gets/List clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes clusterrolebindings",
+ "operation": "Creates/Updates clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes clusterrolebindings",
+ "operation": "Deletes/DeletesCollection clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads clusterroles",
+ "operation": "Gets/List clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes clusterroles",
+ "operation": "Creates/Updates clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes clusterroles",
+ "operation": "Deletes/DeletesCollection clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rolebindings",
+ "operation": "Gets/List rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes rolebindings",
+ "operation": "Creates/Updates rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes rolebindings",
+ "operation": "Deletes/DeletesCollection rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads roles",
+ "operation": "Gets/List roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes roles",
+ "operation": "Creates/Updates roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes roles",
+ "operation": "Deletes/DeletesCollection roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads priorityclasses",
+ "operation": "Gets/List priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes priorityclasses",
+ "operation": "Creates/Updates priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes priorityclasses",
+ "operation": "Deletes/DeletesCollection priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Use action on podsecuritypolicies",
+ "operation": "Use podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/use/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Binds clusterroles",
+ "operation": "Bind clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/bind/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Escalates",
+ "operation": "Escalate clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/escalate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Binds roles",
+ "operation": "Bind roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/bind/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Escalates roles",
+ "operation": "Escalate roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/escalate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate serviceaccounts",
+ "operation": "Impersonate serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate users",
+ "operation": "Impersonate users resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Users"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/users/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate groups",
+ "operation": "Impersonate groups resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Groups"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/groups/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate userextras",
+ "operation": "Impersonate userextras resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Userextras"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authentication.k8s.io/userextras/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storageclasses",
+ "operation": "Gets/List storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes storageclasses",
+ "operation": "Creates/Updates storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes storageclasses",
+ "operation": "Deletes/DeletesCollection storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads volumeattachments",
+ "operation": "Gets/List volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes volumeattachments",
+ "operation": "Creates/Updates volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes volumeattachments",
+ "operation": "Deletes/DeletesCollection volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads csidrivers",
+ "operation": "Gets/List csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes csidrivers",
+ "operation": "Creates/Updates csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes csidrivers",
+ "operation": "Deletes/DeletesCollection csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads csinodes",
+ "operation": "Gets/List csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes csinodes",
+ "operation": "Creates/Updates csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes csinodes",
+ "operation": "Deletes/DeletesCollection csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the available metrics for Managed Cluster",
+ "operation": "Read Managed Cluster metric definitions",
+ "provider": "Microsoft Container Service",
+ "resource": "The metric definition of Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/metricDefinitions/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Gets the available logs for Managed Cluster",
+ "operation": "Read Managed Cluster log definitions",
+ "provider": "Microsoft Container Service",
+ "resource": "The log definition of Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/logDefinitions/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get a Open Shift Managed Cluster",
+ "operation": "Get Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new Open Shift Managed Cluster or updates an existing one",
+ "operation": "Create or Update Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete a Open Shift Managed Cluster",
+ "operation": "Delete Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a Open Shift Cluster",
+ "operation": "Get Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new Open Shift Cluster or updates an existing one",
+ "operation": "Create or Update Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete a Open Shift Cluster",
+ "operation": "Delete Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/delete",
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/OutboundNetworkDependenciesEndpointsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/OutboundNetworkDependenciesEndpointsList.json
new file mode 100644
index 000000000000..abd11508918b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/OutboundNetworkDependenciesEndpointsList.json
@@ -0,0 +1,242 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "management.azure.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "login.microsoftonline.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "images",
+ "endpoints": [
+ {
+ "domainName": "mcr.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "*.data.mcr.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https",
+ "description": "mcr cdn"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "artifacts",
+ "endpoints": [
+ {
+ "domainName": "packages.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "acs-mirror.azureedge.net",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "time-sync",
+ "endpoints": [
+ {
+ "domainName": "ntp.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 123,
+ "protocol": "UDP"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "ubuntu-optional",
+ "endpoints": [
+ {
+ "domainName": "security.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "azure.archive.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "changelogs.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "gpu",
+ "endpoints": [
+ {
+ "domainName": "nvidia.github.io",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "us.download.nvidia.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "apt.dockerproject.org",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "windows",
+ "endpoints": [
+ {
+ "domainName": "onegetcdn.azureedge.net",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "go.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "*.mp.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "www.msftconnecttest.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "ctldl.windowsupdate.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "apiserver",
+ "endpoints": [
+ {
+ "domainName": "*.azmk8s.io",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "tunnel-classic",
+ "endpoints": [
+ {
+ "domainName": "*.azmk8s.io",
+ "endpointDetails": [
+ {
+ "port": 9000,
+ "protocol": "TCP"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsDelete.json
new file mode 100644
index 000000000000..135e24faa97a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsDelete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsGet.json
new file mode 100644
index 000000000000..fdcf310e2a49
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsGet.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsList.json
new file mode 100644
index 000000000000..225ac43454df
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsUpdate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsUpdate.json
new file mode 100644
index 000000000000..42a75455c0fd
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateEndpointConnectionsUpdate.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1",
+ "parameters": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateLinkResourcesList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateLinkResourcesList.json
new file mode 100644
index 000000000000..a7547e52ee1a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/PrivateLinkResourcesList.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "management",
+ "type": "Microsoft.ContainerService/managedClusters/privateLinkResources",
+ "groupId": "management",
+ "requiredMembers": [
+ "management"
+ ],
+ "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ResolvePrivateLinkServiceId.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ResolvePrivateLinkServiceId.json
new file mode 100644
index 000000000000..c19a9401f29f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/ResolvePrivateLinkServiceId.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "name": "management"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandRequest.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandRequest.json
new file mode 100644
index 000000000000..8eaed6e2bf80
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandRequest.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "requestPayload": {
+ "command": "kubectl apply -f ns.yaml",
+ "context": "",
+ "clusterToken": ""
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-06-02-preview"
+ }
+ },
+ "200": {
+ "description": "to mitigate RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE",
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "succeeded",
+ "exitCode": 0,
+ "startedAt": "2021-02-17T00:28:20Z",
+ "finishedAt": "2021-02-17T00:28:33Z",
+ "logs": "namespace dummy created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandResultFailed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandResultFailed.json
new file mode 100644
index 000000000000..d102257853b8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandResultFailed.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-06-02-preview"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "failed",
+ "reason": "ImagePullBackoff"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandResultSucceed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandResultSucceed.json
new file mode 100644
index 000000000000..27a27d99e165
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/RunCommandResultSucceed.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-06-02-preview"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "succeeded",
+ "exitCode": 0,
+ "startedAt": "2021-02-17T00:28:20Z",
+ "finishedAt": "2021-02-17T00:28:33Z",
+ "logs": "namespace dummy created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsCreate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsCreate.json
new file mode 100644
index 000000000000..74b9643ce898
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsCreate.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsDelete.json
new file mode 100644
index 000000000000..f71b8f6f11a0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsDelete.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsGet.json
new file mode 100644
index 000000000000..a580ba63e1dd
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsGet.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsList.json
new file mode 100644
index 000000000000..2008c56b8857
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsList.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsListByResourceGroup.json
new file mode 100644
index 000000000000..e87be37c4d12
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsListByResourceGroup.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsUpdateTags.json
new file mode 100644
index 000000000000..7de75cfe0e1f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/SnapshotsUpdateTags.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "tags": {
+ "key2": "new-val2",
+ "key3": "val3"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_CreateOrUpdate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_CreateOrUpdate.json
new file mode 100644
index 000000000000..78e300ffe5b9
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_CreateOrUpdate.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "trustedAccessRoleBindingName": "binding1",
+ "trustedAccessRoleBinding": {
+ "properties": {
+ "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/b/providers/Microsoft.MachineLearningServices/workspaces/c",
+ "roles": [
+ "Microsoft.MachineLearningServices/workspaces/reader",
+ "Microsoft.MachineLearningServices/workspaces/writer"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/trustedAccessRoleBindings/binding1",
+ "type": "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings",
+ "name": "binding1",
+ "properties": {
+ "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/b/providers/Microsoft.MachineLearningServices/workspaces/c",
+ "roles": [
+ "Microsoft.MachineLearningServices/workspaces/reader",
+ "Microsoft.MachineLearningServices/workspaces/writer"
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/trustedAccessRoleBindings/binding1",
+ "type": "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings",
+ "name": "binding1",
+ "properties": {
+ "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/b/providers/Microsoft.MachineLearningServices/workspaces/c",
+ "roles": [
+ "Microsoft.MachineLearningServices/workspaces/reader",
+ "Microsoft.MachineLearningServices/workspaces/writer"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_Delete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_Delete.json
new file mode 100644
index 000000000000..bb057bc49024
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "trustedAccessRoleBindingName": "binding1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_Get.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_Get.json
new file mode 100644
index 000000000000..502559e3d3d5
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_Get.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "trustedAccessRoleBindingName": "binding1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/trustedAccessRoleBindings/binding1",
+ "type": "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings",
+ "name": "binding1",
+ "properties": {
+ "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/b/providers/Microsoft.MachineLearningServices/workspaces/c",
+ "roles": [
+ "Microsoft.MachineLearningServices/workspaces/reader",
+ "Microsoft.MachineLearningServices/workspaces/writer"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_List.json
new file mode 100644
index 000000000000..1108f28c1f75
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoleBindings_List.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/trustedAccessRoleBindings/binding1",
+ "type": "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings",
+ "name": "binding1",
+ "properties": {
+ "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/b/providers/Microsoft.MachineLearningServices/workspaces/c",
+ "roles": [
+ "Microsoft.MachineLearningServices/workspaces/reader",
+ "Microsoft.MachineLearningServices/workspaces/writer"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoles_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoles_List.json
new file mode 100644
index 000000000000..be564001d110
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/examples/TrustedAccessRoles_List.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-06-02-preview",
+ "subscriptionId": "subid1",
+ "location": "westus2"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "sourceResourceType": "Microsoft.MachineLearningServices/workspaces",
+ "name": "reader",
+ "rules": [
+ {
+ "verbs": [
+ "get"
+ ],
+ "apiGroups": [
+ ""
+ ],
+ "resources": [
+ "pods"
+ ],
+ "resourceNames": [],
+ "nonResourceURLs": []
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/managedClusters.json
new file mode 100644
index 000000000000..a39e026a356e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/preview/2023-06-02-preview/managedClusters.json
@@ -0,0 +1,8399 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ContainerServiceClient",
+ "description": "The Container Service Client.",
+ "version": "2023-06-02-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.ContainerService/operations": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "Operations_List",
+ "summary": "Gets a list of operations.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "List available operations for the container service resource provider": {
+ "$ref": "./examples/Operation_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/osOptions/default": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetOSOptions",
+ "summary": "Gets supported OS options in the specified subscription.",
+ "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/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceTypeParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSOptionProfile"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container Service OS Options": {
+ "$ref": "./examples/ContainerServiceGetOSOptions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/kubernetesVersions": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListKubernetesVersions",
+ "summary": "Gets a list of supported Kubernetes versions in the specified subscription.",
+ "description": "Contains extra metadata on the version, including supported patch versions, capabilities, available upgrades, and details on preview status of the 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/LocationParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/KubernetesVersionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Kubernetes Versions": {
+ "$ref": "./examples/KubernetesVersions_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_List",
+ "summary": "Gets a list of managed clusters in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Managed Clusters": {
+ "$ref": "./examples/ManagedClustersList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListByResourceGroup",
+ "summary": "Lists managed clusters in the specified subscription and resource group.",
+ "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": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Get Managed Clusters by Resource Group": {
+ "$ref": "./examples/ManagedClustersListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetUpgradeProfile",
+ "summary": "Gets the upgrade profile of a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Upgrade Profile for Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGetUpgradeProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": {
+ "post": {
+ "deprecated": true,
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetAccessProfile",
+ "summary": "Gets an access profile of a managed cluster.",
+ "description": "**WARNING**: This API will be deprecated. Instead use [ListClusterUserCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusterusercredentials) or [ListClusterAdminCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusteradmincredentials) .",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "roleName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the role for managed cluster accessProfile resource."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterAccessProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGetAccessProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterAdminCredentials",
+ "summary": "Lists the admin credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterCredentialResult.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterUserCredentials",
+ "summary": "Lists the user credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialFormatParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterCredentialResult.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterMonitoringUserCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterMonitoringUserCredentials",
+ "summary": "Lists the cluster monitoring user credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterCredentialResult.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Get",
+ "summary": "Gets a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_CreateOrUpdate",
+ "summary": "Creates or updates a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ },
+ "description": "The managed cluster to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing managed cluster was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "201": {
+ "description": "The new managed cluster was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create/Update Managed Cluster": {
+ "$ref": "./examples/ManagedClustersCreate_Update.json"
+ },
+ "Create/Update AAD Managed Cluster with EnableAzureRBAC": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json"
+ },
+ "Create/Update Managed Cluster with EnableNamespaceResources": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithEnableNamespaceResources.json"
+ },
+ "Create Managed Cluster with PPG": {
+ "$ref": "./examples/ManagedClustersCreate_PPG.json"
+ },
+ "Create Managed Cluster with OSSKU": {
+ "$ref": "./examples/ManagedClustersCreate_OSSKU.json"
+ },
+ "Create Managed Cluster with GPUMIG": {
+ "$ref": "./examples/ManagedClustersCreate_GPUMIG.json"
+ },
+ "Create/Update Managed Cluster with EnableAHUB": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithAHUB.json"
+ },
+ "Create Managed Cluster with EncryptionAtHost enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableEncryptionAtHost.json"
+ },
+ "Create Managed Cluster with UltraSSD enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableUltraSSD.json"
+ },
+ "Create Managed Cluster with PodIdentity enabled": {
+ "$ref": "./examples/ManagedClustersCreate_PodIdentity.json"
+ },
+ "Create Managed Private Cluster with fqdn subdomain specified": {
+ "$ref": "./examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json"
+ },
+ "Create Managed Private Cluster with Public FQDN specified": {
+ "$ref": "./examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json"
+ },
+ "Create Managed Cluster with RunCommand disabled": {
+ "$ref": "./examples/ManagedClustersCreate_DisableRunCommand.json"
+ },
+ "Create Managed Cluster with LongTermSupport": {
+ "$ref": "./examples/ManagedClustersCreate_Premium.json"
+ },
+ "Create Managed Cluster with Node Public IP Prefix": {
+ "$ref": "./examples/ManagedClustersCreate_NodePublicIPPrefix.json"
+ },
+ "Create Managed Cluster with Azure Key Vault Secrets Provider Addon": {
+ "$ref": "./examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json"
+ },
+ "Create Managed Cluster with FIPS enabled OS": {
+ "$ref": "./examples/ManagedClustersCreate_EnabledFIPS.json"
+ },
+ "Create Managed Cluster with HTTP proxy configured": {
+ "$ref": "./examples/ManagedClustersCreate_HTTPProxy.json"
+ },
+ "Create Managed Cluster with Security Profile configured": {
+ "$ref": "./examples/ManagedClustersCreate_SecurityProfile.json"
+ },
+ "Create Managed Cluster with Web App Routing Ingress Profile configured": {
+ "$ref": "./examples/ManagedClustersCreate_IngressProfile_WebAppRouting.json"
+ },
+ "Create Managed Cluster with AKS-managed NAT gateway as outbound type": {
+ "$ref": "./examples/ManagedClustersCreate_ManagedNATGateway.json"
+ },
+ "Create Managed Cluster with user-assigned NAT gateway as outbound type": {
+ "$ref": "./examples/ManagedClustersCreate_UserAssignedNATGateway.json"
+ },
+ "Create Managed Cluster using an agent pool snapshot": {
+ "$ref": "./examples/ManagedClustersCreate_Snapshot.json"
+ },
+ "Create Managed Cluster using a managed cluster snapshot": {
+ "$ref": "./examples/ManagedClustersCreate_MCSnapshot.json"
+ },
+ "Create/Update Managed Cluster with Windows gMSA enabled": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWindowsGmsa.json"
+ },
+ "Create/Update Managed Cluster with dual-stack networking": {
+ "$ref": "./examples/ManagedClustersCreate_DualStackNetworking.json"
+ },
+ "Associate Managed Cluster with Capacity Reservation Group": {
+ "$ref": "./examples/ManagedClustersAssociate_CRG.json"
+ },
+ "Create Managed Cluster with Dedicated Host Group": {
+ "$ref": "./examples/ManagedClustersCreate_DedicatedHostGroup.json"
+ },
+ "Create Managed Cluster with CustomCATrustCertificates populated and CustomCATrust enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableCustomCATrust.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_UpdateTags",
+ "summary": "Updates tags on a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update Managed Cluster Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update Managed Cluster Tags": {
+ "$ref": "./examples/ManagedClustersUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Delete",
+ "summary": "Deletes a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/IgnorePodDisruptionBudgetParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Managed Cluster": {
+ "$ref": "./examples/ManagedClustersDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations": {
+ "get": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_ListByManagedCluster",
+ "summary": "Gets a list of maintenance configurations in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfigurationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List maintenance configurations by Managed Cluster": {
+ "$ref": "./examples/MaintenanceConfigurationsList.json"
+ },
+ "List maintenance configurations configured with maintenance window by Managed Cluster": {
+ "$ref": "./examples/MaintenanceConfigurationsList_MaintenanceWindow.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations/{configName}": {
+ "get": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_Get",
+ "summary": "Gets the specified maintenance configuration of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsGet.json"
+ },
+ "Get Maintenance Configuration Configured With Maintenance Window": {
+ "$ref": "./examples/MaintenanceConfigurationsGet_MaintenanceWindow.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_CreateOrUpdate",
+ "summary": "Creates or updates a maintenance configuration in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ },
+ "description": "The maintenance configuration to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing maintenance configuration was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "201": {
+ "description": "The new maintenance configuration was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create/Update Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsCreate_Update.json"
+ },
+ "Create/Update Maintenance Configuration with Maintenance Window": {
+ "$ref": "./examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_Delete",
+ "summary": "Deletes a maintenance configuration.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Delete Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsDelete.json"
+ },
+ "Delete Maintenance Configuration For Node OS Upgrade": {
+ "$ref": "./examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclusters/{resourceName}/agentPools/{agentPoolName}/abort": {
+ "post": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_AbortLatestOperation",
+ "summary": "Aborts last operation running on agent pool.",
+ "description": "Aborts the currently running operation on the agent pool. The Agent Pool will be moved to a Canceling state and eventually to a Canceled state when cancellation finishes. If the operation completes before cancellation can take place, an error is returned.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "location": {
+ "description": "URL to query for status of the operation.",
+ "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": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Abort operation on agent pool": {
+ "$ref": "./examples/AgentPoolsAbortOperation.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_List",
+ "summary": "Gets a list of agent pools in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Agent Pools by Managed Cluster": {
+ "$ref": "./examples/AgentPoolsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_Get",
+ "summary": "Gets the specified managed cluster agent pool.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Agent Pool": {
+ "$ref": "./examples/AgentPoolsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_CreateOrUpdate",
+ "summary": "Creates or updates an agent pool in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the agent pool."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "description": "The agent pool to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing agent pool was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "201": {
+ "description": "The new agent pool was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create/Update Agent Pool": {
+ "$ref": "./examples/AgentPoolsCreate_Update.json"
+ },
+ "Update Agent Pool": {
+ "$ref": "./examples/AgentPools_Update.json"
+ },
+ "Create Spot Agent Pool": {
+ "$ref": "./examples/AgentPoolsCreate_Spot.json"
+ },
+ "Create Agent Pool with PPG": {
+ "$ref": "./examples/AgentPoolsCreate_PPG.json"
+ },
+ "Create Agent Pool with OSSKU": {
+ "$ref": "./examples/AgentPoolsCreate_OSSKU.json"
+ },
+ "Create Agent Pool with Windows OSSKU": {
+ "$ref": "./examples/AgentPoolsCreate_WindowsOSSKU.json"
+ },
+ "Create Windows Agent Pool with disabling OutboundNAT": {
+ "$ref": "./examples/AgentPoolsCreate_WindowsDisableOutboundNAT.json"
+ },
+ "Create Agent Pool with GPUMIG": {
+ "$ref": "./examples/AgentPoolsCreate_GPUMIG.json"
+ },
+ "Create Agent Pool with Ephemeral OS Disk": {
+ "$ref": "./examples/AgentPoolsCreate_Ephemeral.json"
+ },
+ "Create Agent Pool with KubeletConfig and LinuxOSConfig": {
+ "$ref": "./examples/AgentPoolsCreate_CustomNodeConfig.json"
+ },
+ "Create Agent Pool with EncryptionAtHost enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableEncryptionAtHost.json"
+ },
+ "Create Agent Pool with UltraSSD enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableUltraSSD.json"
+ },
+ "Create Agent Pool with FIPS enabled OS": {
+ "$ref": "./examples/AgentPoolsCreate_EnableFIPS.json"
+ },
+ "Create Agent Pool using an agent pool snapshot": {
+ "$ref": "./examples/AgentPoolsCreate_Snapshot.json"
+ },
+ "Create Agent Pool with Krustlet and the WASI runtime": {
+ "$ref": "./examples/AgentPoolsCreate_WasmWasi.json"
+ },
+ "Create Agent Pool with Message of the Day": {
+ "$ref": "./examples/AgentPoolsCreate_MessageOfTheDay.json"
+ },
+ "Stop Agent Pool": {
+ "$ref": "./examples/AgentPools_Stop.json"
+ },
+ "Start Agent Pool": {
+ "$ref": "./examples/AgentPools_Start.json"
+ },
+ "Associate Agent Pool with Capacity Reservation Group": {
+ "$ref": "./examples/AgentPoolsAssociate_CRG.json"
+ },
+ "Create Agent Pool with Dedicated Host Group": {
+ "$ref": "./examples/AgentPoolsCreate_DedicatedHostGroup.json"
+ },
+ "Create Agent Pool with CustomCATrust enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableCustomCATrust.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_Delete",
+ "summary": "Deletes an agent pool in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the agent pool."
+ },
+ {
+ "$ref": "#/parameters/IgnorePodDisruptionBudgetParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Agent Pool": {
+ "$ref": "./examples/AgentPoolsDelete.json"
+ },
+ "Delete Agent Pool by ignoring PodDisruptionBudget": {
+ "$ref": "./examples/AgentPoolsDelete_IgnorePodDisruptionBudget.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_GetUpgradeProfile",
+ "summary": "Gets the upgrade profile for an agent pool.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Upgrade Profile for Agent Pool": {
+ "$ref": "./examples/AgentPoolsGetUpgradeProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_GetAvailableAgentPoolVersions",
+ "summary": "Gets a list of supported Kubernetes versions for the specified agent pool.",
+ "description": "See [supported Kubernetes versions](https://docs.microsoft.com/azure/aks/supported-kubernetes-versions) for more details about the version lifecycle.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolAvailableVersions"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get available versions for agent pool": {
+ "$ref": "./examples/AgentPoolsGetAgentPoolAvailableVersions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ResetServicePrincipalProfile",
+ "summary": "Reset the Service Principal Profile of a managed cluster.",
+ "description": "This action cannot be performed on a cluster that is not using a service principal",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterServicePrincipalProfile"
+ },
+ "description": "The service principal profile to set on the managed cluster."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Reset Service Principal Profile": {
+ "$ref": "./examples/ManagedClustersResetServicePrincipalProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": {
+ "post": {
+ "deprecated": true,
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ResetAADProfile",
+ "summary": "Reset the AAD Profile of a managed cluster.",
+ "description": "**WARNING**: This API will be deprecated. Please see [AKS-managed Azure Active Directory integration](https://aka.ms/aks-managed-aad) to update your cluster with AKS-managed Azure AD.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterAADProfile"
+ },
+ "description": "The AAD profile to set on the Managed Cluster"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Reset AAD Profile": {
+ "$ref": "./examples/ManagedClustersResetAADProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclusters/{resourceName}/abort": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_AbortLatestOperation",
+ "summary": "Aborts last operation running on managed cluster.",
+ "description": "Aborts the currently running operation on the managed cluster. The Managed Cluster will be moved to a Canceling state and eventually to a Canceled state when cancellation finishes. If the operation completes before cancellation can take place, an error is returned.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "location": {
+ "description": "URL to query for status of the operation.",
+ "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": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Abort operation on managed cluster": {
+ "$ref": "./examples/ManagedClustersAbortOperation.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RotateClusterCertificates",
+ "summary": "Rotates the certificates of a managed cluster.",
+ "description": "See [Certificate rotation](https://docs.microsoft.com/azure/aks/certificate-rotation) for more details about rotating managed cluster certificates.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Rotate Cluster Certificates": {
+ "$ref": "./examples/ManagedClustersRotateClusterCertificates.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateServiceAccountSigningKeys": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RotateServiceAccountSigningKeys",
+ "summary": "Rotates the service account signing keys of a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Rotate Cluster Service Account Signing Keys": {
+ "$ref": "./examples/ManagedClustersRotateServiceAccountSigningKeys.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/stop": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Stop",
+ "summary": "Stops a Managed Cluster",
+ "description": "This can only be performed on Azure Virtual Machine Scale set backed clusters. Stopping a cluster stops the control plane and agent nodes entirely, while maintaining all object and cluster state. A cluster does not accrue charges while it is stopped. See [stopping a cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for more details about stopping a cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Stop Managed Cluster": {
+ "$ref": "./examples/ManagedClustersStop.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/start": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Start",
+ "summary": "Starts a previously stopped Managed Cluster",
+ "description": "See [starting a cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for more details about starting a cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Start Managed Cluster": {
+ "$ref": "./examples/ManagedClustersStart.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_List",
+ "summary": "Gets a list of private endpoint connections in the specified managed cluster.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Private Endpoint Connections by Managed Cluster": {
+ "$ref": "./examples/PrivateEndpointConnectionsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Get",
+ "summary": "Gets the specified private endpoint connection.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Update",
+ "summary": "Updates a private endpoint connection.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The updated private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing private endpoint connection was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "201": {
+ "description": "The new private endpoint connection was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Delete",
+ "summary": "Deletes a private endpoint connection.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content -- The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeNodeImageVersion": {
+ "post": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_UpgradeNodeImageVersion",
+ "summary": "Upgrades the node image version of an agent pool to the latest.",
+ "description": "Upgrading the node image version of an agent pool applies the newest OS and runtime updates to the nodes. AKS provides one new image per week with the latest updates. For more details on node image versions, see: https://docs.microsoft.com/azure/aks/node-image-upgrade",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Upgrade Agent Pool Node Image Version": {
+ "$ref": "./examples/AgentPoolsUpgradeNodeImageVersion.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "privateLinkResources"
+ ],
+ "operationId": "PrivateLinkResources_List",
+ "summary": "Gets a list of private link resources in the specified managed cluster.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourcesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Private Link Resources by Managed Cluster": {
+ "$ref": "./examples/PrivateLinkResourcesList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resolvePrivateLinkServiceId": {
+ "post": {
+ "tags": [
+ "resolvePrivateLinkServiceId"
+ ],
+ "operationId": "ResolvePrivateLinkServiceId_POST",
+ "summary": "Gets the private link service ID for the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ },
+ "description": "Parameters required in order to resolve a private link service ID."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Resolve the Private Link Service ID for Managed Cluster": {
+ "$ref": "./examples/ResolvePrivateLinkServiceId.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/runCommand": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RunCommand",
+ "summary": "Submits a command to run against the Managed Cluster.",
+ "description": "AKS will create a pod to run the command. This is primarily useful for private clusters. For more information see [AKS Run Command](https://docs.microsoft.com/azure/aks/private-clusters#aks-run-command-preview).",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "requestPayload",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RunCommandRequest"
+ },
+ "description": "The run command request"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "command finished with async pattern, tracking by location header. !!! this is for autorest only, you never get 200 from this api !!!",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "submitNewCommand": {
+ "$ref": "./examples/RunCommandRequest.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/commandResults/{commandId}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetCommandResult",
+ "summary": "Gets the results of a command which has been run on the Managed Cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "commandId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Id of the command."
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "command running in progress",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "command finished",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "commandSucceedResult": {
+ "$ref": "./examples/RunCommandResultSucceed.json"
+ },
+ "commandFailedResult": {
+ "$ref": "./examples/RunCommandResultFailed.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/outboundNetworkDependenciesEndpoints": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListOutboundNetworkDependenciesEndpoints",
+ "summary": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster.",
+ "description": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster. The operation returns properties of each egress endpoint.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OutboundEnvironmentEndpointCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List OutboundNetworkDependenciesEndpoints by Managed Cluster": {
+ "$ref": "./examples/OutboundNetworkDependenciesEndpointsList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_List",
+ "summary": "Gets a list of snapshots in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Snapshots": {
+ "$ref": "./examples/SnapshotsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_ListByResourceGroup",
+ "summary": "Lists snapshots in the specified subscription and 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": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Snapshots by Resource Group": {
+ "$ref": "./examples/SnapshotsListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots/{resourceName}": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Get",
+ "summary": "Gets a snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Snapshot": {
+ "$ref": "./examples/SnapshotsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_CreateOrUpdate",
+ "summary": "Creates or updates a snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "The snapshot to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing snapshot was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "201": {
+ "description": "The new snapshot was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/Update Snapshot": {
+ "$ref": "./examples/SnapshotsCreate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_UpdateTags",
+ "summary": "Updates tags on a snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update snapshot Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Snapshot Tags": {
+ "$ref": "./examples/SnapshotsUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Delete",
+ "summary": "Deletes a snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Snapshot": {
+ "$ref": "./examples/SnapshotsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedclustersnapshots": {
+ "get": {
+ "tags": [
+ "ManagedClusterSnapshots"
+ ],
+ "operationId": "ManagedClusterSnapshots_List",
+ "summary": "Gets a list of managed cluster snapshots in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Managed Cluster Snapshots": {
+ "$ref": "./examples/ManagedClusterSnapshotsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclustersnapshots": {
+ "get": {
+ "tags": [
+ "ManagedClusterSnapshots"
+ ],
+ "operationId": "ManagedClusterSnapshots_ListByResourceGroup",
+ "summary": "Lists managed cluster snapshots in the specified subscription and 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": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Managed Cluster Snapshots by Resource Group": {
+ "$ref": "./examples/ManagedClusterSnapshotsListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclustersnapshots/{resourceName}": {
+ "get": {
+ "tags": [
+ "ManagedClusterSnapshots"
+ ],
+ "operationId": "ManagedClusterSnapshots_Get",
+ "summary": "Gets a managed cluster snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster Snapshot": {
+ "$ref": "./examples/ManagedClusterSnapshotsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedClusterSnapshots"
+ ],
+ "operationId": "ManagedClusterSnapshots_CreateOrUpdate",
+ "summary": "Creates or updates a managed cluster snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshot"
+ },
+ "description": "The managed cluster snapshot to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing managed cluster snapshot was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshot"
+ }
+ },
+ "201": {
+ "description": "The new managed cluster snapshot was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/Update Managed Cluster Snapshot": {
+ "$ref": "./examples/ManagedClusterSnapshotsCreate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedClusterSnapshots"
+ ],
+ "operationId": "ManagedClusterSnapshots_UpdateTags",
+ "summary": "Updates tags on a managed cluster snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update managed cluster snapshot Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterSnapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Managed Cluster Snapshot Tags": {
+ "$ref": "./examples/ManagedClusterSnapshotsUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedClusterSnapshots"
+ ],
+ "operationId": "ManagedClusterSnapshots_Delete",
+ "summary": "Deletes a managed cluster snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Managed Cluster Snapshot": {
+ "$ref": "./examples/ManagedClusterSnapshotsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/trustedAccessRoles": {
+ "get": {
+ "tags": [
+ "TrustedAccess"
+ ],
+ "operationId": "TrustedAccessRoles_List",
+ "summary": "List supported trusted access roles.",
+ "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/LocationParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/TrustedAccessRoleListResult"
+ }
+ },
+ "default": {
+ "description": "Error details",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List trusted access roles": {
+ "$ref": "./examples/TrustedAccessRoles_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/trustedAccessRoleBindings": {
+ "get": {
+ "tags": [
+ "TrustedAccess"
+ ],
+ "operationId": "TrustedAccessRoleBindings_List",
+ "summary": "List trusted access role bindings.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/TrustedAccessRoleBindingListResult"
+ }
+ },
+ "default": {
+ "description": "Error details",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List trusted access role bindings": {
+ "$ref": "./examples/TrustedAccessRoleBindings_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/trustedAccessRoleBindings/{trustedAccessRoleBindingName}": {
+ "get": {
+ "tags": [
+ "TrustedAccess"
+ ],
+ "operationId": "TrustedAccessRoleBindings_Get",
+ "summary": "Get a trusted access role binding.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TrustedAccessRoleBindingNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/TrustedAccessRoleBinding"
+ }
+ },
+ "default": {
+ "description": "Error details",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a trusted access role binding": {
+ "$ref": "./examples/TrustedAccessRoleBindings_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "TrustedAccess"
+ ],
+ "operationId": "TrustedAccessRoleBindings_CreateOrUpdate",
+ "summary": "Create or update a trusted access role binding",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TrustedAccessRoleBindingNameParameter"
+ },
+ {
+ "name": "trustedAccessRoleBinding",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TrustedAccessRoleBinding"
+ },
+ "description": "A trusted access role binding"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing trusted access role binding was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/TrustedAccessRoleBinding"
+ }
+ },
+ "201": {
+ "description": "The new trusted access role binding was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/TrustedAccessRoleBinding"
+ }
+ },
+ "default": {
+ "description": "Error details",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update a trusted access role binding": {
+ "$ref": "./examples/TrustedAccessRoleBindings_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "TrustedAccess"
+ ],
+ "operationId": "TrustedAccessRoleBindings_Delete",
+ "summary": "Delete a trusted access role binding.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/TrustedAccessRoleBindingNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error details",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a trusted access role binding": {
+ "$ref": "./examples/TrustedAccessRoleBindings_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/meshRevisionProfiles": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListMeshRevisionProfiles",
+ "summary": "Lists mesh revision profiles for all meshes in the specified location.",
+ "description": "Contains extra metadata on each revision, including supported revisions, cluster compatibility and available upgrades",
+ "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/LocationParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MeshRevisionProfileList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List mesh revision profiles in a location": {
+ "$ref": "./examples/ManagedClustersList_MeshRevisionProfiles.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/meshRevisionProfiles/{mode}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetMeshRevisionProfile",
+ "summary": "Gets a mesh revision profile for a specified mesh in the specified location.",
+ "description": "Contains extra metadata on the revision, including supported revisions, cluster compatibility and available upgrades",
+ "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/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/MeshModeParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MeshRevisionProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a mesh revision profile for a mesh mode": {
+ "$ref": "./examples/ManagedClustersGet_MeshRevisionProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/meshUpgradeProfiles": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListMeshUpgradeProfiles",
+ "summary": "Lists available upgrades for all service meshes in a specific cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MeshUpgradeProfileList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Lists version compatibility and upgrade profile for all service meshes in a cluster": {
+ "$ref": "./examples/ManagedClustersList_MeshUpgradeProfiles.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/meshUpgradeProfiles/{mode}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetMeshUpgradeProfile",
+ "summary": "Gets available upgrades for a service mesh in a cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MeshModeParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MeshUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Gets version compatibility and upgrade profile for a service mesh in a cluster": {
+ "$ref": "./examples/ManagedClustersGet_MeshUpgradeProfile.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "OperationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/OperationValue"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of operations"
+ }
+ },
+ "description": "The List Operation response."
+ },
+ "OperationValue": {
+ "type": "object",
+ "properties": {
+ "origin": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The origin of the operation."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the operation."
+ },
+ "display": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/OperationValueDisplay",
+ "description": "Describes the properties of a Operation Value Display."
+ }
+ },
+ "description": "Describes the properties of a Operation value."
+ },
+ "OperationValueDisplay": {
+ "type": "object",
+ "properties": {
+ "operation": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the operation."
+ },
+ "resource": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the resource the operation applies to."
+ },
+ "description": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The description of the operation."
+ },
+ "provider": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The resource provider for the operation."
+ }
+ },
+ "description": "Describes the properties of a Operation Value Display."
+ },
+ "SubResource": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource ID."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ }
+ },
+ "description": "Reference to another subresource.",
+ "x-ms-azure-resource": true
+ },
+ "TagsObject": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags."
+ }
+ },
+ "description": "Tags object for patch operations."
+ },
+ "ContainerServiceOSDisk": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 2048,
+ "minimum": 0,
+ "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified."
+ },
+ "ManagedClusterServicePrincipalProfile": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "string",
+ "description": "The ID for the service principal."
+ },
+ "secret": {
+ "type": "string",
+ "description": "The secret password associated with the service principal in plain text."
+ }
+ },
+ "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.",
+ "required": [
+ "clientId"
+ ]
+ },
+ "ManagedClusterAgentPoolProfileProperties": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1."
+ },
+ "vmSize": {
+ "type": "string",
+ "title": "The size of the agent pool VMs.",
+ "description": "VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions"
+ },
+ "osDiskSizeGB": {
+ "$ref": "#/definitions/ContainerServiceOSDisk"
+ },
+ "osDiskType": {
+ "$ref": "#/definitions/OSDiskType"
+ },
+ "kubeletDiskType": {
+ "$ref": "#/definitions/KubeletDiskType"
+ },
+ "workloadRuntime": {
+ "$ref": "#/definitions/WorkloadRuntime"
+ },
+ "messageOfTheDay": {
+ "type": "string",
+ "title": "Message of the day for Linux nodes, base64-encoded.",
+ "description": "A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of the message of the day for Linux nodes. It must not be specified for Windows nodes. It must be a static string (i.e., will be printed raw and not be executed as a script)."
+ },
+ "vnetSubnetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/virtualNetworks/subnets"
+ }
+ ]
+ },
+ "title": "The ID of the subnet which agent pool nodes and optionally pods will join on startup.",
+ "description": "If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
+ },
+ "podSubnetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/virtualNetworks/subnets"
+ }
+ ]
+ },
+ "title": "The ID of the subnet which pods will join when launched.",
+ "description": "If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
+ },
+ "maxPods": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of pods that can run on a node."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "osSKU": {
+ "$ref": "#/definitions/OSSKU"
+ },
+ "maxCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of nodes for auto-scaling"
+ },
+ "minCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The minimum number of nodes for auto-scaling"
+ },
+ "enableAutoScaling": {
+ "type": "boolean",
+ "description": "Whether to enable auto-scaler"
+ },
+ "scaleDownMode": {
+ "$ref": "#/definitions/ScaleDownMode",
+ "title": "The scale down mode to use when scaling the Agent Pool.",
+ "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete."
+ },
+ "type": {
+ "$ref": "#/definitions/AgentPoolType"
+ },
+ "mode": {
+ "$ref": "#/definitions/AgentPoolMode"
+ },
+ "orchestratorVersion": {
+ "type": "string",
+ "title": "The version of Kubernetes specified by the user.",
+ "description": "Both patch version and are supported. When is specified, the latest supported patch version is chosen automatically. Updating the agent pool with the same once it has been created will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool)."
+ },
+ "currentOrchestratorVersion": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The version of Kubernetes running on the Agent Pool.",
+ "description": "If orchestratorVersion was a fully specified version , this field will be exactly equal to it. If orchestratorVersion was , this field will contain the full version being used."
+ },
+ "nodeImageVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of node image"
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "Settings for upgrading the agentpool"
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The current deployment or provisioning state."
+ },
+ "powerState": {
+ "title": "Whether the Agent Pool is running or stopped.",
+ "description": "When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded",
+ "$ref": "#/definitions/PowerState"
+ },
+ "availabilityZones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'."
+ },
+ "enableNodePublicIP": {
+ "type": "boolean",
+ "title": "Whether each node is allocated its own public IP.",
+ "description": "Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false."
+ },
+ "enableCustomCATrust": {
+ "type": "boolean",
+ "title": "Whether to enable Custom CA Trust feature.",
+ "description": "When set to true, AKS adds a label to the node indicating that the feature is enabled and deploys a daemonset along with host services to sync custom certificate authorities from user-provided list of base64 encoded certificates into node trust stores. Defaults to false."
+ },
+ "nodePublicIPPrefixID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/publicIPPrefixes"
+ }
+ ]
+ },
+ "title": "The public IP prefix ID which VM nodes should use IPs from.",
+ "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}"
+ },
+ "scaleSetPriority": {
+ "$ref": "#/definitions/ScaleSetPriority",
+ "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'."
+ },
+ "scaleSetEvictionPolicy": {
+ "$ref": "#/definitions/ScaleSetEvictionPolicy",
+ "title": "The Virtual Machine Scale Set eviction policy to use.",
+ "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'."
+ },
+ "spotMaxPrice": {
+ "$ref": "#/definitions/SpotMaxPrice",
+ "title": "The max price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.",
+ "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags to be persisted on the agent pool virtual machine scale set."
+ },
+ "nodeLabels": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The node labels to be persisted across all nodes in agent pool."
+ },
+ "nodeTaints": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule."
+ },
+ "proximityPlacementGroupID": {
+ "$ref": "#/definitions/ProximityPlacementGroupID",
+ "description": "The ID for Proximity Placement Group."
+ },
+ "kubeletConfig": {
+ "$ref": "#/definitions/KubeletConfig",
+ "description": "The Kubelet configuration on the agent pool nodes."
+ },
+ "linuxOSConfig": {
+ "$ref": "#/definitions/LinuxOSConfig",
+ "description": "The OS configuration of Linux agent nodes."
+ },
+ "enableEncryptionAtHost": {
+ "type": "boolean",
+ "title": "Whether to enable host based OS and data drive encryption.",
+ "description": "This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption"
+ },
+ "enableUltraSSD": {
+ "type": "boolean",
+ "description": "Whether to enable UltraSSD"
+ },
+ "enableFIPS": {
+ "type": "boolean",
+ "title": "Whether to use a FIPS-enabled OS.",
+ "description": "See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details."
+ },
+ "gpuInstanceProfile": {
+ "$ref": "#/definitions/GPUInstanceProfile",
+ "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU."
+ },
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot."
+ },
+ "capacityReservationGroupID": {
+ "$ref": "#/definitions/CapacityReservationGroupID",
+ "description": "AKS will associate the specified agent pool with the Capacity Reservation Group."
+ },
+ "hostGroupID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/hostGroups"
+ }
+ ]
+ },
+ "title": "The fully qualified resource ID of the Dedicated Host Group to provision virtual machines from, used only in creation scenario and not allowed to changed once set.",
+ "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts)."
+ },
+ "windowsProfile": {
+ "$ref": "#/definitions/AgentPoolWindowsProfile",
+ "description": "The Windows agent pool's specific profile."
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/AgentPoolNetworkProfile",
+ "description": "Network-related settings of an agent pool."
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/AgentPoolSecurityProfile",
+ "description": "The security settings of an agent pool."
+ }
+ },
+ "description": "Properties for the container service agent pool profile."
+ },
+ "AgentPoolNetworkProfile": {
+ "type": "object",
+ "properties": {
+ "nodePublicIPTags": {
+ "$ref": "#/definitions/NodePublicIPTags",
+ "description": "IPTags of instance-level public IPs."
+ },
+ "allowedHostPorts": {
+ "type": "array",
+ "description": "The port ranges that are allowed to access. The specified ranges are allowed to overlap.",
+ "items": {
+ "$ref": "#/definitions/PortRange"
+ },
+ "x-ms-identifiers": []
+ },
+ "applicationSecurityGroups": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/applicationSecurityGroups"
+ }
+ ]
+ }
+ },
+ "description": "The IDs of the application security groups which agent pool will associate when created."
+ }
+ },
+ "description": "Network settings of an agent pool."
+ },
+ "NodePublicIPTags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IPTag"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of tags associated with the node public IP address."
+ },
+ "IPTag": {
+ "type": "object",
+ "properties": {
+ "ipTagType": {
+ "type": "string",
+ "description": "The IP tag type. Example: RoutingPreference."
+ },
+ "tag": {
+ "type": "string",
+ "description": "The value of the IP tag associated with the public IP. Example: Internet."
+ }
+ },
+ "description": "Contains the IPTag associated with the object."
+ },
+ "PortRange": {
+ "type": "object",
+ "description": "The port range.",
+ "properties": {
+ "portStart": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 65535,
+ "description": "The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or equal to portEnd."
+ },
+ "portEnd": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 65535,
+ "description": "The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or equal to portStart."
+ },
+ "protocol": {
+ "type": "string",
+ "description": "The network protocol of the port.",
+ "enum": [
+ "TCP",
+ "UDP"
+ ],
+ "x-ms-enum": {
+ "name": "Protocol",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "TCP",
+ "description": "TCP protocol."
+ },
+ {
+ "value": "UDP",
+ "description": "UDP protocol."
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ManagedClusterAgentPoolProfile": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties"
+ }
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Unique name of the agent pool profile in the context of the subscription and resource group.",
+ "description": "Windows agent pool names must be 6 characters or less.",
+ "pattern": "^[a-z][a-z0-9]{0,11}$"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Profile for the container service agent pool."
+ },
+ "AgentPoolType": {
+ "type": "string",
+ "enum": [
+ "VirtualMachineScaleSets",
+ "AvailabilitySet"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "VirtualMachineScaleSets",
+ "description": "Create an Agent Pool backed by a Virtual Machine Scale Set."
+ },
+ {
+ "value": "AvailabilitySet",
+ "description": "Use of this is strongly discouraged."
+ }
+ ]
+ },
+ "description": "The type of Agent Pool."
+ },
+ "AgentPoolMode": {
+ "type": "string",
+ "enum": [
+ "System",
+ "User"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "System",
+ "description": "System agent pools are primarily for hosting critical system pods such as CoreDNS and metrics-server. System agent pools osType must be Linux. System agent pools VM SKU must have at least 2vCPUs and 4GB of memory."
+ },
+ {
+ "value": "User",
+ "description": "User agent pools are primarily for hosting your application pods."
+ }
+ ]
+ },
+ "title": "The mode of an agent pool.",
+ "description": "A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools"
+ },
+ "AgentPoolListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "description": "The list of agent pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of agent pool results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Agent Pools operation."
+ },
+ "AgentPoolUpgradeSettings": {
+ "type": "object",
+ "properties": {
+ "maxSurge": {
+ "type": "string",
+ "title": "The maximum number or percentage of nodes that are surged during upgrade.",
+ "description": "This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade"
+ },
+ "drainTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 1440,
+ "minimum": 1,
+ "title": "The drain timeout for a node",
+ "description": "The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes."
+ }
+ },
+ "description": "Settings for upgrading an agentpool"
+ },
+ "AgentPool": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Properties of an agent pool.",
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "Agent Pool."
+ },
+ "ManagedClusterWindowsProfile": {
+ "type": "object",
+ "properties": {
+ "adminUsername": {
+ "type": "string",
+ "description": "Specifies the name of the administrator account.
**Restriction:** Cannot end in \".\"
**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".
**Minimum-length:** 1 character
**Max-length:** 20 characters"
+ },
+ "adminPassword": {
+ "type": "string",
+ "description": "Specifies the password of the administrator account.
**Minimum-length:** 8 characters
**Max-length:** 123 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\""
+ },
+ "licenseType": {
+ "type": "string",
+ "enum": [
+ "None",
+ "Windows_Server"
+ ],
+ "x-ms-enum": {
+ "name": "licenseType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "None",
+ "description": "No additional licensing is applied."
+ },
+ {
+ "value": "Windows_Server",
+ "description": "Enables Azure Hybrid User Benefits for Windows VMs."
+ }
+ ]
+ },
+ "description": "The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details."
+ },
+ "enableCSIProxy": {
+ "type": "boolean",
+ "title": "Whether to enable CSI proxy.",
+ "description": "For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy)."
+ },
+ "gmsaProfile": {
+ "$ref": "#/definitions/WindowsGmsaProfile",
+ "description": "The Windows gMSA Profile in the Managed Cluster."
+ }
+ },
+ "required": [
+ "adminUsername"
+ ],
+ "description": "Profile for Windows VMs in the managed cluster."
+ },
+ "WindowsGmsaProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Whether to enable Windows gMSA.",
+ "description": "Specifies whether to enable Windows gMSA in the managed cluster."
+ },
+ "dnsServer": {
+ "type": "string",
+ "description": "Specifies the DNS server for Windows gMSA.
Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster."
+ },
+ "rootDomainName": {
+ "type": "string",
+ "description": "Specifies the root domain name for Windows gMSA.
Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster."
+ }
+ },
+ "description": "Windows gMSA Profile in the managed cluster."
+ },
+ "ContainerServiceLinuxProfile": {
+ "type": "object",
+ "properties": {
+ "adminUsername": {
+ "type": "string",
+ "description": "The administrator username to use for Linux VMs.",
+ "pattern": "^[A-Za-z][-A-Za-z0-9_]*$"
+ },
+ "ssh": {
+ "$ref": "#/definitions/ContainerServiceSshConfiguration",
+ "description": "The SSH configuration for Linux-based VMs running on Azure."
+ }
+ },
+ "required": [
+ "adminUsername",
+ "ssh"
+ ],
+ "description": "Profile for Linux VMs in the container service cluster."
+ },
+ "ManagedClusterNodeResourceGroupProfile": {
+ "type": "object",
+ "properties": {
+ "restrictionLevel": {
+ "type": "string",
+ "enum": [
+ "Unrestricted",
+ "ReadOnly"
+ ],
+ "x-ms-enum": {
+ "name": "RestrictionLevel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Unrestricted",
+ "description": "All RBAC permissions are allowed on the managed node resource group"
+ },
+ {
+ "value": "ReadOnly",
+ "description": "Only */read RBAC permissions allowed on the managed node resource group"
+ }
+ ]
+ },
+ "description": "The restriction level applied to the cluster's node resource group"
+ }
+ },
+ "description": "Node resource group lockdown profile for a managed cluster."
+ },
+ "ContainerServiceNetworkProfile": {
+ "type": "object",
+ "properties": {
+ "networkPlugin": {
+ "$ref": "#/definitions/NetworkPlugin",
+ "description": "Network plugin used for building the Kubernetes network."
+ },
+ "networkPluginMode": {
+ "$ref": "#/definitions/NetworkPluginMode",
+ "description": "Network plugin mode used for building the Kubernetes network."
+ },
+ "networkPolicy": {
+ "$ref": "#/definitions/NetworkPolicy",
+ "description": "Network policy used for building the Kubernetes network."
+ },
+ "networkMode": {
+ "$ref": "#/definitions/NetworkMode",
+ "title": "The network mode Azure CNI is configured with.",
+ "description": "This cannot be specified if networkPlugin is anything other than 'azure'."
+ },
+ "networkDataplane": {
+ "$ref": "#/definitions/NetworkDataplane",
+ "description": "Network dataplane used in the Kubernetes cluster."
+ },
+ "podCidr": {
+ "type": "string",
+ "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
+ "default": "10.244.0.0/16",
+ "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used."
+ },
+ "serviceCidr": {
+ "type": "string",
+ "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
+ "default": "10.0.0.0/16",
+ "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges."
+ },
+ "dnsServiceIP": {
+ "type": "string",
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$",
+ "default": "10.0.0.10",
+ "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr."
+ },
+ "outboundType": {
+ "type": "string",
+ "enum": [
+ "loadBalancer",
+ "userDefinedRouting",
+ "managedNATGateway",
+ "userAssignedNATGateway"
+ ],
+ "x-ms-enum": {
+ "name": "outboundType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "loadBalancer",
+ "description": "The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type 'loadBalancer'. For more information see [outbound type loadbalancer](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-loadbalancer)."
+ },
+ {
+ "value": "userDefinedRouting",
+ "description": "Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see [outbound type userDefinedRouting](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-userdefinedrouting)."
+ },
+ {
+ "value": "managedNATGateway",
+ "description": "The AKS-managed NAT gateway is used for egress."
+ },
+ {
+ "value": "userAssignedNATGateway",
+ "description": "The user-assigned NAT gateway associated to the cluster subnet is used for egress. This is an advanced scenario and requires proper network configuration."
+ }
+ ]
+ },
+ "default": "loadBalancer",
+ "title": "The outbound (egress) routing method.",
+ "description": "This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype)."
+ },
+ "loadBalancerSku": {
+ "$ref": "#/definitions/LoadBalancerSku",
+ "title": "The load balancer sku for the managed cluster.",
+ "description": "The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs."
+ },
+ "loadBalancerProfile": {
+ "$ref": "#/definitions/ManagedClusterLoadBalancerProfile",
+ "description": "Profile of the cluster load balancer."
+ },
+ "natGatewayProfile": {
+ "$ref": "#/definitions/ManagedClusterNATGatewayProfile",
+ "description": "Profile of the cluster NAT gateway."
+ },
+ "podCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The CIDR notation IP ranges from which to assign pod IPs.",
+ "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking."
+ },
+ "serviceCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The CIDR notation IP ranges from which to assign service cluster IPs.",
+ "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges."
+ },
+ "ipFamilies": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The IP version to use for cluster networking and IP assignment.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "ipFamily",
+ "modelAsString": true
+ }
+ },
+ "title": "The IP families used to specify IP versions available to the cluster.",
+ "description": "IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6."
+ },
+ "kubeProxyConfig": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable on kube-proxy on the cluster (if no 'kubeProxyConfig' exists, kube-proxy is enabled in AKS by default without these customizations)."
+ },
+ "mode": {
+ "type": "string",
+ "enum": [
+ "IPTABLES",
+ "IPVS"
+ ],
+ "x-ms-enum": {
+ "name": "mode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "IPTABLES",
+ "description": "IPTables proxy mode"
+ },
+ {
+ "value": "IPVS",
+ "description": "IPVS proxy mode. Must be using Kubernetes version >= 1.22."
+ }
+ ]
+ },
+ "description": "Specify which proxy mode to use ('IPTABLES' or 'IPVS')"
+ },
+ "ipvsConfig": {
+ "type": "object",
+ "properties": {
+ "scheduler": {
+ "type": "string",
+ "enum": [
+ "RoundRobin",
+ "LeastConnection"
+ ],
+ "x-ms-enum": {
+ "name": "ipvsScheduler",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "RoundRobin",
+ "description": "Round Robin"
+ },
+ {
+ "value": "LeastConnection",
+ "description": "Least Connection"
+ }
+ ]
+ },
+ "description": "IPVS scheduler, for more information please see http://www.linuxvirtualserver.org/docs/scheduling.html."
+ },
+ "tcpTimeoutSeconds": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The timeout value used for idle IPVS TCP sessions in seconds. Must be a positive integer value."
+ },
+ "tcpFinTimeoutSeconds": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The timeout value used for IPVS TCP sessions after receiving a FIN in seconds. Must be a positive integer value."
+ },
+ "udpTimeoutSeconds": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The timeout value used for IPVS UDP packets in seconds. Must be a positive integer value."
+ }
+ },
+ "description": "Holds configuration customizations for IPVS. May only be specified if 'mode' is set to 'IPVS'."
+ }
+ },
+ "description": "Holds configuration customizations for kube-proxy. Any values not defined will use the kube-proxy defaulting behavior. See https://v.docs.kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/ where is represented by a - string. Kubernetes version 1.23 would be '1-23'."
+ },
+ "monitoring": {
+ "$ref": "#/definitions/NetworkMonitoring"
+ }
+ },
+ "description": "Profile of network configuration."
+ },
+ "MaintenanceConfigurationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ },
+ "description": "The list of maintenance configurations."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of maintenance configuration results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List maintenance configurations operation."
+ },
+ "MaintenanceConfiguration": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "systemData": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/systemData",
+ "readOnly": true,
+ "description": "The system metadata relating to this resource."
+ },
+ "properties": {
+ "description": "Properties of a default maintenance configuration.",
+ "$ref": "#/definitions/MaintenanceConfigurationProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "title": "Planned maintenance configuration, used to configure when updates can be deployed to a Managed Cluster.",
+ "description": "See [planned maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for more information about planned maintenance."
+ },
+ "MaintenanceConfigurationProperties": {
+ "type": "object",
+ "properties": {
+ "timeInWeek": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TimeInWeek"
+ },
+ "title": "Time slots during the week when planned maintenance is allowed to proceed.",
+ "x-ms-identifiers": [],
+ "description": "If two array entries specify the same day of the week, the applied configuration is the union of times in both entries."
+ },
+ "notAllowedTime": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TimeSpan"
+ },
+ "x-ms-identifiers": [],
+ "description": "Time slots on which upgrade is not allowed."
+ },
+ "maintenanceWindow": {
+ "type": "object",
+ "$ref": "#/definitions/MaintenanceWindow",
+ "description": "Maintenance window for the maintenance configuration."
+ }
+ },
+ "description": "Properties used to configure planned maintenance for a Managed Cluster."
+ },
+ "MaintenanceWindow": {
+ "type": "object",
+ "properties": {
+ "schedule": {
+ "$ref": "#/definitions/Schedule",
+ "description": "Recurrence schedule for the maintenance window."
+ },
+ "durationHours": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 4,
+ "maximum": 24,
+ "default": 24,
+ "description": "Length of maintenance window range from 4 to 24 hours."
+ },
+ "utcOffset": {
+ "type": "string",
+ "pattern": "^(-|\\+)[0-9]{2}:[0-9]{2}$",
+ "description": "The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'."
+ },
+ "startDate": {
+ "type": "string",
+ "format": "date",
+ "description": "The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away."
+ },
+ "startTime": {
+ "type": "string",
+ "pattern": "^\\d{2}:\\d{2}$",
+ "description": "The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'."
+ },
+ "notAllowedDates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DateSpan"
+ },
+ "x-ms-identifiers": [],
+ "description": "Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time."
+ }
+ },
+ "description": "Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster.",
+ "required": [
+ "schedule",
+ "durationHours",
+ "startTime"
+ ]
+ },
+ "Schedule": {
+ "type": "object",
+ "properties": {
+ "daily": {
+ "$ref": "#/definitions/DailySchedule"
+ },
+ "weekly": {
+ "$ref": "#/definitions/WeeklySchedule"
+ },
+ "absoluteMonthly": {
+ "$ref": "#/definitions/AbsoluteMonthlySchedule"
+ },
+ "relativeMonthly": {
+ "$ref": "#/definitions/RelativeMonthlySchedule"
+ }
+ },
+ "description": "One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule."
+ },
+ "DailySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalDays": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 7,
+ "description": "Specifies the number of days between each set of occurrences."
+ }
+ },
+ "description": "For schedules like: 'recur every day' or 'recur every 3 days'.",
+ "required": [
+ "intervalDays"
+ ]
+ },
+ "WeeklySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalWeeks": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 4,
+ "description": "Specifies the number of weeks between each set of occurrences."
+ },
+ "dayOfWeek": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "Specifies on which day of the week the maintenance occurs."
+ }
+ },
+ "description": "For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'.",
+ "required": [
+ "intervalWeeks",
+ "dayOfWeek"
+ ]
+ },
+ "AbsoluteMonthlySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalMonths": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 6,
+ "description": "Specifies the number of months between each set of occurrences."
+ },
+ "dayOfMonth": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 31,
+ "description": "The date of the month."
+ }
+ },
+ "description": "For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'.",
+ "required": [
+ "intervalMonths",
+ "dayOfMonth"
+ ]
+ },
+ "RelativeMonthlySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalMonths": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 6,
+ "description": "Specifies the number of months between each set of occurrences."
+ },
+ "weekIndex": {
+ "type": "string",
+ "enum": [
+ "First",
+ "Second",
+ "Third",
+ "Fourth",
+ "Last"
+ ],
+ "x-ms-enum": {
+ "name": "type",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "First",
+ "description": "First."
+ },
+ {
+ "value": "Second",
+ "description": "Second."
+ },
+ {
+ "value": "Third",
+ "description": "Third."
+ },
+ {
+ "value": "Fourth",
+ "description": "Fourth."
+ },
+ {
+ "value": "Last",
+ "description": "Last."
+ }
+ ]
+ },
+ "title": "The week index.",
+ "description": "Specifies on which instance of the allowed days specified in daysOfWeek the maintenance occurs."
+ },
+ "dayOfWeek": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "Specifies on which day of the week the maintenance occurs."
+ }
+ },
+ "description": "For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'.",
+ "required": [
+ "intervalMonths",
+ "weekIndex",
+ "dayOfWeek"
+ ]
+ },
+ "DateSpan": {
+ "type": "object",
+ "properties": {
+ "start": {
+ "type": "string",
+ "format": "date",
+ "description": "The start date of the date span."
+ },
+ "end": {
+ "type": "string",
+ "format": "date",
+ "description": "The end date of the date span."
+ }
+ },
+ "title": "A date range.",
+ "description": "For example, between '2022-12-23' and '2023-01-05'.",
+ "required": [
+ "start",
+ "end"
+ ]
+ },
+ "TimeInWeek": {
+ "type": "object",
+ "properties": {
+ "day": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "The day of the week."
+ },
+ "hourSlots": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HourInDay"
+ },
+ "title": "A list of hours in the day used to identify a time range.",
+ "description": "Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range."
+ }
+ },
+ "description": "Time in a week."
+ },
+ "WeekDay": {
+ "type": "string",
+ "enum": [
+ "Sunday",
+ "Monday",
+ "Tuesday",
+ "Wednesday",
+ "Thursday",
+ "Friday",
+ "Saturday"
+ ],
+ "x-ms-enum": {
+ "name": "WeekDay",
+ "modelAsString": true
+ },
+ "description": "The weekday enum."
+ },
+ "HourInDay": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 23,
+ "minimum": 0,
+ "description": "Hour in a day."
+ },
+ "TimeSpan": {
+ "type": "object",
+ "properties": {
+ "start": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The start of a time span"
+ },
+ "end": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The end of a time span"
+ }
+ },
+ "title": "A time range.",
+ "description": "For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z."
+ },
+ "RunCommandRequest": {
+ "type": "object",
+ "properties": {
+ "command": {
+ "type": "string",
+ "description": "The command to run."
+ },
+ "context": {
+ "type": "string",
+ "description": "A base64 encoded zip file containing the files required by the command."
+ },
+ "clusterToken": {
+ "type": "string",
+ "description": "AuthToken issued for AKS AAD Server App."
+ }
+ },
+ "description": "A run command request",
+ "required": [
+ "command"
+ ]
+ },
+ "RunCommandResult": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The command id.",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "Properties of command result.",
+ "$ref": "#/definitions/CommandResultProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "run command result."
+ },
+ "CommandResultProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "provisioning State"
+ },
+ "exitCode": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true,
+ "description": "The exit code of the command"
+ },
+ "startedAt": {
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true,
+ "description": "The time when the command started."
+ },
+ "finishedAt": {
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true,
+ "description": "The time when the command finished."
+ },
+ "logs": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The command output."
+ },
+ "reason": {
+ "type": "string",
+ "readOnly": true,
+ "description": "An explanation of why provisioningState is set to failed (if so)."
+ }
+ },
+ "description": "The results of a run command"
+ },
+ "ManagedClusterNATGatewayProfile": {
+ "type": "object",
+ "properties": {
+ "managedOutboundIPProfile": {
+ "$ref": "#/definitions/ManagedClusterManagedOutboundIPProfile",
+ "description": "Profile of the managed outbound IP resources of the cluster NAT gateway."
+ },
+ "effectiveOutboundIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "The effective outbound IP resources of the cluster NAT gateway."
+ },
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 120,
+ "minimum": 4,
+ "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes.",
+ "default": 4
+ }
+ },
+ "description": "Profile of the managed cluster NAT gateway."
+ },
+ "ManagedClusterManagedOutboundIPProfile": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 16,
+ "minimum": 1,
+ "description": "The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. ",
+ "default": 1
+ }
+ },
+ "description": "Profile of the managed outbound IP resources of the managed cluster."
+ },
+ "ManagedClusterLoadBalancerProfile": {
+ "type": "object",
+ "properties": {
+ "managedOutboundIPs": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 100,
+ "minimum": 1,
+ "description": "The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ",
+ "default": 1
+ },
+ "countIPv6": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 100,
+ "minimum": 0,
+ "description": "The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. ",
+ "default": 0
+ }
+ },
+ "description": "Desired managed outbound IPs for the cluster load balancer."
+ },
+ "outboundIPPrefixes": {
+ "type": "object",
+ "properties": {
+ "publicIPPrefixes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "A list of public IP prefix resources."
+ }
+ },
+ "description": "Desired outbound IP Prefix resources for the cluster load balancer."
+ },
+ "outboundIPs": {
+ "type": "object",
+ "properties": {
+ "publicIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "A list of public IP resources."
+ }
+ },
+ "description": "Desired outbound IP resources for the cluster load balancer."
+ },
+ "effectiveOutboundIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "The effective outbound IP resources of the cluster load balancer."
+ },
+ "allocatedOutboundPorts": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 64000,
+ "minimum": 0,
+ "description": "The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports.",
+ "default": 0
+ },
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 120,
+ "minimum": 4,
+ "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes.",
+ "default": 30
+ },
+ "enableMultipleStandardLoadBalancers": {
+ "type": "boolean",
+ "description": "Enable multiple standard load balancers per AKS cluster or not."
+ },
+ "backendPoolType": {
+ "type": "string",
+ "x-ms-enum": {
+ "name": "BackendPoolType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "NodeIPConfiguration",
+ "description": "The type of the managed inbound Load Balancer BackendPool. https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#configure-load-balancer-backend."
+ },
+ {
+ "value": "NodeIP",
+ "description": "The type of the managed inbound Load Balancer BackendPool. https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#configure-load-balancer-backend."
+ }
+ ]
+ },
+ "enum": [
+ "NodeIPConfiguration",
+ "NodeIP"
+ ],
+ "description": "The type of the managed inbound Load Balancer BackendPool.",
+ "default": "NodeIPConfiguration"
+ }
+ },
+ "description": "Profile of the managed cluster load balancer."
+ },
+ "ResourceReference": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The fully qualified Azure resource id."
+ }
+ },
+ "description": "A reference to an Azure resource."
+ },
+ "ContainerServiceSshConfiguration": {
+ "type": "object",
+ "properties": {
+ "publicKeys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerServiceSshPublicKey"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified."
+ }
+ },
+ "description": "SSH configuration for Linux-based VMs running on Azure.",
+ "required": [
+ "publicKeys"
+ ]
+ },
+ "ContainerServiceSshPublicKey": {
+ "type": "object",
+ "properties": {
+ "keyData": {
+ "type": "string",
+ "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers."
+ }
+ },
+ "required": [
+ "keyData"
+ ],
+ "description": "Contains information about SSH certificate public key data."
+ },
+ "ManagedClusterListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedCluster"
+ },
+ "description": "The list of managed clusters."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed cluster results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Managed Clusters operation."
+ },
+ "ManagedCluster": {
+ "type": "object",
+ "properties": {
+ "sku": {
+ "$ref": "#/definitions/ManagedClusterSKU",
+ "description": "The managed cluster SKU."
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the Virtual Machine."
+ },
+ "identity": {
+ "$ref": "#/definitions/ManagedClusterIdentity",
+ "description": "The identity of the managed cluster, if configured."
+ },
+ "properties": {
+ "description": "Properties of a managed cluster.",
+ "$ref": "#/definitions/ManagedClusterProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "Managed cluster."
+ },
+ "ManagedClusterProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The current provisioning state."
+ },
+ "powerState": {
+ "$ref": "#/definitions/PowerState",
+ "description": "The Power State of the cluster.",
+ "readOnly": true
+ },
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source Snapshot ID if the cluster will be created/upgraded using a snapshot."
+ },
+ "maxAgentPools": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The max number of agent pools for the managed cluster."
+ },
+ "kubernetesVersion": {
+ "type": "string",
+ "title": "The version of Kubernetes the Managed Cluster is requested to run.",
+ "description": "When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details."
+ },
+ "currentKubernetesVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of Kubernetes the Managed Cluster is running."
+ },
+ "dnsPrefix": {
+ "type": "string",
+ "title": "The DNS prefix of the Managed Cluster.",
+ "description": "This cannot be updated once the Managed Cluster has been created."
+ },
+ "fqdnSubdomain": {
+ "type": "string",
+ "title": "The FQDN subdomain of the private cluster with custom private dns zone.",
+ "description": "This cannot be updated once the Managed Cluster has been created."
+ },
+ "fqdn": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The FQDN of the master pool."
+ },
+ "privateFQDN": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The FQDN of private cluster."
+ },
+ "azurePortalFQDN": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The special FQDN used by the Azure Portal to access the Managed Cluster. This FQDN is for use only by the Azure Portal and should not be used by other clients.",
+ "description": "The Azure Portal requires certain Cross-Origin Resource Sharing (CORS) headers to be sent in some responses, which Kubernetes APIServer doesn't handle by default. This special FQDN supports CORS, allowing the Azure Portal to function properly."
+ },
+ "agentPoolProfiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfile"
+ },
+ "x-ms-identifiers": [],
+ "description": "The agent pool properties."
+ },
+ "linuxProfile": {
+ "$ref": "#/definitions/ContainerServiceLinuxProfile",
+ "description": "The profile for Linux VMs in the Managed Cluster."
+ },
+ "windowsProfile": {
+ "$ref": "#/definitions/ManagedClusterWindowsProfile",
+ "description": "The profile for Windows VMs in the Managed Cluster."
+ },
+ "servicePrincipalProfile": {
+ "$ref": "#/definitions/ManagedClusterServicePrincipalProfile",
+ "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs."
+ },
+ "addonProfiles": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/ManagedClusterAddonProfile"
+ },
+ "description": "The profile of managed cluster add-on."
+ },
+ "podIdentityProfile": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProfile",
+ "title": "The pod identity profile of the Managed Cluster.",
+ "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on AAD pod identity integration."
+ },
+ "oidcIssuerProfile": {
+ "$ref": "#/definitions/ManagedClusterOIDCIssuerProfile",
+ "description": "The OIDC issuer profile of the Managed Cluster."
+ },
+ "nodeResourceGroup": {
+ "type": "string",
+ "description": "The name of the resource group containing agent pool nodes."
+ },
+ "nodeResourceGroupProfile": {
+ "$ref": "#/definitions/ManagedClusterNodeResourceGroupProfile",
+ "description": "The node resource group configuration profile."
+ },
+ "enableRBAC": {
+ "type": "boolean",
+ "description": "Whether to enable Kubernetes Role-Based Access Control."
+ },
+ "supportPlan": {
+ "$ref": "#/definitions/KubernetesSupportPlan",
+ "description": "The support plan for the Managed Cluster. If unspecified, the default is 'KubernetesOfficial'."
+ },
+ "enablePodSecurityPolicy": {
+ "type": "boolean",
+ "description": "(DEPRECATED) Whether to enable Kubernetes pod security policy (preview). PodSecurityPolicy was deprecated in Kubernetes v1.21, and removed from Kubernetes in v1.25. Learn more at https://aka.ms/k8s/psp and https://aka.ms/aks/psp."
+ },
+ "enableNamespaceResources": {
+ "type": "boolean",
+ "title": "Enable namespace as Azure resource.",
+ "description": "The default value is false. It can be enabled/disabled on creation and updating of the managed cluster. See [https://aka.ms/NamespaceARMResource](https://aka.ms/NamespaceARMResource) for more details on Namespace as a ARM Resource."
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/ContainerServiceNetworkProfile",
+ "description": "The network configuration profile."
+ },
+ "aadProfile": {
+ "$ref": "#/definitions/ManagedClusterAADProfile",
+ "description": "The Azure Active Directory configuration."
+ },
+ "autoUpgradeProfile": {
+ "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile",
+ "description": "The auto upgrade configuration."
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/ClusterUpgradeSettings",
+ "description": "Settings for upgrading a cluster."
+ },
+ "autoScalerProfile": {
+ "type": "object",
+ "properties": {
+ "balance-similar-node-groups": {
+ "type": "string",
+ "title": "Detects similar node pools and balances the number of nodes between them.",
+ "description": "Valid values are 'true' and 'false'"
+ },
+ "expander": {
+ "type": "string",
+ "enum": [
+ "least-waste",
+ "most-pods",
+ "priority",
+ "random"
+ ],
+ "x-ms-enum": {
+ "name": "expander",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "least-waste",
+ "description": "Selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up. This is useful when you have different classes of nodes, for example, high CPU or high memory nodes, and only want to expand those when there are pending pods that need a lot of those resources."
+ },
+ {
+ "value": "most-pods",
+ "description": "Selects the node group that would be able to schedule the most pods when scaling up. This is useful when you are using nodeSelector to make sure certain pods land on certain nodes. Note that this won't cause the autoscaler to select bigger nodes vs. smaller, as it can add multiple smaller nodes at once."
+ },
+ {
+ "value": "priority",
+ "description": "Selects the node group that has the highest priority assigned by the user. It's configuration is described in more details [here](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/expander/priority/readme.md)."
+ },
+ {
+ "value": "random",
+ "description": "Used when you don't have a particular need for the node groups to scale differently."
+ }
+ ]
+ },
+ "title": "The expander to use when scaling up",
+ "description": "If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information."
+ },
+ "max-empty-bulk-delete": {
+ "type": "string",
+ "title": "The maximum number of empty nodes that can be deleted at the same time. This must be a positive integer.",
+ "description": "The default is 10."
+ },
+ "max-graceful-termination-sec": {
+ "type": "string",
+ "title": "The maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node.",
+ "description": "The default is 600."
+ },
+ "max-node-provision-time": {
+ "type": "string",
+ "title": "The maximum time the autoscaler waits for a node to be provisioned.",
+ "description": "The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "max-total-unready-percentage": {
+ "type": "string",
+ "title": "The maximum percentage of unready nodes in the cluster. After this percentage is exceeded, cluster autoscaler halts operations.",
+ "description": "The default is 45. The maximum is 100 and the minimum is 0."
+ },
+ "new-pod-scale-up-delay": {
+ "type": "string",
+ "title": "Ignore unscheduled pods before they're a certain age.",
+ "description": "For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc)."
+ },
+ "ok-total-unready-count": {
+ "type": "string",
+ "title": "The number of allowed unready nodes, irrespective of max-total-unready-percentage.",
+ "description": "This must be an integer. The default is 3."
+ },
+ "scan-interval": {
+ "type": "string",
+ "title": "How often cluster is reevaluated for scale up or down.",
+ "description": "The default is '10'. Values must be an integer number of seconds."
+ },
+ "scale-down-delay-after-add": {
+ "type": "string",
+ "title": "How long after scale up that scale down evaluation resumes",
+ "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-delay-after-delete": {
+ "type": "string",
+ "title": "How long after node deletion that scale down evaluation resumes.",
+ "description": "The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-delay-after-failure": {
+ "type": "string",
+ "title": "How long after scale down failure that scale down evaluation resumes.",
+ "description": "The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-unneeded-time": {
+ "type": "string",
+ "title": "How long a node should be unneeded before it is eligible for scale down.",
+ "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-unready-time": {
+ "type": "string",
+ "title": "How long an unready node should be unneeded before it is eligible for scale down",
+ "description": "The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-utilization-threshold": {
+ "type": "string",
+ "title": "Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down.",
+ "description": "The default is '0.5'."
+ },
+ "skip-nodes-with-local-storage": {
+ "type": "string",
+ "title": "If cluster autoscaler will skip deleting nodes with pods with local storage, for example, EmptyDir or HostPath.",
+ "description": "The default is true."
+ },
+ "skip-nodes-with-system-pods": {
+ "type": "string",
+ "title": "If cluster autoscaler will skip deleting nodes with pods from kube-system (except for DaemonSet or mirror pods)",
+ "description": "The default is true."
+ }
+ },
+ "description": "Parameters to be applied to the cluster-autoscaler when enabled"
+ },
+ "apiServerAccessProfile": {
+ "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile",
+ "description": "The access profile for managed cluster API server."
+ },
+ "diskEncryptionSetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/diskEncryptionSets"
+ }
+ ]
+ },
+ "title": "The Resource ID of the disk encryption set to use for enabling encryption at rest.",
+ "description": "This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'"
+ },
+ "identityProfile": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/UserAssignedIdentity"
+ },
+ "description": "Identities associated with the cluster."
+ },
+ "privateLinkResources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ },
+ "description": "Private link resources associated with the cluster."
+ },
+ "disableLocalAccounts": {
+ "type": "boolean",
+ "title": "If local accounts should be disabled on the Managed Cluster.",
+ "description": "If set to true, getting static credentials will be disabled for this cluster. This must only be used on Managed Clusters that are AAD enabled. For more details see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview)."
+ },
+ "httpProxyConfig": {
+ "$ref": "#/definitions/ManagedClusterHTTPProxyConfig",
+ "description": "Configurations for provisioning the cluster with HTTP proxy servers."
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfile",
+ "description": "Security profile for the managed cluster."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/ManagedClusterStorageProfile",
+ "description": "Storage profile for the managed cluster."
+ },
+ "ingressProfile": {
+ "$ref": "#/definitions/ManagedClusterIngressProfile",
+ "description": "Ingress profile for the managed cluster."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled",
+ "SecuredByPerimeter"
+ ],
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Enabled",
+ "description": "Inbound/Outbound to the managedCluster is allowed."
+ },
+ {
+ "value": "Disabled",
+ "description": "Inbound traffic to managedCluster is disabled, traffic from managedCluster is allowed."
+ },
+ {
+ "value": "SecuredByPerimeter",
+ "description": "Inbound/Outbound traffic is managed by Microsoft.Network/NetworkSecurityPerimeters."
+ }
+ ]
+ },
+ "title": "PublicNetworkAccess of the managedCluster",
+ "description": "Allow or deny public network access for AKS"
+ },
+ "workloadAutoScalerProfile": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfile"
+ },
+ "azureMonitorProfile": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfile"
+ },
+ "guardrailsProfile": {
+ "$ref": "#/definitions/GuardrailsProfile",
+ "description": "The guardrails profile holds all the guardrails information for a given cluster"
+ },
+ "serviceMeshProfile": {
+ "$ref": "#/definitions/ServiceMeshProfile"
+ }
+ },
+ "description": "Properties of the managed cluster."
+ },
+ "PowerState": {
+ "type": "object",
+ "description": "Describes the Power State of the cluster",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "Tells whether the cluster is Running or Stopped",
+ "enum": [
+ "Running",
+ "Stopped"
+ ],
+ "x-ms-enum": {
+ "name": "code",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Running",
+ "description": "The cluster is running."
+ },
+ {
+ "value": "Stopped",
+ "description": "The cluster is stopped."
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ManagedClusterAPIServerAccessProfile": {
+ "type": "object",
+ "properties": {
+ "authorizedIPRanges": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The IP ranges authorized to access the Kubernetes API server.",
+ "description": "IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges)."
+ },
+ "enablePrivateCluster": {
+ "type": "boolean",
+ "title": "Whether to create the cluster as a private cluster or not.",
+ "description": "For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters)."
+ },
+ "privateDNSZone": {
+ "type": "string",
+ "title": "The private DNS zone mode for the cluster.",
+ "description": "The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'."
+ },
+ "enablePrivateClusterPublicFQDN": {
+ "type": "boolean",
+ "description": "Whether to create additional public FQDN for private cluster or not."
+ },
+ "disableRunCommand": {
+ "type": "boolean",
+ "description": "Whether to disable run command for the cluster or not."
+ },
+ "enableVnetIntegration": {
+ "type": "boolean",
+ "description": "Whether to enable apiserver vnet integration for the cluster or not."
+ },
+ "subnetId": {
+ "type": "string",
+ "title": "The subnet to be used when apiserver vnet integration is enabled.",
+ "description": "It is required when: 1. creating a new cluster with BYO Vnet; 2. updating an existing cluster to enable apiserver vnet integration."
+ }
+ },
+ "description": "Access profile for managed cluster API server."
+ },
+ "ManagedClusterIdentity": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal id of the system assigned identity which is used by master components."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant id of the system assigned identity which is used by master components."
+ },
+ "type": {
+ "type": "string",
+ "title": "The type of identity used for the managed cluster.",
+ "description": "For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "SystemAssigned",
+ "description": "Use an implicitly created system assigned managed identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the system assigned managed identity to manipulate Azure resources."
+ },
+ {
+ "value": "UserAssigned",
+ "description": "Use a user-specified identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the specified user assigned managed identity to manipulate Azure resources."
+ },
+ {
+ "value": "None",
+ "description": "Do not use a managed identity for the Managed Cluster, service principal will be used instead."
+ }
+ ]
+ }
+ },
+ "delegatedResources": {
+ "$ref": "../../../../../../common-types/resource-management/v4/managedidentitywithdelegation.json#/definitions/DelegatedResources",
+ "description": "The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only."
+ },
+ "userAssignedIdentities": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "object",
+ "x-ms-client-name": "ManagedServiceIdentityUserAssignedIdentitiesValue",
+ "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."
+ }
+ }
+ },
+ "title": "The user identity associated with the managed cluster. This identity will be used in control plane. Only one user assigned identity is allowed.",
+ "description": "The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."
+ }
+ },
+ "description": "Identity for the managed cluster."
+ },
+ "UserAssignedIdentity": {
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.ManagedIdentity/userAssignedIdentities"
+ }
+ ]
+ },
+ "description": "The resource ID of the user assigned identity."
+ },
+ "clientId": {
+ "type": "string",
+ "description": "The client ID of the user assigned identity."
+ },
+ "objectId": {
+ "type": "string",
+ "description": "The object ID of the user assigned identity."
+ }
+ },
+ "description": "Details about a user assigned identity."
+ },
+ "ManagedClusterAccessProfile": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "AccessProfile of a managed cluster.",
+ "$ref": "#/definitions/AccessProfile",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "Managed cluster Access Profile.",
+ "x-ms-azure-resource": false
+ },
+ "AccessProfile": {
+ "type": "object",
+ "properties": {
+ "kubeConfig": {
+ "type": "string",
+ "format": "byte",
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "Profile for enabling a user to access a managed cluster."
+ },
+ "ManagedClusterPoolUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "name": {
+ "type": "string",
+ "description": "The Agent Pool name."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "upgrades": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether the Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of orchestrator types and versions available for upgrade."
+ }
+ },
+ "required": [
+ "kubernetesVersion",
+ "osType"
+ ],
+ "description": "The list of available upgrade versions."
+ },
+ "ManagedClusterUpgradeProfileProperties": {
+ "type": "object",
+ "properties": {
+ "controlPlaneProfile": {
+ "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile",
+ "description": "The list of available upgrade versions for the control plane."
+ },
+ "agentPoolProfiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of available upgrade versions for agent pools."
+ }
+ },
+ "required": [
+ "controlPlaneProfile",
+ "agentPoolProfiles"
+ ],
+ "description": "Control plane and agent pool upgrade profiles."
+ },
+ "ManagedClusterAutoUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "upgradeChannel": {
+ "type": "string",
+ "enum": [
+ "rapid",
+ "stable",
+ "patch",
+ "node-image",
+ "none"
+ ],
+ "x-ms-enum": {
+ "name": "upgradeChannel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "rapid",
+ "description": "Automatically upgrade the cluster to the latest supported patch release on the latest supported minor version. In cases where the cluster is at a version of Kubernetes that is at an N-2 minor version where N is the latest supported minor version, the cluster first upgrades to the latest supported patch version on N-1 minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster first is upgraded to 1.18.6, then is upgraded to 1.19.1."
+ },
+ {
+ "value": "stable",
+ "description": "Automatically upgrade the cluster to the latest supported patch release on minor version N-1, where N is the latest supported minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.18.6."
+ },
+ {
+ "value": "patch",
+ "description": "Automatically upgrade the cluster to the latest supported patch version when it becomes available while keeping the minor version the same. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.17.9."
+ },
+ {
+ "value": "node-image",
+ "description": "Automatically upgrade the node image to the latest version available. Consider using nodeOSUpgradeChannel instead as that allows you to configure node OS patching separate from Kubernetes version patching"
+ },
+ {
+ "value": "none",
+ "description": "Disables auto-upgrades and keeps the cluster at its current version of Kubernetes."
+ }
+ ]
+ },
+ "title": "The upgrade channel for auto upgrade. The default is 'none'.",
+ "description": "For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel)."
+ },
+ "nodeOSUpgradeChannel": {
+ "type": "string",
+ "enum": [
+ "Unmanaged",
+ "None",
+ "SecurityPatch",
+ "NodeImage"
+ ],
+ "x-ms-enum": {
+ "name": "NodeOSUpgradeChannel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "None",
+ "description": "No attempt to update your machines OS will be made either by OS or by rolling VHDs. This means you are responsible for your security updates"
+ },
+ {
+ "value": "Unmanaged",
+ "description": "OS updates will be applied automatically through the OS built-in patching infrastructure. Newly scaled in machines will be unpatched initially, and will be patched at some later time by the OS's infrastructure. Behavior of this option depends on the OS in question. Ubuntu and Mariner apply security patches through unattended upgrade roughly once a day around 06:00 UTC. Windows does not apply security patches automatically and so for them this option is equivalent to None till further notice"
+ },
+ {
+ "value": "SecurityPatch",
+ "description": "AKS will update the nodes VHD with patches from the image maintainer labelled \"security only\" on a regular basis. Where possible, patches will also be applied without reimaging to existing nodes. Some patches, such as kernel patches, cannot be applied to existing nodes without disruption. For such patches, the VHD will be updated, and machines will be rolling reimaged to that VHD following maintenance windows and surge settings. This option incurs the extra cost of hosting the VHDs in your node resource group."
+ },
+ {
+ "value": "NodeImage",
+ "description": "AKS will update the nodes with a newly patched VHD containing security fixes and bugfixes on a weekly cadence. With the VHD update machines will be rolling reimaged to that VHD following maintenance windows and surge settings. No extra VHD cost is incurred when choosing this option as AKS hosts the images."
+ }
+ ]
+ },
+ "title": "Manner in which the OS on your nodes is updated",
+ "description": "The default is Unmanaged, but may change to either NodeImage or SecurityPatch at GA."
+ }
+ },
+ "description": "Auto upgrade profile for a managed cluster."
+ },
+ "ControlPlaneUpgradeOverride": {
+ "type": "string",
+ "enum": [
+ "IgnoreKubernetesDeprecations"
+ ],
+ "x-ms-enum": {
+ "name": "ControlPlaneUpgradeOverride",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "IgnoreKubernetesDeprecations",
+ "description": "Upgrade the cluster control plane version without checking for recent Kubernetes deprecations usage."
+ }
+ ]
+ },
+ "description": "The list of control plane upgrade override settings."
+ },
+ "UpgradeOverrideSettings": {
+ "type": "object",
+ "properties": {
+ "controlPlaneOverrides": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ControlPlaneUpgradeOverride"
+ },
+ "x-ms-identifiers": [],
+ "description": "List of upgrade overrides when upgrading a cluster's control plane."
+ },
+ "until": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect."
+ }
+ },
+ "description": "Settings for overrides when upgrading a cluster."
+ },
+ "ClusterUpgradeSettings": {
+ "type": "object",
+ "properties": {
+ "overrideSettings": {
+ "$ref": "#/definitions/UpgradeOverrideSettings",
+ "description": "Settings for overrides."
+ }
+ },
+ "description": "Settings for upgrading a cluster."
+ },
+ "ManagedClusterAADProfile": {
+ "type": "object",
+ "properties": {
+ "managed": {
+ "type": "boolean",
+ "description": "Whether to enable managed AAD."
+ },
+ "enableAzureRBAC": {
+ "type": "boolean",
+ "description": "Whether to enable Azure RBAC for Kubernetes authorization."
+ },
+ "adminGroupObjectIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of AAD group object IDs that will have admin role of the cluster."
+ },
+ "clientAppID": {
+ "type": "string",
+ "description": "(DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "serverAppID": {
+ "type": "string",
+ "description": "(DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "serverAppSecret": {
+ "type": "string",
+ "description": "(DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "tenantID": {
+ "type": "string",
+ "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription."
+ }
+ },
+ "title": "AADProfile specifies attributes for Azure Active Directory integration.",
+ "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)."
+ },
+ "ManagedClusterAddonProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the add-on is enabled or not."
+ },
+ "config": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Key-value pairs for configuring an add-on."
+ },
+ "identity": {
+ "readOnly": true,
+ "description": "Information of user assigned identity used by this add-on.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/UserAssignedIdentity"
+ }
+ ]
+ }
+ },
+ "required": [
+ "enabled"
+ ],
+ "description": "A Kubernetes add-on profile for a managed cluster."
+ },
+ "ManagedClusterPodIdentity": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the pod identity."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the pod identity."
+ },
+ "bindingSelector": {
+ "type": "string",
+ "description": "The binding selector to use for the AzureIdentityBinding resource."
+ },
+ "identity": {
+ "$ref": "#/definitions/UserAssignedIdentity",
+ "description": "The user assigned identity details."
+ },
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state of the pod identity.",
+ "enum": [
+ "Assigned",
+ "Canceled",
+ "Deleting",
+ "Failed",
+ "Succeeded",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterPodIdentityProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "provisioningInfo": {
+ "type": "object",
+ "readOnly": true,
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProvisioningError",
+ "description": "Pod identity assignment error (if any)."
+ }
+ }
+ }
+ },
+ "required": [
+ "name",
+ "namespace",
+ "identity"
+ ],
+ "description": "Details about the pod identity assigned to the Managed Cluster."
+ },
+ "ManagedClusterPodIdentityProvisioningError": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProvisioningErrorBody",
+ "description": "Details about the error."
+ }
+ },
+ "description": "An error response from the pod identity provisioning."
+ },
+ "ManagedClusterPodIdentityProvisioningErrorBody": {
+ "type": "object",
+ "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/ManagedClusterPodIdentityProvisioningErrorBody"
+ },
+ "x-ms-identifiers": [],
+ "description": "A list of additional details about the error."
+ }
+ },
+ "description": "An error response from the pod identity provisioning."
+ },
+ "ManagedClusterPodIdentityException": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the pod identity exception."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the pod identity exception."
+ },
+ "podLabels": {
+ "type": "object",
+ "description": "The pod labels to match.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "name",
+ "namespace",
+ "podLabels"
+ ],
+ "title": "A pod identity exception, which allows pods with certain labels to access the Azure Instance Metadata Service (IMDS) endpoint without being intercepted by the node-managed identity (NMI) server.",
+ "description": "See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details."
+ },
+ "ManagedClusterPodIdentityProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the pod identity addon is enabled."
+ },
+ "allowNetworkPluginKubenet": {
+ "type": "boolean",
+ "title": "Whether pod identity is allowed to run on clusters with Kubenet networking.",
+ "description": "Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information."
+ },
+ "userAssignedIdentities": {
+ "description": "The pod identities to use in the cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPodIdentity"
+ },
+ "x-ms-identifiers": []
+ },
+ "userAssignedIdentityExceptions": {
+ "description": "The pod identity exceptions to allow.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityException"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "title": "The pod identity profile of the Managed Cluster.",
+ "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration."
+ },
+ "ManagedClusterOIDCIssuerProfile": {
+ "type": "object",
+ "properties": {
+ "issuerURL": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The OIDC issuer url of the Managed Cluster."
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the OIDC issuer is enabled."
+ }
+ },
+ "description": "The OIDC issuer profile of the Managed Cluster."
+ },
+ "ManagedClusterUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the upgrade profile."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the upgrade profile."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the upgrade profile."
+ },
+ "properties": {
+ "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties",
+ "description": "The properties of the upgrade profile.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available upgrades for compute pools."
+ },
+ "AgentPoolUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the agent pool upgrade profile."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the agent pool upgrade profile."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the agent pool upgrade profile."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolUpgradeProfileProperties",
+ "description": "The properties of the agent pool upgrade profile.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available upgrades for an agent pool."
+ },
+ "AgentPoolUpgradeProfileProperties": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "upgrades": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether the Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of orchestrator types and versions available for upgrade."
+ },
+ "latestNodeImageVersion": {
+ "type": "string",
+ "description": "The latest AKS supported node image version."
+ }
+ },
+ "required": [
+ "kubernetesVersion",
+ "osType"
+ ],
+ "description": "The list of available upgrade versions."
+ },
+ "AgentPoolAvailableVersions": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the agent pool version list."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the agent pool version list."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Type of the agent pool version list."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolAvailableVersionsProperties",
+ "description": "Properties of agent pool available versions.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available versions for an agent pool."
+ },
+ "AgentPoolAvailableVersionsProperties": {
+ "type": "object",
+ "properties": {
+ "agentPoolVersions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "default": {
+ "type": "boolean",
+ "description": "Whether this version is the default agent pool version."
+ },
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of versions available for agent pool."
+ }
+ },
+ "description": "The list of available agent pool versions."
+ },
+ "OSType": {
+ "type": "string",
+ "default": "Linux",
+ "enum": [
+ "Linux",
+ "Windows"
+ ],
+ "x-ms-enum": {
+ "name": "OSType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Linux",
+ "description": "Use Linux."
+ },
+ {
+ "value": "Windows",
+ "description": "Use Windows."
+ }
+ ]
+ },
+ "description": "The operating system type. The default is Linux."
+ },
+ "OSSKU": {
+ "type": "string",
+ "enum": [
+ "Ubuntu",
+ "CBLMariner",
+ "Mariner",
+ "AzureLinux",
+ "Windows2019",
+ "Windows2022"
+ ],
+ "x-ms-enum": {
+ "name": "OSSKU",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Ubuntu",
+ "description": "Use Ubuntu as the OS for node images."
+ },
+ {
+ "value": "Mariner",
+ "description": "Deprecated OSSKU. Microsoft recommends that new deployments choose 'AzureLinux' instead."
+ },
+ {
+ "value": "AzureLinux",
+ "description": "Use AzureLinux as the OS for node images. Azure Linux is a container-optimized Linux distro built by Microsoft, visit https://aka.ms/azurelinux for more information."
+ },
+ {
+ "value": "CBLMariner",
+ "description": "Deprecated OSSKU. Microsoft recommends that new deployments choose 'AzureLinux' instead."
+ },
+ {
+ "value": "Windows2019",
+ "description": "Use Windows2019 as the OS for node images. Unsupported for system node pools. Windows2019 only supports Windows2019 containers; it cannot run Windows2022 containers and vice versa."
+ },
+ {
+ "value": "Windows2022",
+ "description": "Use Windows2022 as the OS for node images. Unsupported for system node pools. Windows2022 only supports Windows2022 containers; it cannot run Windows2019 containers and vice versa."
+ }
+ ]
+ },
+ "description": "Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated."
+ },
+ "ScaleSetPriority": {
+ "type": "string",
+ "default": "Regular",
+ "enum": [
+ "Spot",
+ "Regular"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleSetPriority",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Spot",
+ "description": "Spot priority VMs will be used. There is no SLA for spot nodes. See [spot on AKS](https://docs.microsoft.com/azure/aks/spot-node-pool) for more information."
+ },
+ {
+ "value": "Regular",
+ "description": "Regular VMs will be used."
+ }
+ ]
+ },
+ "description": "The Virtual Machine Scale Set priority."
+ },
+ "ScaleSetEvictionPolicy": {
+ "type": "string",
+ "default": "Delete",
+ "enum": [
+ "Delete",
+ "Deallocate"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleSetEvictionPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Delete",
+ "description": "Nodes in the underlying Scale Set of the node pool are deleted when they're evicted."
+ },
+ {
+ "value": "Deallocate",
+ "description": "Nodes in the underlying Scale Set of the node pool are set to the stopped-deallocated state upon eviction. Nodes in the stopped-deallocated state count against your compute quota and can cause issues with cluster scaling or upgrading."
+ }
+ ]
+ },
+ "title": "The Virtual Machine Scale Set eviction policy.",
+ "description": "The eviction policy specifies what to do with the VM when it is evicted. The default is Delete. For more information about eviction see [spot VMs](https://docs.microsoft.com/azure/virtual-machines/spot-vms)"
+ },
+ "SpotMaxPrice": {
+ "type": "number",
+ "default": -1,
+ "title": "The max price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.",
+ "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)"
+ },
+ "ScaleDownMode": {
+ "type": "string",
+ "enum": [
+ "Delete",
+ "Deallocate"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleDownMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Delete",
+ "description": "Create new instances during scale up and remove instances during scale down."
+ },
+ {
+ "value": "Deallocate",
+ "description": "Attempt to start deallocated instances (if they exist) during scale up and deallocate instances during scale down."
+ }
+ ]
+ },
+ "description": "Describes how VMs are added to or removed from Agent Pools. See [billing states](https://docs.microsoft.com/azure/virtual-machines/states-billing)."
+ },
+ "ProximityPlacementGroupID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/proximityPlacementGroups"
+ }
+ ]
+ },
+ "description": "The ID for Proximity Placement Group."
+ },
+ "CredentialResults": {
+ "type": "object",
+ "properties": {
+ "kubeconfigs": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/CredentialResult"
+ },
+ "x-ms-identifiers": [],
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "The list credential result response."
+ },
+ "CredentialResult": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the credential."
+ },
+ "value": {
+ "type": "string",
+ "format": "byte",
+ "readOnly": true,
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "The credential result response."
+ },
+ "CloudError": {
+ "type": "object",
+ "x-ms-external": true,
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/CloudErrorBody",
+ "description": "Details about the error."
+ }
+ },
+ "description": "An error response from the Container service."
+ },
+ "CloudErrorBody": {
+ "type": "object",
+ "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": [],
+ "description": "A list of additional details about the error."
+ }
+ },
+ "description": "An error response from the Container service."
+ },
+ "ManagedClusterSKU": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of a managed cluster SKU.",
+ "enum": [
+ "Base"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterSKUName",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Base",
+ "description": "Base option for the AKS control plane."
+ }
+ ]
+ }
+ },
+ "tier": {
+ "type": "string",
+ "title": "The tier of a managed cluster SKU.",
+ "description": "If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details.",
+ "enum": [
+ "Premium",
+ "Standard",
+ "Free"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterSKUTier",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Premium",
+ "description": "Cluster has premium capabilities in addition to all of the capabilities included in 'Standard'. Premium enables selection of LongTermSupport (aka.ms/aks/lts) for certain Kubernetes versions."
+ },
+ {
+ "value": "Standard",
+ "description": "Recommended for mission-critical and production workloads. Includes Kubernetes control plane autoscaling, workload-intensive testing, and up to 5,000 nodes per cluster. Guarantees 99.95% availability of the Kubernetes API server endpoint for clusters that use Availability Zones and 99.9% of availability for clusters that don't use Availability Zones."
+ },
+ {
+ "value": "Free",
+ "description": "The cluster management is free, but charged for VM, storage, and networking usage. Best for experimenting, learning, simple testing, or workloads with fewer than 10 nodes. Not recommended for production use cases."
+ }
+ ]
+ }
+ }
+ },
+ "description": "The SKU of a Managed Cluster."
+ },
+ "PrivateEndpointConnectionListResult": {
+ "type": "object",
+ "description": "A list of private endpoint connections",
+ "properties": {
+ "value": {
+ "description": "The collection value.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "description": "A private endpoint connection",
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the private endpoint connection."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection.",
+ "externalDocs": {
+ "url": "https://aka.ms/search-naming-rules"
+ }
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type."
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "description": "The properties of a private endpoint connection.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "PrivateEndpointConnectionProperties": {
+ "type": "object",
+ "description": "Properties of a private endpoint connection.",
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Canceled",
+ "Creating",
+ "Deleting",
+ "Failed",
+ "Succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The resource of private endpoint."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ }
+ },
+ "required": [
+ "privateLinkServiceConnectionState"
+ ]
+ },
+ "PrivateEndpoint": {
+ "type": "object",
+ "description": "Private endpoint which a connection belongs to.",
+ "properties": {
+ "id": {
+ "description": "The resource ID of the private endpoint",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "description": "The state of a private link service connection.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "type": "string",
+ "description": "The private link service connection status.",
+ "x-ms-enum": {
+ "name": "ConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "type": "string",
+ "description": "The private link service connection description."
+ }
+ }
+ },
+ "PrivateLinkResourcesListResult": {
+ "type": "object",
+ "description": "A list of private link resources",
+ "properties": {
+ "value": {
+ "description": "The collection value.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ }
+ }
+ },
+ "PrivateLinkResource": {
+ "description": "A private link resource",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the private link resource."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the private link resource.",
+ "externalDocs": {
+ "url": "https://aka.ms/search-naming-rules"
+ }
+ },
+ "type": {
+ "type": "string",
+ "description": "The resource type."
+ },
+ "groupId": {
+ "type": "string",
+ "description": "The group ID of the resource."
+ },
+ "requiredMembers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The RequiredMembers of the resource"
+ },
+ "privateLinkServiceID": {
+ "readOnly": true,
+ "type": "string",
+ "format": "arm-id",
+ "description": "The private link service ID of the resource, this field is exposed only to NRP internally."
+ }
+ }
+ },
+ "OSDiskType": {
+ "type": "string",
+ "enum": [
+ "Managed",
+ "Ephemeral"
+ ],
+ "x-ms-enum": {
+ "name": "OSDiskType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Managed",
+ "description": "Azure replicates the operating system disk for a virtual machine to Azure storage to avoid data loss should the VM need to be relocated to another host. Since containers aren't designed to have local state persisted, this behavior offers limited value while providing some drawbacks, including slower node provisioning and higher read/write latency."
+ },
+ {
+ "value": "Ephemeral",
+ "description": "Ephemeral OS disks are stored only on the host machine, just like a temporary disk. This provides lower read/write latency, along with faster node scaling and cluster upgrades."
+ }
+ ]
+ },
+ "title": "The OS disk type to be used for machines in the agent pool.",
+ "description": "The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os)."
+ },
+ "KubeletDiskType": {
+ "type": "string",
+ "enum": [
+ "OS",
+ "Temporary"
+ ],
+ "x-ms-enum": {
+ "name": "KubeletDiskType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "OS",
+ "description": "Kubelet will use the OS disk for its data."
+ },
+ {
+ "value": "Temporary",
+ "description": "Kubelet will use the temporary disk for its data."
+ }
+ ]
+ },
+ "description": "Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage."
+ },
+ "WorkloadRuntime": {
+ "type": "string",
+ "enum": [
+ "OCIContainer",
+ "WasmWasi",
+ "KataMshvVmIsolation"
+ ],
+ "x-ms-enum": {
+ "name": "WorkloadRuntime",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "OCIContainer",
+ "description": "Nodes will use Kubelet to run standard OCI container workloads."
+ },
+ {
+ "value": "WasmWasi",
+ "description": "Nodes will use Krustlet to run WASM workloads using the WASI provider (Preview)."
+ },
+ {
+ "value": "KataMshvVmIsolation",
+ "description": "Nodes can use (Kata + Cloud Hypervisor + Hyper-V) to enable Nested VM-based pods (Preview). Due to the use Hyper-V, AKS node OS itself is a nested VM (the root OS) of Hyper-V. Thus it can only be used with VM series that support Nested Virtualization such as Dv3 series."
+ }
+ ]
+ },
+ "description": "Determines the type of workload a node can run."
+ },
+ "KubeletConfig": {
+ "title": "Kubelet configurations of agent nodes.",
+ "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.",
+ "type": "object",
+ "properties": {
+ "cpuManagerPolicy": {
+ "type": "string",
+ "title": "The CPU Manager policy to use.",
+ "description": "The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'."
+ },
+ "cpuCfsQuota": {
+ "type": "boolean",
+ "title": "If CPU CFS quota enforcement is enabled for containers that specify CPU limits.",
+ "description": "The default is true."
+ },
+ "cpuCfsQuotaPeriod": {
+ "type": "string",
+ "title": "The CPU CFS quota period value.",
+ "description": "The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'."
+ },
+ "imageGcHighThreshold": {
+ "type": "integer",
+ "format": "int32",
+ "title": "The percent of disk usage after which image garbage collection is always run.",
+ "description": "To disable image garbage collection, set to 100. The default is 85%"
+ },
+ "imageGcLowThreshold": {
+ "type": "integer",
+ "format": "int32",
+ "title": "The percent of disk usage before which image garbage collection is never run.",
+ "description": "This cannot be set higher than imageGcHighThreshold. The default is 80%"
+ },
+ "topologyManagerPolicy": {
+ "type": "string",
+ "title": "The Topology Manager policy to use.",
+ "description": "For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'."
+ },
+ "allowedUnsafeSysctls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`)."
+ },
+ "failSwapOn": {
+ "type": "boolean",
+ "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node."
+ },
+ "containerLogMaxSizeMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated."
+ },
+ "containerLogMaxFiles": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2.",
+ "minimum": 2
+ },
+ "podMaxPids": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of processes per pod."
+ }
+ }
+ },
+ "LinuxOSConfig": {
+ "title": "OS configurations of Linux agent nodes.",
+ "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.",
+ "type": "object",
+ "properties": {
+ "sysctls": {
+ "$ref": "#/definitions/SysctlConfig",
+ "description": "Sysctl settings for Linux agent nodes."
+ },
+ "transparentHugePageEnabled": {
+ "type": "string",
+ "title": "Whether transparent hugepages are enabled.",
+ "description": "Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)."
+ },
+ "transparentHugePageDefrag": {
+ "type": "string",
+ "title": "Whether the kernel should make aggressive use of memory compaction to make more hugepages available.",
+ "description": "Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)."
+ },
+ "swapFileSizeMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The size in MB of a swap file that will be created on each node."
+ }
+ }
+ },
+ "AgentPoolWindowsProfile": {
+ "type": "object",
+ "description": "The Windows agent pool's specific profile.",
+ "properties": {
+ "disableOutboundNat": {
+ "type": "boolean",
+ "title": "Whether to disable OutboundNAT in windows nodes",
+ "description": "The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled."
+ }
+ }
+ },
+ "AgentPoolSecurityProfile": {
+ "type": "object",
+ "properties": {
+ "sshAccess": {
+ "$ref": "#/definitions/AgentPoolSSHAccess",
+ "description": "SSH access method of an agent pool."
+ }
+ },
+ "description": "The security settings of an agent pool."
+ },
+ "AgentPoolSSHAccess": {
+ "type": "string",
+ "enum": [
+ "LocalUser",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolSSHAccess",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "LocalUser",
+ "description": "Can SSH onto the node as a local user using private key."
+ },
+ {
+ "value": "Disabled",
+ "description": "SSH service will be turned off on the node."
+ }
+ ]
+ },
+ "description": "SSH access method of an agent pool."
+ },
+ "SysctlConfig": {
+ "description": "Sysctl settings for Linux agent nodes.",
+ "type": "object",
+ "properties": {
+ "netCoreSomaxconn": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.somaxconn."
+ },
+ "netCoreNetdevMaxBacklog": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.netdev_max_backlog."
+ },
+ "netCoreRmemDefault": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.rmem_default."
+ },
+ "netCoreRmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.rmem_max."
+ },
+ "netCoreWmemDefault": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.wmem_default."
+ },
+ "netCoreWmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.wmem_max."
+ },
+ "netCoreOptmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.optmem_max."
+ },
+ "netIpv4TcpMaxSynBacklog": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog."
+ },
+ "netIpv4TcpMaxTwBuckets": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets."
+ },
+ "netIpv4TcpFinTimeout": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_fin_timeout."
+ },
+ "netIpv4TcpKeepaliveTime": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_time."
+ },
+ "netIpv4TcpKeepaliveProbes": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_probes."
+ },
+ "netIpv4TcpkeepaliveIntvl": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 10,
+ "maximum": 90,
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl."
+ },
+ "netIpv4TcpTwReuse": {
+ "type": "boolean",
+ "description": "Sysctl setting net.ipv4.tcp_tw_reuse."
+ },
+ "netIpv4IpLocalPortRange": {
+ "type": "string",
+ "description": "Sysctl setting net.ipv4.ip_local_port_range."
+ },
+ "netIpv4NeighDefaultGcThresh1": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1."
+ },
+ "netIpv4NeighDefaultGcThresh2": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2."
+ },
+ "netIpv4NeighDefaultGcThresh3": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3."
+ },
+ "netNetfilterNfConntrackMax": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 131072,
+ "maximum": 2097152,
+ "description": "Sysctl setting net.netfilter.nf_conntrack_max."
+ },
+ "netNetfilterNfConntrackBuckets": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 65536,
+ "maximum": 524288,
+ "description": "Sysctl setting net.netfilter.nf_conntrack_buckets."
+ },
+ "fsInotifyMaxUserWatches": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.inotify.max_user_watches."
+ },
+ "fsFileMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.file-max."
+ },
+ "fsAioMaxNr": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.aio-max-nr."
+ },
+ "fsNrOpen": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.nr_open."
+ },
+ "kernelThreadsMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting kernel.threads-max."
+ },
+ "vmMaxMapCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.max_map_count."
+ },
+ "vmSwappiness": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.swappiness."
+ },
+ "vmVfsCachePressure": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.vfs_cache_pressure."
+ }
+ }
+ },
+ "ManagedClusterHTTPProxyConfig": {
+ "description": "Cluster HTTP proxy configuration.",
+ "type": "object",
+ "properties": {
+ "httpProxy": {
+ "type": "string",
+ "description": "The HTTP proxy server endpoint to use."
+ },
+ "httpsProxy": {
+ "type": "string",
+ "description": "The HTTPS proxy server endpoint to use."
+ },
+ "noProxy": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The endpoints that should not go through proxy."
+ },
+ "effectiveNoProxy": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "A read-only list of all endpoints for which traffic should not be sent to the proxy. This list is a superset of noProxy and values injected by AKS."
+ },
+ "trustedCa": {
+ "type": "string",
+ "description": "Alternative CA cert to use for connecting to proxy servers."
+ }
+ }
+ },
+ "GPUInstanceProfile": {
+ "type": "string",
+ "enum": [
+ "MIG1g",
+ "MIG2g",
+ "MIG3g",
+ "MIG4g",
+ "MIG7g"
+ ],
+ "x-ms-enum": {
+ "name": "GPUInstanceProfile ",
+ "modelAsString": true
+ },
+ "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU."
+ },
+ "ExtendedLocationType": {
+ "type": "string",
+ "description": "The type of extendedLocation.",
+ "enum": [
+ "EdgeZone"
+ ],
+ "x-ms-enum": {
+ "name": "ExtendedLocationTypes",
+ "modelAsString": true
+ }
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "description": "The complex type of the extended location.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extended location."
+ },
+ "type": {
+ "$ref": "#/definitions/ExtendedLocationType",
+ "description": "The type of the extended location."
+ }
+ }
+ },
+ "OSOptionProperty": {
+ "type": "object",
+ "properties": {
+ "os-type": {
+ "type": "string",
+ "description": "The OS type."
+ },
+ "enable-fips-image": {
+ "type": "boolean",
+ "description": "Whether the image is FIPS-enabled."
+ }
+ },
+ "required": [
+ "os-type",
+ "enable-fips-image"
+ ],
+ "description": "OS option property."
+ },
+ "OSOptionPropertyList": {
+ "type": "object",
+ "properties": {
+ "osOptionPropertyList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSOptionProperty"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of OS options."
+ }
+ },
+ "required": [
+ "osOptionPropertyList"
+ ],
+ "description": "The list of OS option properties."
+ },
+ "OSOptionProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the OS option resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the OS option resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the OS option resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/OSOptionPropertyList",
+ "description": "The list of OS options.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The OS option profile."
+ },
+ "EndpointDependency": {
+ "description": "A domain name that AKS agent nodes are reaching at.",
+ "type": "object",
+ "properties": {
+ "domainName": {
+ "description": "The domain name of the dependency.",
+ "type": "string"
+ },
+ "endpointDetails": {
+ "description": "The Ports and Protocols used when connecting to domainName.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointDetail"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "EndpointDetail": {
+ "description": "connect information from the AKS agent nodes to a single endpoint.",
+ "type": "object",
+ "properties": {
+ "ipAddress": {
+ "description": "An IP Address that Domain Name currently resolves to.",
+ "type": "string"
+ },
+ "port": {
+ "format": "int32",
+ "description": "The port an endpoint is connected to.",
+ "type": "integer"
+ },
+ "protocol": {
+ "description": "The protocol used for connection",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the detail",
+ "type": "string"
+ }
+ }
+ },
+ "OutboundEnvironmentEndpoint": {
+ "description": "Egress endpoints which AKS agent nodes connect to for common purpose.",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "The category of endpoints accessed by the AKS agent node, e.g. azure-resource-management, apiserver, etc.",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "The endpoints that AKS agent nodes connect to",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointDependency"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "OutboundEnvironmentEndpointCollection": {
+ "description": "Collection of OutboundEnvironmentEndpoint",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OutboundEnvironmentEndpoint"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedClusterSecurityProfile": {
+ "type": "object",
+ "properties": {
+ "defender": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileDefender",
+ "description": "Microsoft Defender settings for the security profile."
+ },
+ "azureKeyVaultKms": {
+ "$ref": "#/definitions/AzureKeyVaultKms",
+ "description": "Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile."
+ },
+ "workloadIdentity": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileWorkloadIdentity",
+ "description": "Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details."
+ },
+ "imageCleaner": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileImageCleaner",
+ "description": "Image Cleaner settings for the security profile."
+ },
+ "imageIntegrity": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileImageIntegrity",
+ "description": "Image integrity is a feature that works with Azure Policy to verify image integrity by signature. This will not have any effect unless Azure Policy is applied to enforce image signatures. See https://aka.ms/aks/image-integrity for how to use this feature via policy."
+ },
+ "nodeRestriction": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileNodeRestriction",
+ "description": "[Node Restriction](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#noderestriction) settings for the security profile."
+ },
+ "customCATrustCertificates": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileCustomCATrustCertificates",
+ "description": "A list of up to 10 base64 encoded CAs that will be added to the trust store on nodes with the Custom CA Trust feature enabled. For more information see [Custom CA Trust Certificates](https://learn.microsoft.com/en-us/azure/aks/custom-certificate-authority)"
+ }
+ },
+ "description": "Security profile for the container service cluster."
+ },
+ "ManagedClusterSecurityProfileDefender": {
+ "type": "object",
+ "properties": {
+ "logAnalyticsWorkspaceResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.OperationalInsights/workspaces"
+ }
+ ]
+ },
+ "description": "Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty."
+ },
+ "securityMonitoring": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileDefenderSecurityMonitoring",
+ "description": "Microsoft Defender threat detection for Cloud settings for the security profile."
+ }
+ },
+ "description": "Microsoft Defender settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileDefenderSecurityMonitoring": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Defender threat detection"
+ }
+ },
+ "description": "Microsoft Defender settings for the security profile threat detection."
+ },
+ "ManagedClusterStorageProfile": {
+ "type": "object",
+ "properties": {
+ "diskCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileDiskCSIDriver",
+ "description": "AzureDisk CSI Driver settings for the storage profile."
+ },
+ "fileCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileFileCSIDriver",
+ "description": "AzureFile CSI Driver settings for the storage profile."
+ },
+ "snapshotController": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileSnapshotController",
+ "description": "Snapshot Controller settings for the storage profile."
+ },
+ "blobCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileBlobCSIDriver",
+ "description": "AzureBlob CSI Driver settings for the storage profile."
+ }
+ },
+ "description": "Storage profile for the container service cluster."
+ },
+ "AzureKeyVaultKms": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Azure Key Vault key management service. The default is false."
+ },
+ "keyId": {
+ "type": "string",
+ "description": "Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty."
+ },
+ "keyVaultNetworkAccess": {
+ "type": "string",
+ "enum": [
+ "Public",
+ "Private"
+ ],
+ "default": "Public",
+ "x-ms-enum": {
+ "name": "KeyVaultNetworkAccessTypes",
+ "modelAsString": true
+ },
+ "title": "Network access of the key vault",
+ "description": "Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`."
+ },
+ "keyVaultResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ ]
+ },
+ "description": "Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty."
+ }
+ },
+ "description": "Azure Key Vault key management service settings for the security profile."
+ },
+ "ManagedClusterIngressProfile": {
+ "type": "object",
+ "properties": {
+ "webAppRouting": {
+ "$ref": "#/definitions/ManagedClusterIngressProfileWebAppRouting",
+ "description": "Web App Routing settings for the ingress profile."
+ }
+ },
+ "description": "Ingress profile for the container service cluster."
+ },
+ "ManagedClusterIngressProfileWebAppRouting": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Web App Routing."
+ },
+ "dnsZoneResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "Resource ID of the DNS Zone to be associated with the web app. Used only when Web App Routing is enabled."
+ },
+ "identity": {
+ "readOnly": true,
+ "type": "object",
+ "$ref": "#/definitions/UserAssignedIdentity",
+ "description": "Managed identity of the Web Application Routing add-on. This is the identity that should be granted permissions, for example, to manage the associated Azure DNS resource and get certificates from Azure Key Vault. See [this overview of the add-on](https://learn.microsoft.com/en-us/azure/aks/web-app-routing?tabs=with-osm) for more instructions."
+ }
+ },
+ "description": "Web App Routing settings for the ingress profile."
+ },
+ "ManagedClusterSecurityProfileWorkloadIdentity": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable workload identity."
+ }
+ },
+ "description": "Workload identity settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileImageCleaner": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Image Cleaner on AKS cluster."
+ },
+ "intervalHours": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Image Cleaner scanning interval in hours."
+ }
+ },
+ "description": "Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileImageIntegrity": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable image integrity. The default value is false."
+ }
+ },
+ "description": "Image integrity related settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileNodeRestriction": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Node Restriction"
+ }
+ },
+ "description": "Node Restriction settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileCustomCATrustCertificates": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "format": "byte"
+ },
+ "minItems": 0,
+ "maxItems": 10,
+ "title": "The list of base64 encoded certificate strings that will be added to the node trust store. At most 10 strings can be provided.",
+ "description": "Certificates will only be added to trust stores on node pools that have enableCustomCATrust field set to true. If updated, the new list of certificates will be installed in the trust store in place of the old certificates. The certificates are applied asynchronously and will be available a short time after the list is updated."
+ },
+ "ManagedClusterStorageProfileDiskCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureDisk CSI Driver. The default value is true."
+ },
+ "version": {
+ "type": "string",
+ "description": "The version of AzureDisk CSI Driver. The default value is v1."
+ }
+ },
+ "description": "AzureDisk CSI Driver settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileFileCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureFile CSI Driver. The default value is true."
+ }
+ },
+ "description": "AzureFile CSI Driver settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileSnapshotController": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Snapshot Controller. The default value is true."
+ }
+ },
+ "description": "Snapshot Controller settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileBlobCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureBlob CSI Driver. The default value is false."
+ }
+ },
+ "description": "AzureBlob CSI Driver settings for the storage profile."
+ },
+ "CreationData": {
+ "description": "Data used when creating a target resource from a source resource.",
+ "type": "object",
+ "properties": {
+ "sourceResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "This is the ARM ID of the source object to be used to create the target object."
+ }
+ }
+ },
+ "SnapshotListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "The list of snapshots."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of snapshot results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Snapshots operation."
+ },
+ "ManagedClusterSnapshotListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterSnapshot"
+ },
+ "description": "The list of managed cluster snapshots."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed cluster snapshot results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Managed Cluster Snapshots operation."
+ },
+ "Snapshot": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "Properties of a snapshot.",
+ "$ref": "#/definitions/SnapshotProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "A node pool snapshot resource."
+ },
+ "ManagedClusterSnapshot": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "Properties of a managed cluster snapshot.",
+ "$ref": "#/definitions/ManagedClusterSnapshotProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "A managed cluster snapshot resource."
+ },
+ "SnapshotProperties": {
+ "type": "object",
+ "properties": {
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source agent pool resource ID to create this snapshot."
+ },
+ "snapshotType": {
+ "$ref": "#/definitions/SnapshotType"
+ },
+ "kubernetesVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of Kubernetes."
+ },
+ "nodeImageVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of node image."
+ },
+ "osType": {
+ "readOnly": true,
+ "$ref": "#/definitions/OSType"
+ },
+ "osSku": {
+ "readOnly": true,
+ "$ref": "#/definitions/OSSKU"
+ },
+ "vmSize": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The size of the VM."
+ },
+ "enableFIPS": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Whether to use a FIPS-enabled OS."
+ }
+ },
+ "description": "Properties used to configure a node pool snapshot."
+ },
+ "ManagedClusterSnapshotProperties": {
+ "type": "object",
+ "properties": {
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source resource ID to create this snapshot."
+ },
+ "snapshotType": {
+ "$ref": "#/definitions/SnapshotType"
+ },
+ "managedClusterPropertiesReadOnly": {
+ "$ref": "#/definitions/ManagedClusterPropertiesForSnapshot",
+ "description": "What the properties will be showed when getting managed cluster snapshot. Those properties are read-only."
+ }
+ },
+ "description": "Properties for a managed cluster snapshot."
+ },
+ "ManagedClusterPropertiesForSnapshot": {
+ "type": "object",
+ "readOnly": true,
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The current kubernetes version."
+ },
+ "sku": {
+ "type": "object",
+ "$ref": "#/definitions/ManagedClusterSKU",
+ "description": "The current managed cluster sku."
+ },
+ "enableRbac": {
+ "type": "boolean",
+ "description": "Whether the cluster has enabled Kubernetes Role-Based Access Control or not."
+ },
+ "networkProfile": {
+ "type": "object",
+ "$ref": "#/definitions/NetworkProfileForSnapshot",
+ "description": "The current network profile."
+ }
+ },
+ "description": "managed cluster properties for snapshot, these properties are read only."
+ },
+ "NetworkProfileForSnapshot": {
+ "type": "object",
+ "readOnly": true,
+ "properties": {
+ "networkPlugin": {
+ "$ref": "#/definitions/NetworkPlugin",
+ "description": "networkPlugin for managed cluster snapshot."
+ },
+ "networkPluginMode": {
+ "$ref": "#/definitions/NetworkPluginMode",
+ "description": "NetworkPluginMode for managed cluster snapshot."
+ },
+ "networkPolicy": {
+ "$ref": "#/definitions/NetworkPolicy",
+ "description": "networkPolicy for managed cluster snapshot."
+ },
+ "networkMode": {
+ "$ref": "#/definitions/NetworkMode",
+ "description": "networkMode for managed cluster snapshot."
+ },
+ "loadBalancerSku": {
+ "$ref": "#/definitions/LoadBalancerSku",
+ "description": "loadBalancerSku for managed cluster snapshot."
+ }
+ },
+ "description": "network profile for managed cluster snapshot, these properties are read only."
+ },
+ "NetworkPlugin": {
+ "type": "string",
+ "enum": [
+ "azure",
+ "kubenet",
+ "none"
+ ],
+ "default": "kubenet",
+ "x-ms-enum": {
+ "name": "NetworkPlugin",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Use the Azure CNI network plugin. See [Azure CNI (advanced) networking](https://docs.microsoft.com/azure/aks/concepts-network#azure-cni-advanced-networking) for more information."
+ },
+ {
+ "value": "kubenet",
+ "description": "Use the Kubenet network plugin. See [Kubenet (basic) networking](https://docs.microsoft.com/azure/aks/concepts-network#kubenet-basic-networking) for more information."
+ },
+ {
+ "value": "none",
+ "description": "Do not use a network plugin. A custom CNI will need to be installed after cluster creation for networking functionality."
+ }
+ ]
+ },
+ "description": "Network plugin used for building the Kubernetes network."
+ },
+ "NetworkPluginMode": {
+ "type": "string",
+ "enum": [
+ "overlay"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkPluginMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "overlay",
+ "description": "Pods are given IPs from the PodCIDR address space but use Azure Routing Domains rather than Kubenet reference plugins host-local and bridge."
+ }
+ ]
+ },
+ "description": "The mode the network plugin should use."
+ },
+ "NetworkPolicy": {
+ "type": "string",
+ "enum": [
+ "calico",
+ "azure",
+ "cilium"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "calico",
+ "description": "Use Calico network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information."
+ },
+ {
+ "value": "azure",
+ "description": "Use Azure network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information."
+ },
+ {
+ "value": "cilium",
+ "description": "Use Cilium to enforce network policies. This requires networkDataplane to be 'cilium'."
+ }
+ ]
+ },
+ "description": "Network policy used for building the Kubernetes network."
+ },
+ "NetworkMode": {
+ "type": "string",
+ "enum": [
+ "transparent",
+ "bridge"
+ ],
+ "x-ms-enum": {
+ "name": "networkMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "transparent",
+ "description": "No bridge is created. Intra-VM Pod to Pod communication is through IP routes created by Azure CNI. See [Transparent Mode](https://docs.microsoft.com/azure/aks/faq#transparent-mode) for more information."
+ },
+ {
+ "value": "bridge",
+ "description": "This is no longer supported"
+ }
+ ]
+ },
+ "title": "The network mode Azure CNI is configured with.",
+ "description": "This cannot be specified if networkPlugin is anything other than 'azure'."
+ },
+ "NetworkDataplane": {
+ "type": "string",
+ "enum": [
+ "azure",
+ "cilium"
+ ],
+ "x-ms-enum": {
+ "name": "networkDataplane",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Use Azure network dataplane."
+ },
+ {
+ "value": "cilium",
+ "description": "Use Cilium network dataplane. See [Azure CNI Powered by Cilium](https://learn.microsoft.com/azure/aks/azure-cni-powered-by-cilium) for more information."
+ }
+ ]
+ },
+ "description": "Network dataplane used in the Kubernetes cluster."
+ },
+ "NetworkMonitoring": {
+ "type": "object",
+ "description": "This addon can be used to configure network monitoring and generate network monitoring data in Prometheus format",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Enable or disable the network monitoring plugin on the cluster"
+ }
+ }
+ },
+ "LoadBalancerSku": {
+ "type": "string",
+ "enum": [
+ "standard",
+ "basic"
+ ],
+ "x-ms-enum": {
+ "name": "loadBalancerSku",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "standard",
+ "description": "Use a a standard Load Balancer. This is the recommended Load Balancer SKU. For more information about on working with the load balancer in the managed cluster, see the [standard Load Balancer](https://docs.microsoft.com/azure/aks/load-balancer-standard) article."
+ },
+ {
+ "value": "basic",
+ "description": "Use a basic Load Balancer with limited functionality."
+ }
+ ]
+ },
+ "title": "The load balancer sku for the managed cluster.",
+ "description": "The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs."
+ },
+ "SnapshotType": {
+ "type": "string",
+ "default": "NodePool",
+ "enum": [
+ "NodePool",
+ "ManagedCluster"
+ ],
+ "x-ms-enum": {
+ "name": "SnapshotType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "NodePool",
+ "description": "The snapshot is a snapshot of a node pool."
+ },
+ {
+ "value": "ManagedCluster",
+ "description": "The snapshot is a snapshot of a managed cluster."
+ }
+ ]
+ },
+ "description": "The type of a snapshot. The default is NodePool."
+ },
+ "CapacityReservationGroupID": {
+ "description": "Capacity Reservation Group ID for AgentPool to associate",
+ "type": "string"
+ },
+ "TrustedAccessRoleRule": {
+ "type": "object",
+ "description": "Rule for trusted access role",
+ "properties": {
+ "verbs": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "List of allowed verbs"
+ },
+ "apiGroups": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "List of allowed apiGroups"
+ },
+ "resources": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "List of allowed resources"
+ },
+ "resourceNames": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "List of allowed names"
+ },
+ "nonResourceURLs": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ },
+ "description": "List of allowed nonResourceURLs"
+ }
+ }
+ },
+ "TrustedAccessRole": {
+ "type": "object",
+ "description": "Trusted access role definition.",
+ "properties": {
+ "sourceResourceType": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Resource type of Azure resource"
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Name of role, name is unique under a source resource type"
+ },
+ "rules": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/TrustedAccessRoleRule"
+ },
+ "x-ms-identifiers": [],
+ "description": "List of rules for the role. This maps to 'rules' property of [Kubernetes Cluster Role](https://kubernetes.io/docs/reference/kubernetes-api/authorization-resources/cluster-role-v1/#ClusterRole)."
+ }
+ }
+ },
+ "TrustedAccessRoleListResult": {
+ "type": "object",
+ "description": "List of trusted access roles",
+ "properties": {
+ "value": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/TrustedAccessRole"
+ },
+ "x-ms-identifiers": [
+ "sourceResourceType",
+ "name"
+ ],
+ "description": "Role list"
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TrustedAccessRoleBindingProperties": {
+ "type": "object",
+ "description": "Properties for trusted access role binding",
+ "required": [
+ "sourceResourceId",
+ "roles"
+ ],
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state of trusted access role binding.",
+ "enum": [
+ "Canceled",
+ "Deleting",
+ "Failed",
+ "Succeeded",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "name": "TrustedAccessRoleBindingProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "sourceResourceId": {
+ "type": "string",
+ "description": "The ARM resource ID of source resource that trusted access is configured for."
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of roles to bind, each item is a resource type qualified role name. For example: 'Microsoft.MachineLearningServices/workspaces/reader'."
+ }
+ }
+ },
+ "TrustedAccessRoleBinding": {
+ "type": "object",
+ "description": "Defines binding between a resource and role",
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TrustedAccessRoleBindingProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TrustedAccessRoleBindingListResult": {
+ "type": "object",
+ "description": "List of trusted access role bindings",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TrustedAccessRoleBinding"
+ },
+ "description": "Role binding list"
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedClusterWorkloadAutoScalerProfile": {
+ "type": "object",
+ "description": "Workload Auto-scaler profile for the managed cluster.",
+ "properties": {
+ "keda": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfileKeda"
+ },
+ "verticalPodAutoscaler": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler"
+ }
+ }
+ },
+ "ManagedClusterWorkloadAutoScalerProfileKeda": {
+ "type": "object",
+ "description": "KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable KEDA."
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable VPA. Default value is false.",
+ "default": false
+ },
+ "controlledValues": {
+ "type": "string",
+ "enum": [
+ "RequestsAndLimits",
+ "RequestsOnly"
+ ],
+ "x-ms-enum": {
+ "name": "ControlledValues",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "RequestsAndLimits",
+ "description": "Autoscaler will control resource requests and limits."
+ },
+ {
+ "value": "RequestsOnly",
+ "description": "Autoscaler will control resource requests only."
+ }
+ ]
+ },
+ "default": "RequestsAndLimits",
+ "description": "Controls which resource value autoscaler will change. Default value is RequestsAndLimits."
+ },
+ "updateMode": {
+ "type": "string",
+ "enum": [
+ "Off",
+ "Initial",
+ "Recreate",
+ "Auto"
+ ],
+ "x-ms-enum": {
+ "name": "UpdateMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Off",
+ "description": "Autoscaler never changes pod resources but provides recommendations."
+ },
+ {
+ "value": "Initial",
+ "description": "Autoscaler only assigns resources on pod creation and doesn't change them during the lifetime of the pod."
+ },
+ {
+ "value": "Recreate",
+ "description": "Autoscaler assigns resources on pod creation and updates pods that need further scaling during their lifetime by deleting and recreating."
+ },
+ {
+ "value": "Auto",
+ "description": "Autoscaler chooses the update mode. Autoscaler currently does the same as Recreate. In the future, it may take advantage of restart-free mechanisms once they are available."
+ }
+ ]
+ },
+ "default": "Off",
+ "title": "The update mode of the autoscaler.",
+ "description": "Each update mode level is a superset of the lower levels. Off`.
+
+``` yaml $(tag) == 'package-2023-07' && $(java) && $(multiapi)
+java:
+ namespace: com.microsoft.azure.management.containerservice.v2023_07_01
+ output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2023_07_01
+regenerate-manager: true
+generate-interface: true
+```
+
+### Tag: package-2023-06 and java
+
+These settings apply only when `--tag=package-2023-06` is specified on the command line.
+Please also specify `--azure-libraries-for-java-folder=`.
+
+``` yaml $(tag) == 'package-2023-06' && $(java) && $(multiapi)
+java:
+ namespace: com.microsoft.azure.management.containerservice.v2023_06_01
+ output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2023_06_01
+regenerate-manager: true
+generate-interface: true
+```
+
+### Tag: package-preview-2023-06 and java
+
+These settings apply only when `--tag=package-preview-2023-06` is specified on the command line.
+Please also specify `--azure-libraries-for-java-folder=`.
+
+``` yaml $(tag) == 'package-preview-2023-06' && $(java) && $(multiapi)
+java:
+ namespace: com.microsoft.azure.management.containerservice.v2023_06_02_preview
+ output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2023_06_02_preview
+regenerate-manager: true
+generate-interface: true
```
### Tag: package-2023-05 and java
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.md b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.md
index a1489c474b86..01b0e483ca7f 100644
--- a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.md
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.md
@@ -34,7 +34,34 @@ These are the global settings for the ContainerServices API.
``` yaml
openapi-type: arm
-tag: package-2023-05
+tag: package-2023-07
+```
+
+
+### Tag: package-2023-07
+
+These settings apply only when `--tag=package-2023-07` is specified on the command line.
+
+```yaml $(tag) == 'package-2023-07'
+input-file:
+ - stable/2023-07-01/managedClusters.json
+```
+### Tag: package-2023-06
+
+These settings apply only when `--tag=package-2023-06` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-06'
+input-file:
+ - stable/2023-06-01/managedClusters.json
+```
+
+### Tag: package-preview-2023-06
+
+These settings apply only when `--tag=package-preview-2023-06` is specified on the command line.
+
+``` yaml $(tag) == 'package-preview-2023-06'
+input-file:
+ - preview/2023-06-02-preview/managedClusters.json
```
### Tag: package-2023-05
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.python.md b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.python.md
index d314bb278823..df209539d55f 100644
--- a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.python.md
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.python.md
@@ -16,9 +16,12 @@ no-namespace-folders: true
Generate all API versions currently shipped for this package
```yaml $(python)
-default-api-version: "2023-05-01"
+default-api-version: "2023-07-01"
multiapi: true
batch:
+ - tag: package-2023-07
+ - tag: package-2023-06
+ - tag: package-preview-2023-06
- tag: package-2023-05
- tag: package-preview-2023-05
- tag: package-2023-04
@@ -85,6 +88,37 @@ batch:
``` yaml $(multiapiscript)
output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/
perform-load: false
+clear-output-folder: false
+```
+
+### Tag: package-2023-07 and python
+
+These settings apply only when `--tag=package-2023-07 --python` is specified on the command line.
+Please also specify `--python-sdks-folder=`.
+
+``` yaml $(tag) == 'package-2023-07' && $(python)
+namespace: azure.mgmt.containerservice.v2023_07_01
+output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_07_01
+```
+
+### Tag: package-2023-06 and python
+
+These settings apply only when `--tag=package-2023-06 --python` is specified on the command line.
+Please also specify `--python-sdks-folder=`.
+
+``` yaml $(tag) == 'package-2023-06' && $(python)
+namespace: azure.mgmt.containerservice.v2023_06_01
+output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_06_01
+```
+
+### Tag: package-preview-2023-06 and python
+
+These settings apply only when `--tag=package-preview-2023-06 --python` is specified on the command line.
+Please also specify `--python-sdks-folder=`.
+
+``` yaml $(tag) == 'package-preview-2023-06' && $(python)
+namespace: azure.mgmt.containerservice.v2023_06_02_preview
+output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_06_02_preview
```
### Tag: package-2023-05 and python
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsAbortOperation.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsAbortOperation.json
new file mode 100644
index 000000000000..b8a5e60f3008
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsAbortOperation.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operations/00000000-0000-0000-0000-000000000000?api-version=2023-06-01",
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2023-06-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_CustomNodeConfig.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_CustomNodeConfig.json
new file mode 100644
index 000000000000..044644b34049
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_CustomNodeConfig.json
@@ -0,0 +1,124 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_DedicatedHostGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_DedicatedHostGroup.json
new file mode 100644
index 000000000000..ab0a57c04ca2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_DedicatedHostGroup.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json
new file mode 100644
index 000000000000..6dea3ea5cf26
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableFIPS.json
new file mode 100644
index 000000000000..96dbd570df08
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableFIPS.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableUltraSSD.json
new file mode 100644
index 000000000000..d7443d942196
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_EnableUltraSSD.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Ephemeral.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Ephemeral.json
new file mode 100644
index 000000000000..d3122965359f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Ephemeral.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "osDiskSizeGB": 64
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "osDiskSizeGB": 64
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "kubeletDiskType": "OS",
+ "osDiskSizeGB": 64
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_GPUMIG.json
new file mode 100644
index 000000000000..6bd1da8f3bd3
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_GPUMIG.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_OSSKU.json
new file mode 100644
index 000000000000..412e8bd1b6c0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_OSSKU.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_PPG.json
new file mode 100644
index 000000000000..4d9d57e1cf81
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_PPG.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Snapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Snapshot.json
new file mode 100644
index 000000000000..9e309d8b0c0f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Snapshot.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Spot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Spot.json
new file mode 100644
index 000000000000..151dac03145d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Spot.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "spotMaxPrice": -1
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "spotMaxPrice": -1
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Update.json
new file mode 100644
index 000000000000..af0ffdf0e3d4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_Update.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_WasmWasi.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_WasmWasi.json
new file mode 100644
index 000000000000..0cc7e47da579
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_WasmWasi.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_WindowsOSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_WindowsOSSKU.json
new file mode 100644
index 000000000000..4748f1b74478
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsCreate_WindowsOSSKU.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "wnp2",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.23.3",
+ "currentOrchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.23.3",
+ "currentOrchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsDelete.json
new file mode 100644
index 000000000000..8d77653b8565
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGet.json
new file mode 100644
index 000000000000..bab09bc5fc38
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGet.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json
new file mode 100644
index 000000000000..ca2444c01971
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/availableagentpoolversions",
+ "name": "default",
+ "properties": {
+ "agentPoolVersions": [
+ {
+ "kubernetesVersion": "1.12.7"
+ },
+ {
+ "kubernetesVersion": "1.12.8"
+ },
+ {
+ "default": true,
+ "kubernetesVersion": "1.13.5",
+ "isPreview": true
+ }
+ ]
+ },
+ "type": "Microsoft.ContainerService/managedClusters/availableAgentpoolVersions"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGetUpgradeProfile.json
new file mode 100644
index 000000000000..529fab5d2272
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsGetUpgradeProfile.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1/upgradeprofiles/default",
+ "name": "default",
+ "properties": {
+ "kubernetesVersion": "1.12.8",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.13.5"
+ }
+ ],
+ "latestNodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ },
+ "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsList.json
new file mode 100644
index 000000000000..670f75075041
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsUpgradeNodeImageVersion.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsUpgradeNodeImageVersion.json
new file mode 100644
index 000000000000..a143484c75b1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPoolsUpgradeNodeImageVersion.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ContainerService/locations/westus/operations/00000000-0000-0000-0000-000000000000?api-version=2018-07-31"
+ },
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "UpgradingNodeImageVersion",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu-1604-2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Start.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Start.json
new file mode 100644
index 000000000000..dc55235c728e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Start.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Starting",
+ "count": 50,
+ "enableAutoScaling": true,
+ "minCount": 3,
+ "maxCount": 55,
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Starting",
+ "count": 50,
+ "enableAutoScaling": true,
+ "minCount": 3,
+ "maxCount": 55,
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Stop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Stop.json
new file mode 100644
index 000000000000..8b3cc71d47f9
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Stop.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Stopping",
+ "count": 0,
+ "enableAutoScaling": false,
+ "minCount": null,
+ "maxCount": null,
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Stopping",
+ "count": 0,
+ "enableAutoScaling": false,
+ "minCount": null,
+ "maxCount": null,
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Update.json
new file mode 100644
index 000000000000..b472647dd4d5
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/AgentPools_Update.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Updating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ContainerServiceGetOSOptions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ContainerServiceGetOSOptions.json
new file mode 100644
index 000000000000..154741095858
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ContainerServiceGetOSOptions.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/osOptions/default",
+ "name": "default",
+ "type": "Microsoft.ContainerService/locations/osOptions",
+ "properties": {
+ "osOptionPropertyList": [
+ {
+ "os-type": "Linux",
+ "enable-fips-image": false
+ },
+ {
+ "os-type": "Windows",
+ "enable-fips-image": false
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/KubernetesVersions_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/KubernetesVersions_List.json
new file mode 100644
index 000000000000..84e256ac335d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/KubernetesVersions_List.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "values": [
+ {
+ "version": "1.23",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.23.12": {
+ "upgrades": [
+ "1.23.15",
+ "1.24.6",
+ "1.24.9"
+ ]
+ },
+ "1.23.15": {
+ "upgrades": [
+ "1.24.6",
+ "1.24.9"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.24",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.24.6": {
+ "upgrades": [
+ "1.24.9",
+ "1.25.4",
+ "1.25.5"
+ ]
+ },
+ "1.24.9": {
+ "upgrades": [
+ "1.25.4",
+ "1.25.5"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.25",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.25.4": {
+ "upgrades": [
+ "1.25.5",
+ "1.26.0"
+ ]
+ },
+ "1.25.5": {
+ "upgrades": [
+ "1.26.0"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.26",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.26.0": {
+ "upgrades": []
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsCreate_Update.json
new file mode 100644
index 000000000000..298000b82b3d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsCreate_Update.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default",
+ "parameters": {
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json
new file mode 100644
index 000000000000..7cbce61e26da
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedAutoUpgradeSchedule",
+ "parameters": {
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "relativeMonthly": {
+ "intervalMonths": 3,
+ "weekIndex": "First",
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "weekly": {
+ "intervalWeeks": 3,
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "weekly": {
+ "intervalWeeks": 3,
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsDelete.json
new file mode 100644
index 000000000000..7f14c3546776
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsDelete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json
new file mode 100644
index 000000000000..c2d8240ea44b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedNodeOSUpgradeSchedule"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsGet.json
new file mode 100644
index 000000000000..79cdd936fdad
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsGet.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json
new file mode 100644
index 000000000000..55392f26959d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedNodeOSUpgradeSchedule"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedNodeOSUpgradeSchedule",
+ "name": "aksManagedNodeOSUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "daily": {
+ "intervalDays": 3
+ }
+ },
+ "durationHours": 4,
+ "utcOffset": "-07:00",
+ "startDate": "2023-01-01",
+ "startTime": "09:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsList.json
new file mode 100644
index 000000000000..c6a63102c965
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsList.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "default",
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsList_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsList_MaintenanceWindow.json
new file mode 100644
index 000000000000..5c85b58e9537
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/MaintenanceConfigurationsList_MaintenanceWindow.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedNodeOSUpgradeSchedule",
+ "name": "aksManagedNodeOSUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "daily": {
+ "intervalDays": 5
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "-07:00",
+ "startDate": "2023-01-01",
+ "startTime": "13:30"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "absoluteMonthly": {
+ "intervalMonths": 3,
+ "dayOfMonth": 15
+ }
+ },
+ "durationHours": 5,
+ "utcOffset": "+00:00",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersAbortOperation.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersAbortOperation.json
new file mode 100644
index 000000000000..0cdfa99dca7d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersAbortOperation.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operations/00000000-0000-0000-0000-000000000000?api-version=2023-06-01",
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2023-06-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json
new file mode 100644
index 000000000000..15a964b0a1ae
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json
@@ -0,0 +1,259 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DedicatedHostGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DedicatedHostGroup.json
new file mode 100644
index 000000000000..393fa24ecd60
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DedicatedHostGroup.json
@@ -0,0 +1,249 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DisableRunCommand.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DisableRunCommand.json
new file mode 100644
index 000000000000..464fc1580dc5
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DisableRunCommand.json
@@ -0,0 +1,267 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "KubernetesOfficial"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "KubernetesOfficial"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DualStackNetworking.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DualStackNetworking.json
new file mode 100644
index 000000000000..0156847c1bdf
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_DualStackNetworking.json
@@ -0,0 +1,323 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ },
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ]
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.22.1",
+ "currentKubernetesVersion": "1.22.1",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.22.1",
+ "currentOrchestratorVersion": "1.22.1",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16",
+ "fd11:1234::/64"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16",
+ "fd00:1234::/108"
+ ],
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2,
+ "countIPv6": 1
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip3-ipv6"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.22.1",
+ "currentKubernetesVersion": "1.22.1",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.22.1",
+ "currentOrchestratorVersion": "1.22.1",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16",
+ "fd11:1234::/64"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16",
+ "fd00:1234::/108"
+ ],
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2,
+ "countIPv6": 1
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip3-ipv6"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json
new file mode 100644
index 000000000000..5397aad2bfed
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnableUltraSSD.json
new file mode 100644
index 000000000000..b9d18ca1e31b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnableUltraSSD.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnabledFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnabledFIPS.json
new file mode 100644
index 000000000000..690e02a78096
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_EnabledFIPS.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_GPUMIG.json
new file mode 100644
index 000000000000..b3079b7b89c5
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_GPUMIG.json
@@ -0,0 +1,283 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_HTTPProxy.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_HTTPProxy.json
new file mode 100644
index 000000000000..12010d2d21b9
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_HTTPProxy.json
@@ -0,0 +1,280 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_ManagedNATGateway.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_ManagedNATGateway.json
new file mode 100644
index 000000000000..80756d2aa0f3
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_ManagedNATGateway.json
@@ -0,0 +1,233 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "managedOutboundIPProfile": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "idleTimeoutInMinutes": 4,
+ "managedOutboundIPProfile": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "idleTimeoutInMinutes": 4,
+ "managedOutboundIPProfile": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json
new file mode 100644
index 000000000000..ad8689f7e914
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_OSSKU.json
new file mode 100644
index 000000000000..9c4bc6f13eff
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_OSSKU.json
@@ -0,0 +1,283 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PPG.json
new file mode 100644
index 000000000000..a09a56896b8c
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PPG.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PodIdentity.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PodIdentity.json
new file mode 100644
index 000000000000..24c34b881c77
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PodIdentity.json
@@ -0,0 +1,265 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Premium.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Premium.json
new file mode 100644
index 000000000000..d1f64118ed17
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Premium.json
@@ -0,0 +1,274 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json
new file mode 100644
index 000000000000..cb369025732e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json
@@ -0,0 +1,266 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "privateFQDN": "domain1.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "privateFQDN": "domain1.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json
new file mode 100644
index 000000000000..dad071226386
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json
@@ -0,0 +1,270 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true,
+ "privateDNSZone": "system"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true,
+ "privateDNSZone": "system"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_SecurityProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_SecurityProfile.json
new file mode 100644
index 000000000000..681863c17917
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_SecurityProfile.json
@@ -0,0 +1,262 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ },
+ "workloadIdentity": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ },
+ "workloadIdentity": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ },
+ "workloadIdentity": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Snapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Snapshot.json
new file mode 100644
index 000000000000..c6c4f5cdec0c
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Snapshot.json
@@ -0,0 +1,265 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Update.json
new file mode 100644
index 000000000000..049ec79822f2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_Update.json
@@ -0,0 +1,305 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWindowsGmsa.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWindowsGmsa.json
new file mode 100644
index 000000000000..11f4c7cbe7f4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWindowsGmsa.json
@@ -0,0 +1,301 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWithAHUB.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWithAHUB.json
new file mode 100644
index 000000000000..bd09fd1a16c2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWithAHUB.json
@@ -0,0 +1,295 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json
new file mode 100644
index 000000000000..47b9a2349277
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json
@@ -0,0 +1,284 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "aadProfile": {
+ "managed": true,
+ "enableAzureRBAC": true
+ },
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "aadProfile": {
+ "managed": true,
+ "adminGroupObjectIDs": null,
+ "enableAzureRBAC": true,
+ "tenantID": "tenantID"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "aadProfile": {
+ "managed": true,
+ "adminGroupObjectIDs": null,
+ "enableAzureRBAC": true,
+ "tenantID": "tenantID"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UserAssignedNATGateway.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UserAssignedNATGateway.json
new file mode 100644
index 000000000000..fb6491cb4e7e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersCreate_UserAssignedNATGateway.json
@@ -0,0 +1,200 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersDelete.json
new file mode 100644
index 000000000000..d675ee857f8b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersDelete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGet.json
new file mode 100644
index 000000000000..81bae5e26403
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGet.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "azurePortalFQDN": "dnsprefix1-abcd1234.portal.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "outboundIPs": {
+ "publicIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip2"
+ }
+ ]
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGetAccessProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGetAccessProfile.json
new file mode 100644
index 000000000000..3614ad25173a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGetAccessProfile.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "roleName": "clusterUser"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser",
+ "location": "location1",
+ "name": "clusterUser",
+ "properties": {
+ "kubeConfig": "a3ViZUNvbmZpZzE="
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGetUpgradeProfile.json
new file mode 100644
index 000000000000..f0a6c634fa33
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersGetUpgradeProfile.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default",
+ "name": "default",
+ "properties": {
+ "agentPoolProfiles": [
+ {
+ "kubernetesVersion": "1.7.7",
+ "name": "agent",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.7.9"
+ },
+ {
+ "kubernetesVersion": "1.7.11",
+ "isPreview": true
+ }
+ ]
+ }
+ ],
+ "controlPlaneProfile": {
+ "kubernetesVersion": "1.7.7",
+ "name": "master",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.7.9",
+ "isPreview": true
+ },
+ {
+ "kubernetesVersion": "1.7.11"
+ }
+ ]
+ }
+ },
+ "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersList.json
new file mode 100644
index 000000000000..5a7d0927059d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersList.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "maxAgentPools": 1,
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListByResourceGroup.json
new file mode 100644
index 000000000000..4cd908957517
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListByResourceGroup.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "maxAgentPools": 1,
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterAdminCredentials.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterAdminCredentials.json
new file mode 100644
index 000000000000..8cb5062fd5f6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterAdminCredentials.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterMonitoringUserCredentials.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterMonitoringUserCredentials.json
new file mode 100644
index 000000000000..8cb5062fd5f6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterMonitoringUserCredentials.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterUserCredentials.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterUserCredentials.json
new file mode 100644
index 000000000000..8cb5062fd5f6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersListClusterUserCredentials.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersResetAADProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersResetAADProfile.json
new file mode 100644
index 000000000000..0af8433551c6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersResetAADProfile.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "clientAppID": "clientappid",
+ "serverAppID": "serverappid",
+ "serverAppSecret": "serverappsecret",
+ "tenantID": "tenantid"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersResetServicePrincipalProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersResetServicePrincipalProfile.json
new file mode 100644
index 000000000000..9975fe0460e3
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersResetServicePrincipalProfile.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "clientId": "clientid",
+ "secret": "secret"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersRotateClusterCertificates.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersRotateClusterCertificates.json
new file mode 100644
index 000000000000..d675ee857f8b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersRotateClusterCertificates.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersRotateServiceAccountSigningKeys.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersRotateServiceAccountSigningKeys.json
new file mode 100644
index 000000000000..d675ee857f8b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersRotateServiceAccountSigningKeys.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersStart.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersStart.json
new file mode 100644
index 000000000000..d675ee857f8b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersStart.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersStop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersStop.json
new file mode 100644
index 000000000000..d675ee857f8b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersStop.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersUpdateTags.json
new file mode 100644
index 000000000000..983ce35f1827
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ManagedClustersUpdateTags.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "tags": {
+ "tier": "testing",
+ "archv3": ""
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv3": "",
+ "tier": "testing"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/Operation_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/Operation_List.json
new file mode 100644
index 000000000000..05b77fba4f4a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/Operation_List.json
@@ -0,0 +1,3583 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "display": {
+ "description": "Gets the status of an asynchronous operation",
+ "operation": "Get Operation",
+ "provider": "Microsoft Container Service",
+ "resource": "Operation"
+ },
+ "name": "Microsoft.ContainerService/locations/operations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Lists the supported orchestrators",
+ "operation": "List Orchestrators",
+ "provider": "Microsoft Container Service",
+ "resource": "Orchestrator"
+ },
+ "name": "Microsoft.ContainerService/locations/orchestrators/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets OS options",
+ "operation": "Get OS Options",
+ "provider": "Microsoft Container Service",
+ "resource": "OSOptions"
+ },
+ "name": "Microsoft.ContainerService/locations/osOptions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Lists operations available on Microsoft.ContainerService resource provider",
+ "operation": "List Available Container Service Operations",
+ "provider": "Microsoft Container Service",
+ "resource": "Available Container Service Operations"
+ },
+ "name": "Microsoft.ContainerService/operations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Registers Subscription with Microsoft.ContainerService resource provider",
+ "operation": "Register Subscription for Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Service Register Subscription"
+ },
+ "name": "Microsoft.ContainerService/register/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Unregisters Subscription with Microsoft.ContainerService resource provider",
+ "operation": "Unregister Subscription for Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Service Unregister Subscription"
+ },
+ "name": "Microsoft.ContainerService/unregister/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the status of an asynchronous operation result",
+ "operation": "Get Operation Result",
+ "provider": "Microsoft Container Service",
+ "resource": "OperationResult"
+ },
+ "name": "Microsoft.ContainerService/locations/operationresults/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a container service",
+ "operation": "Get Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new container service or updates an existing one",
+ "operation": "Create or Update Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a container service",
+ "operation": "Delete Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster",
+ "operation": "Get Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new managed cluster or updates an existing one",
+ "operation": "Create or Update Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a managed cluster",
+ "operation": "Delete Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Starts a managed cluster",
+ "operation": "Start Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/start/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Stops a managed cluster",
+ "operation": "Stop Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/stop/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets a maintenance configuration",
+ "operation": "Get a maintenance configuration",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new MaintenanceConfiguration or updates an existing one",
+ "operation": "Create or Update maintenance configuratio",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a maintenance configuration",
+ "operation": "Delete Maintenance Configuration",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets an agent pool",
+ "operation": "Get Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new agent pool or updates an existing one",
+ "operation": "Create or Update Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes an agent pool",
+ "operation": "Delete Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the upgrade profile of the Agent Pool",
+ "operation": "Get Agent Pool UpgradeProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Upgrade the node image version of agent pool",
+ "operation": "Upgrade agent pool node image version",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/upgradeNodeImageVersion/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the available agent pool versions of the cluster",
+ "operation": "Get Available Agent Pool Versions",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/availableAgentPoolVersions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster access profile by role name",
+ "operation": "Get Managed Cluster AccessProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/accessProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster access profile by role name using list credential",
+ "operation": "Get Managed Cluster AccessProfile by List Credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/accessProfiles/listCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the upgrade profile of the cluster",
+ "operation": "Get UpgradeProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "UpgradeProfile"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/upgradeProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterAdmin credential of a managed cluster",
+ "operation": "List clusterAdmin credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterAdminCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterUser credential of a managed cluster",
+ "operation": "List clusterUser credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterUserCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterMonitoringUser credential of a managed cluster",
+ "operation": "List clusterMonitoringUser credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterMonitoringUserCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reset the service principal profile of a managed cluster",
+ "operation": "Reset service principal profile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetServicePrincipalProfile/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Resolve the private link service id of a managed cluster",
+ "operation": "Resolve private link service id",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resolvePrivateLinkServiceId/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reset the AAD profile of a managed cluster",
+ "operation": "Reset AAD profile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetAADProfile/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Rotate certificates of a managed cluster",
+ "operation": "Rotate certificates of the cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rotateClusterCertificates/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Run user issued command against managed kubernetes server.",
+ "operation": "RunCommand",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/runCommand/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Retrieve result from previous issued command.",
+ "operation": "CommandResult",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/commandResults/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get the diagnostic setting for a managed cluster resource",
+ "operation": "Read Diagnostic Setting",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/diagnosticSettings/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Creates or updates the diagnostic setting for a managed cluster resource",
+ "operation": "Write Diagnostic Setting",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/diagnosticSettings/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get Managed Cluster Detector",
+ "operation": "Get Managed Cluster Detector",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Cluster Detector"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/detectors/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the diagnostics state of the cluster",
+ "operation": "Get Diagnostics State",
+ "provider": "Microsoft Container Service",
+ "resource": "Diagnostics State"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/diagnosticsState/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Determines if user is allowed to approve a private endpoint connection",
+ "operation": "Approve Private Endpoint Connections",
+ "provider": "Microsoft Container Service",
+ "resource": "Approve Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnectionsApproval/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get private endpoint connection",
+ "operation": "Get private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Approve or Reject a private endpoint connection",
+ "operation": "Update private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete private endpoint connection",
+ "operation": "Delete private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets an extension addon",
+ "operation": "Get an extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Creates a new extension addon or updates an existing one",
+ "operation": "Create or Update extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Deletes an extension addon",
+ "operation": "Delete an extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/delete",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get a snapshot",
+ "operation": "Get Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new snapshot",
+ "operation": "Create Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a snapshot",
+ "operation": "Delete Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get eventgrid filter",
+ "operation": "Get eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Create or Update eventgrid filter",
+ "operation": "Create or Update eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Delete an eventgrid filter",
+ "operation": "Delete an eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/delete",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Reads initializerconfigurations",
+ "operation": "Gets/List initializerconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes initializerconfigurations",
+ "operation": "Creates/Updates initializerconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes/DeletesCollection initializerconfigurations resource",
+ "operation": "Initializerconfigurations",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads mutatingwebhookconfigurations",
+ "operation": "Gets/List mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes mutatingwebhookconfigurations",
+ "operation": "Creates/Updates mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes mutatingwebhookconfigurations",
+ "operation": "Deletes/DeletesCollection mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads validatingwebhookconfigurations",
+ "operation": "Gets/List validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes validatingwebhookconfigurations",
+ "operation": "Creates/Updates validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes validatingwebhookconfigurations",
+ "operation": "Deletes/DeletesCollection validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads customresourcedefinitions",
+ "operation": "Gets/List customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes customresourcedefinitions",
+ "operation": "Creates/Updates customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes customresourcedefinitions",
+ "operation": "Deletes/DeletesCollection customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservices",
+ "operation": "Gets/List apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes apiservices",
+ "operation": "Creates/Updates apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes apiservices",
+ "operation": "Deletes/DeletesCollection apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads controllerrevisions",
+ "operation": "Gets/List controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes controllerrevisions",
+ "operation": "Creates/Updates controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes controllerrevisions",
+ "operation": "Deletes/DeletesCollection controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads daemonsets",
+ "operation": "Gets/List daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes daemonsets",
+ "operation": "Creates/Updates daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes daemonsets",
+ "operation": "Deletes/DeletesCollection daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads deployments",
+ "operation": "Gets/List deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes deployments",
+ "operation": "Creates/Updates deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes deployments",
+ "operation": "Deletes/DeletesCollection deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicasets",
+ "operation": "Gets/List replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicasets",
+ "operation": "Creates/Updates replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicasets",
+ "operation": "Deletes/DeletesCollection replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads statefulsets",
+ "operation": "Gets/List statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes statefulsets",
+ "operation": "Creates/Updates statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes statefulsets",
+ "operation": "Deletes/DeletesCollection statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes tokenreviews",
+ "operation": "Creates/Updates tokenreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Tokenreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authentication.k8s.io/tokenreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes localsubjectaccessreviews",
+ "operation": "Creates/Updates localsubjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Localsubjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/localsubjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes selfsubjectaccessreviews",
+ "operation": "Creates/Updates selfsubjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Selfsubjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/selfsubjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes selfsubjectrulesreviews",
+ "operation": "Creates/Updates selfsubjectrulesreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Selfsubjectrulesreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/selfsubjectrulesreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes subjectaccessreviews",
+ "operation": "Creates/Updates subjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Subjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/subjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads horizontalpodautoscalers",
+ "operation": "Gets/List horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes horizontalpodautoscalers",
+ "operation": "Creates/Updates horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes horizontalpodautoscalers",
+ "operation": "Deletes/DeletesCollection horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads cronjobs",
+ "operation": "Gets/List cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes cronjobs",
+ "operation": "Creates/Updates cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes cronjobs",
+ "operation": "Deletes/DeletesCollection cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads jobs",
+ "operation": "Gets/List jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes jobs",
+ "operation": "Creates/Updates jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes jobs",
+ "operation": "Deletes/DeletesCollection jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificatesigningrequests",
+ "operation": "Gets/List certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes certificatesigningrequests",
+ "operation": "Creates/Updates certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes certificatesigningrequests",
+ "operation": "Deletes/DeletesCollection certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads leases",
+ "operation": "Gets/List leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes leases",
+ "operation": "Creates/Updates leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes leases",
+ "operation": "Deletes/DeletesCollection leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes bindings",
+ "operation": "Creates/Updates bindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Bindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/bindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads componentstatuses",
+ "operation": "Gets/List componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes componentstatuses",
+ "operation": "Creates/Updates componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes componentstatuses",
+ "operation": "Deletes/DeletesCollection componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads configmaps",
+ "operation": "Gets/List configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes configmaps",
+ "operation": "Creates/Updates configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes configmaps",
+ "operation": "Deletes/DeletesCollection configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads endpoints",
+ "operation": "Gets/List endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes endpoints",
+ "operation": "Creates/Updates endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes endpoints",
+ "operation": "Deletes/DeletesCollection endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events",
+ "operation": "Gets/List events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes events",
+ "operation": "Creates/Updates events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes events",
+ "operation": "Deletes/DeletesCollection events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads limitranges",
+ "operation": "Gets/List limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes limitranges",
+ "operation": "Creates/Updates limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes limitranges",
+ "operation": "Deletes/DeletesCollection limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads namespaces",
+ "operation": "Gets/List namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes namespaces",
+ "operation": "Creates/Updates namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes namespaces",
+ "operation": "Deletes/DeletesCollection namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads nodes",
+ "operation": "Gets/List nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes nodes",
+ "operation": "Creates/Updates nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes nodes",
+ "operation": "Deletes/DeletesCollection nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads persistentvolumeclaims",
+ "operation": "Gets/List persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes persistentvolumeclaims",
+ "operation": "Creates/Updates persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes persistentvolumeclaims",
+ "operation": "Deletes/DeletesCollection persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads persistentvolumes",
+ "operation": "Gets/List persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes persistentvolumes",
+ "operation": "Creates/Updates persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes persistentvolumes",
+ "operation": "Deletes/DeletesCollection persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads pods",
+ "operation": "Gets/List pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes pods",
+ "operation": "Creates/Updates pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes pods",
+ "operation": "Deletes/DeletesCollection pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Exec into pods resource",
+ "operation": "Exec into pods resource ",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/exec/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podtemplates",
+ "operation": "Gets/List podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podtemplates",
+ "operation": "Creates/Updates podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podtemplates",
+ "operation": "Deletes/DeletesCollection podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicationcontrollers",
+ "operation": "Gets/List replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicationcontrollers",
+ "operation": "Creates/Updates replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicationcontrollers",
+ "operation": "Deletes/DeletesCollection replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads resourcequotas",
+ "operation": "Gets/List resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes resourcequotas",
+ "operation": "Creates/Updates resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes resourcequotas",
+ "operation": "Deletes/DeletesCollection resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads secrets",
+ "operation": "Gets/List secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes secrets",
+ "operation": "Creates/Updates secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes secrets",
+ "operation": "Deletes/DeletesCollection secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads serviceaccounts",
+ "operation": "Gets/List serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes serviceaccounts",
+ "operation": "Creates/Updates serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes serviceaccounts",
+ "operation": "Deletes/DeletesCollection serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads services",
+ "operation": "Gets/List services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes services",
+ "operation": "Creates/Updates services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes services",
+ "operation": "Deletes/DeletesCollection services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events",
+ "operation": "Gets/List events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes events",
+ "operation": "Creates/Updates events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes events",
+ "operation": "Deletes/DeletesCollection events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads daemonsets",
+ "operation": "Gets/List daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes daemonsets",
+ "operation": "Creates/Updates daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes daemonsets",
+ "operation": "Deletes/DeletesCollection daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads deployments",
+ "operation": "Gets/List deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes deployments",
+ "operation": "Creates/Updates deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes deployments",
+ "operation": "Deletes/DeletesCollection deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ingresses",
+ "operation": "Gets/List ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes ingresses",
+ "operation": "Creates/Updates ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes ingresses",
+ "operation": "Deletes/DeletesCollection ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networkpolicies",
+ "operation": "Gets/List networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes networkpolicies",
+ "operation": "Creates/Updates networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes networkpolicies",
+ "operation": "Deletes/DeletesCollection networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podsecuritypolicies",
+ "operation": "Gets/List podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podsecuritypolicies",
+ "operation": "Creates/Updates podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podsecuritypolicies",
+ "operation": "Deletes/DeletesCollection podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicasets",
+ "operation": "Gets/List replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicasets",
+ "operation": "Creates/Updates replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicasets",
+ "operation": "Deletes/DeletesCollection replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads pods",
+ "operation": "Gets/List pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics.k8s.io/pods/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads nodes",
+ "operation": "Gets/List nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics.k8s.io/nodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networkpolicies",
+ "operation": "Gets/List networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes networkpolicies",
+ "operation": "Creates/Updates networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes networkpolicies",
+ "operation": "Deletes/DeletesCollection networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ingresses",
+ "operation": "Gets/List ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes ingresses",
+ "operation": "Creates/Updates ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes ingresses",
+ "operation": "Deletes/DeletesCollection ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads runtimeclasses",
+ "operation": "Gets/List runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes runtimeclasses",
+ "operation": "Creates/Updates runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes runtimeclasses",
+ "operation": "Deletes/DeletesCollection runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads api",
+ "operation": "Gets/List api resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Api"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/api/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads api/v1",
+ "operation": "Gets/List api/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Api/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/api/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apis",
+ "operation": "Gets/List apis resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apis"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io",
+ "operation": "Gets/List admissionregistration.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io/v1",
+ "operation": "Gets/List admissionregistration.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io/v1beta1",
+ "operation": "Gets/List admissionregistration.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io",
+ "operation": "Gets/List apiextensions.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io/v1",
+ "operation": "Gets/List apiextensions.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io/v1beta1",
+ "operation": "Gets/List apiextensions.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io",
+ "operation": "Gets/List apiregistration.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io/v1",
+ "operation": "Gets/List apiregistration.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io/v1beta1",
+ "operation": "Gets/List apiregistration.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps",
+ "operation": "Gets/List apps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1",
+ "operation": "Gets/List apps/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1beta1",
+ "operation": "Gets/List apps/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1beta2",
+ "operation": "Gets/List apps/v1beta2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1beta2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1beta2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io",
+ "operation": "Gets/List authentication.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io/v1",
+ "operation": "Gets/List authentication.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io/v1beta1",
+ "operation": "Gets/List authentication.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io",
+ "operation": "Gets/List authorization.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io/v1",
+ "operation": "Gets/List authorization.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io/v1beta1",
+ "operation": "Gets/List authorization.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling",
+ "operation": "Gets/List autoscaling resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v1",
+ "operation": "Gets/List autoscaling/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v2beta1",
+ "operation": "Gets/List autoscaling/v2beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V2beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v2beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v2beta2",
+ "operation": "Gets/List autoscaling/v2beta2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V2beta2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v2beta2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch",
+ "operation": "Gets/List batch resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch/v1",
+ "operation": "Gets/List batch/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch/v1beta1",
+ "operation": "Gets/List batch/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificates.k8s.io",
+ "operation": "Gets/List certificates.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificates.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/certificates.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificates.k8s.io/v1beta1",
+ "operation": "Gets/List certificates.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificates.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/certificates.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination.k8s.io",
+ "operation": "Gets/List coordination.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination/v1",
+ "operation": "Gets/List coordination/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination.k8s.io/v1beta1",
+ "operation": "Gets/List coordination.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events.k8s.io",
+ "operation": "Gets/List events.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/events.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events.k8s.io/v1beta1",
+ "operation": "Gets/List events.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/events.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads extensions",
+ "operation": "Gets/List extensions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Extensions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/extensions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads extensions/v1beta1",
+ "operation": "Gets/List extensions/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Extensions/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/extensions/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics.k8s.io",
+ "operation": "Gets/List metrics.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/metrics.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics.k8s.io/v1beta1",
+ "operation": "Gets/List metrics.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/metrics.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking.k8s.io",
+ "operation": "Gets/List networking.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking/v1",
+ "operation": "Gets/List networking/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking.k8s.io/v1beta1",
+ "operation": "Gets/List networking.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads node.k8s.io",
+ "operation": "Gets/List node.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Node.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/node.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads node.k8s.io/v1beta1",
+ "operation": "Gets/List node.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Node.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/node.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads policy",
+ "operation": "Gets/List policy resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Policy"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/policy/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads policy/v1beta1",
+ "operation": "Gets/List policy/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Policy/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/policy/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization.k8s.io",
+ "operation": "Gets/List rbac.authorization.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization/v1",
+ "operation": "Gets/List rbac.authorization/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization.k8s.io/v1beta1",
+ "operation": "Gets/List rbac.authorization.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling.k8s.io",
+ "operation": "Gets/List scheduling.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling/v1",
+ "operation": "Gets/List scheduling/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling.k8s.io/v1beta1",
+ "operation": "Gets/List scheduling.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage.k8s.io",
+ "operation": "Gets/List storage.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage/v1",
+ "operation": "Gets/List storage/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage.k8s.io/v1beta1",
+ "operation": "Gets/List storage.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads healthz",
+ "operation": "Gets/List healthz resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads livez",
+ "operation": "Gets/List livez resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads logs",
+ "operation": "Gets/List logs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Logs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/logs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics",
+ "operation": "Gets/List metrics resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads v2",
+ "operation": "Gets/List v2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Openapi/V2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/openapi/v2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads readyz",
+ "operation": "Gets/List readyz resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads shutdown",
+ "operation": "Gets/List shutdown resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Shutdown"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/shutdown/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads resetMetrics",
+ "operation": "Gets/List resetMetrics resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resetmetrics"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetMetrics/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads swagger-ui",
+ "operation": "Gets/List swagger-ui resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Swagger-Ui"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/swagger-ui/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads swagger-api",
+ "operation": "Gets/List swagger-api resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Swagger-Api"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/swagger-api/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ui",
+ "operation": "Gets/List ui resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ui"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/ui/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads version",
+ "operation": "Gets/List version resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Version"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/version/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads poddisruptionbudgets",
+ "operation": "Gets/List poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes poddisruptionbudgets",
+ "operation": "Creates/Updates poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes poddisruptionbudgets",
+ "operation": "Deletes/DeletesCollection poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podsecuritypolicies",
+ "operation": "Gets/List podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podsecuritypolicies",
+ "operation": "Creates/Updates podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podsecuritypolicies",
+ "operation": "Deletes/DeletesCollection podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads clusterrolebindings",
+ "operation": "Gets/List clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes clusterrolebindings",
+ "operation": "Creates/Updates clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes clusterrolebindings",
+ "operation": "Deletes/DeletesCollection clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads clusterroles",
+ "operation": "Gets/List clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes clusterroles",
+ "operation": "Creates/Updates clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes clusterroles",
+ "operation": "Deletes/DeletesCollection clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rolebindings",
+ "operation": "Gets/List rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes rolebindings",
+ "operation": "Creates/Updates rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes rolebindings",
+ "operation": "Deletes/DeletesCollection rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads roles",
+ "operation": "Gets/List roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes roles",
+ "operation": "Creates/Updates roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes roles",
+ "operation": "Deletes/DeletesCollection roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads priorityclasses",
+ "operation": "Gets/List priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes priorityclasses",
+ "operation": "Creates/Updates priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes priorityclasses",
+ "operation": "Deletes/DeletesCollection priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Use action on podsecuritypolicies",
+ "operation": "Use podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/use/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Binds clusterroles",
+ "operation": "Bind clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/bind/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Escalates",
+ "operation": "Escalate clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/escalate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Binds roles",
+ "operation": "Bind roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/bind/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Escalates roles",
+ "operation": "Escalate roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/escalate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate serviceaccounts",
+ "operation": "Impersonate serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate users",
+ "operation": "Impersonate users resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Users"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/users/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate groups",
+ "operation": "Impersonate groups resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Groups"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/groups/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate userextras",
+ "operation": "Impersonate userextras resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Userextras"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authentication.k8s.io/userextras/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storageclasses",
+ "operation": "Gets/List storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes storageclasses",
+ "operation": "Creates/Updates storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes storageclasses",
+ "operation": "Deletes/DeletesCollection storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads volumeattachments",
+ "operation": "Gets/List volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes volumeattachments",
+ "operation": "Creates/Updates volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes volumeattachments",
+ "operation": "Deletes/DeletesCollection volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads csidrivers",
+ "operation": "Gets/List csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes csidrivers",
+ "operation": "Creates/Updates csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes csidrivers",
+ "operation": "Deletes/DeletesCollection csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads csinodes",
+ "operation": "Gets/List csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes csinodes",
+ "operation": "Creates/Updates csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes csinodes",
+ "operation": "Deletes/DeletesCollection csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the available metrics for Managed Cluster",
+ "operation": "Read Managed Cluster metric definitions",
+ "provider": "Microsoft Container Service",
+ "resource": "The metric definition of Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/metricDefinitions/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Gets the available logs for Managed Cluster",
+ "operation": "Read Managed Cluster log definitions",
+ "provider": "Microsoft Container Service",
+ "resource": "The log definition of Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/logDefinitions/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get a Open Shift Managed Cluster",
+ "operation": "Get Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new Open Shift Managed Cluster or updates an existing one",
+ "operation": "Create or Update Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete a Open Shift Managed Cluster",
+ "operation": "Delete Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a Open Shift Cluster",
+ "operation": "Get Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new Open Shift Cluster or updates an existing one",
+ "operation": "Create or Update Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete a Open Shift Cluster",
+ "operation": "Delete Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/delete",
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/OutboundNetworkDependenciesEndpointsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/OutboundNetworkDependenciesEndpointsList.json
new file mode 100644
index 000000000000..1ab8482ddb6b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/OutboundNetworkDependenciesEndpointsList.json
@@ -0,0 +1,242 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "management.azure.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "login.microsoftonline.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "images",
+ "endpoints": [
+ {
+ "domainName": "mcr.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "*.data.mcr.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https",
+ "description": "mcr cdn"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "artifacts",
+ "endpoints": [
+ {
+ "domainName": "packages.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "acs-mirror.azureedge.net",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "time-sync",
+ "endpoints": [
+ {
+ "domainName": "ntp.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 123,
+ "protocol": "UDP"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "ubuntu-optional",
+ "endpoints": [
+ {
+ "domainName": "security.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "azure.archive.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "changelogs.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "gpu",
+ "endpoints": [
+ {
+ "domainName": "nvidia.github.io",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "us.download.nvidia.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "apt.dockerproject.org",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "windows",
+ "endpoints": [
+ {
+ "domainName": "onegetcdn.azureedge.net",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "go.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "*.mp.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "www.msftconnecttest.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "ctldl.windowsupdate.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "apiserver",
+ "endpoints": [
+ {
+ "domainName": "*.azmk8s.io",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "tunnel-classic",
+ "endpoints": [
+ {
+ "domainName": "*.azmk8s.io",
+ "endpointDetails": [
+ {
+ "port": 9000,
+ "protocol": "TCP"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsDelete.json
new file mode 100644
index 000000000000..d2e2fb299841
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsDelete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsGet.json
new file mode 100644
index 000000000000..8031856e2315
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsGet.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsList.json
new file mode 100644
index 000000000000..94fd917a9f1a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsUpdate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsUpdate.json
new file mode 100644
index 000000000000..29b417f57f4a
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateEndpointConnectionsUpdate.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1",
+ "parameters": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateLinkResourcesList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateLinkResourcesList.json
new file mode 100644
index 000000000000..dd341f82da33
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/PrivateLinkResourcesList.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "management",
+ "type": "Microsoft.ContainerService/managedClusters/privateLinkResources",
+ "groupId": "management",
+ "requiredMembers": [
+ "management"
+ ],
+ "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ResolvePrivateLinkServiceId.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ResolvePrivateLinkServiceId.json
new file mode 100644
index 000000000000..9382e68ead31
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/ResolvePrivateLinkServiceId.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "name": "management"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandRequest.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandRequest.json
new file mode 100644
index 000000000000..4b5650e58258
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandRequest.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "requestPayload": {
+ "command": "kubectl apply -f ns.yaml",
+ "context": "",
+ "clusterToken": ""
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-06-01"
+ }
+ },
+ "200": {
+ "description": "to mitigate RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE",
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "succeeded",
+ "exitCode": 0,
+ "startedAt": "2021-02-17T00:28:20Z",
+ "finishedAt": "2021-02-17T00:28:33Z",
+ "logs": "namespace dummy created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandResultFailed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandResultFailed.json
new file mode 100644
index 000000000000..4498ec3f9c59
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandResultFailed.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-06-01"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "failed",
+ "reason": "ImagePullBackoff"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandResultSucceed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandResultSucceed.json
new file mode 100644
index 000000000000..7e7a5ab02cd4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/RunCommandResultSucceed.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-06-01"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "succeeded",
+ "exitCode": 0,
+ "startedAt": "2021-02-17T00:28:20Z",
+ "finishedAt": "2021-02-17T00:28:33Z",
+ "logs": "namespace dummy created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsCreate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsCreate.json
new file mode 100644
index 000000000000..ed42020bd329
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsCreate.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsDelete.json
new file mode 100644
index 000000000000..216154957a72
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsDelete.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsGet.json
new file mode 100644
index 000000000000..f35c99b1cda4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsGet.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsList.json
new file mode 100644
index 000000000000..e39a5f82f1d6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsList.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsListByResourceGroup.json
new file mode 100644
index 000000000000..055a315f53c8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsListByResourceGroup.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsUpdateTags.json
new file mode 100644
index 000000000000..8baf72a2b3a4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/examples/SnapshotsUpdateTags.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-06-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "tags": {
+ "key2": "new-val2",
+ "key3": "val3"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/managedClusters.json
new file mode 100644
index 000000000000..559f49750d63
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-06-01/managedClusters.json
@@ -0,0 +1,6434 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ContainerServiceClient",
+ "description": "The Container Service Client.",
+ "version": "2023-06-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.ContainerService/operations": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "Operations_List",
+ "summary": "Gets a list of operations.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "List available operations for the container service resource provider": {
+ "$ref": "./examples/Operation_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/osOptions/default": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetOSOptions",
+ "summary": "Gets supported OS options in the specified subscription.",
+ "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/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceTypeParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSOptionProfile"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container Service OS Options": {
+ "$ref": "./examples/ContainerServiceGetOSOptions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/kubernetesVersions": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListKubernetesVersions",
+ "summary": "Gets a list of supported Kubernetes versions in the specified subscription.",
+ "description": "Contains extra metadata on the version, including supported patch versions, capabilities, available upgrades, and details on preview status of the 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/LocationParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/KubernetesVersionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Kubernetes Versions": {
+ "$ref": "./examples/KubernetesVersions_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_List",
+ "summary": "Gets a list of managed clusters in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Managed Clusters": {
+ "$ref": "./examples/ManagedClustersList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListByResourceGroup",
+ "summary": "Lists managed clusters in the specified subscription and resource group.",
+ "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": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Get Managed Clusters by Resource Group": {
+ "$ref": "./examples/ManagedClustersListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetUpgradeProfile",
+ "summary": "Gets the upgrade profile of a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Upgrade Profile for Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGetUpgradeProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": {
+ "post": {
+ "deprecated": true,
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetAccessProfile",
+ "summary": "Gets an access profile of a managed cluster.",
+ "description": "**WARNING**: This API will be deprecated. Instead use [ListClusterUserCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusterusercredentials) or [ListClusterAdminCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusteradmincredentials) .",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "roleName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the role for managed cluster accessProfile resource."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterAccessProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGetAccessProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterAdminCredentials",
+ "summary": "Lists the admin credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterAdminCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterUserCredentials",
+ "summary": "Lists the user credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialFormatParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterUserCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterMonitoringUserCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterMonitoringUserCredentials",
+ "summary": "Lists the cluster monitoring user credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterMonitoringUserCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Get",
+ "summary": "Gets a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_CreateOrUpdate",
+ "summary": "Creates or updates a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ },
+ "description": "The managed cluster to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing managed cluster was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "201": {
+ "description": "The new managed cluster was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create/Update Managed Cluster": {
+ "$ref": "./examples/ManagedClustersCreate_Update.json"
+ },
+ "Create/Update AAD Managed Cluster with EnableAzureRBAC": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json"
+ },
+ "Create Managed Cluster with PPG": {
+ "$ref": "./examples/ManagedClustersCreate_PPG.json"
+ },
+ "Create Managed Cluster with OSSKU": {
+ "$ref": "./examples/ManagedClustersCreate_OSSKU.json"
+ },
+ "Create Managed Cluster with GPUMIG": {
+ "$ref": "./examples/ManagedClustersCreate_GPUMIG.json"
+ },
+ "Create/Update Managed Cluster with EnableAHUB": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithAHUB.json"
+ },
+ "Create Managed Cluster with EncryptionAtHost enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableEncryptionAtHost.json"
+ },
+ "Create Managed Cluster with UltraSSD enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableUltraSSD.json"
+ },
+ "Create Managed Cluster with PodIdentity enabled": {
+ "$ref": "./examples/ManagedClustersCreate_PodIdentity.json"
+ },
+ "Create Managed Private Cluster with fqdn subdomain specified": {
+ "$ref": "./examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json"
+ },
+ "Create Managed Private Cluster with Public FQDN specified": {
+ "$ref": "./examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json"
+ },
+ "Create Managed Cluster with RunCommand disabled": {
+ "$ref": "./examples/ManagedClustersCreate_DisableRunCommand.json"
+ },
+ "Create Managed Cluster with LongTermSupport": {
+ "$ref": "./examples/ManagedClustersCreate_Premium.json"
+ },
+ "Create Managed Cluster with Node Public IP Prefix": {
+ "$ref": "./examples/ManagedClustersCreate_NodePublicIPPrefix.json"
+ },
+ "Create Managed Cluster with Azure KeyVault Secrets Provider Addon": {
+ "$ref": "./examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json"
+ },
+ "Create Managed Cluster with FIPS enabled OS": {
+ "$ref": "./examples/ManagedClustersCreate_EnabledFIPS.json"
+ },
+ "Create Managed Cluster with HTTP proxy configured": {
+ "$ref": "./examples/ManagedClustersCreate_HTTPProxy.json"
+ },
+ "Create Managed Cluster with Security Profile configured": {
+ "$ref": "./examples/ManagedClustersCreate_SecurityProfile.json"
+ },
+ "Create Managed Cluster with AKS-managed NAT gateway as outbound type": {
+ "$ref": "./examples/ManagedClustersCreate_ManagedNATGateway.json"
+ },
+ "Create Managed Cluster with user-assigned NAT gateway as outbound type": {
+ "$ref": "./examples/ManagedClustersCreate_UserAssignedNATGateway.json"
+ },
+ "Create Managed Cluster using an agent pool snapshot": {
+ "$ref": "./examples/ManagedClustersCreate_Snapshot.json"
+ },
+ "Create/Update Managed Cluster with Windows gMSA enabled": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWindowsGmsa.json"
+ },
+ "Create/Update Managed Cluster with dual-stack networking": {
+ "$ref": "./examples/ManagedClustersCreate_DualStackNetworking.json"
+ },
+ "Create Managed Cluster with Dedicated Host Group": {
+ "$ref": "./examples/ManagedClustersCreate_DedicatedHostGroup.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_UpdateTags",
+ "summary": "Updates tags on a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update Managed Cluster Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update Managed Cluster Tags": {
+ "$ref": "./examples/ManagedClustersUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Delete",
+ "summary": "Deletes a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Managed Cluster": {
+ "$ref": "./examples/ManagedClustersDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations": {
+ "get": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_ListByManagedCluster",
+ "summary": "Gets a list of maintenance configurations in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfigurationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List maintenance configurations by Managed Cluster": {
+ "$ref": "./examples/MaintenanceConfigurationsList.json"
+ },
+ "List maintenance configurations configured with maintenance window by Managed Cluster": {
+ "$ref": "./examples/MaintenanceConfigurationsList_MaintenanceWindow.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations/{configName}": {
+ "get": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_Get",
+ "summary": "Gets the specified maintenance configuration of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsGet.json"
+ },
+ "Get Maintenance Configuration Configured With Maintenance Window": {
+ "$ref": "./examples/MaintenanceConfigurationsGet_MaintenanceWindow.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_CreateOrUpdate",
+ "summary": "Creates or updates a maintenance configuration in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ },
+ "description": "The maintenance configuration to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing maintenance configuration was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "201": {
+ "description": "The new maintenance configuration was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create/Update Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsCreate_Update.json"
+ },
+ "Create/Update Maintenance Configuration with Maintenance Window": {
+ "$ref": "./examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_Delete",
+ "summary": "Deletes a maintenance configuration.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Delete Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsDelete.json"
+ },
+ "Delete Maintenance Configuration For Node OS Upgrade": {
+ "$ref": "./examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclusters/{resourceName}/agentPools/{agentPoolName}/abort": {
+ "post": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_AbortLatestOperation",
+ "summary": "Aborts last operation running on agent pool.",
+ "description": "Aborts the currently running operation on the agent pool. The Agent Pool will be moved to a Canceling state and eventually to a Canceled state when cancellation finishes. If the operation completes before cancellation can take place, a 409 error code is returned.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "location": {
+ "description": "URL to query for status of the operation.",
+ "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": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Abort operation on agent pool": {
+ "$ref": "./examples/AgentPoolsAbortOperation.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_List",
+ "summary": "Gets a list of agent pools in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Agent Pools by Managed Cluster": {
+ "$ref": "./examples/AgentPoolsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_Get",
+ "summary": "Gets the specified managed cluster agent pool.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Agent Pool": {
+ "$ref": "./examples/AgentPoolsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_CreateOrUpdate",
+ "summary": "Creates or updates an agent pool in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the agent pool."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "description": "The agent pool to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing agent pool was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "201": {
+ "description": "The new agent pool was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create/Update Agent Pool": {
+ "$ref": "./examples/AgentPoolsCreate_Update.json"
+ },
+ "Update Agent Pool": {
+ "$ref": "./examples/AgentPools_Update.json"
+ },
+ "Create Spot Agent Pool": {
+ "$ref": "./examples/AgentPoolsCreate_Spot.json"
+ },
+ "Create Agent Pool with PPG": {
+ "$ref": "./examples/AgentPoolsCreate_PPG.json"
+ },
+ "Create Agent Pool with OSSKU": {
+ "$ref": "./examples/AgentPoolsCreate_OSSKU.json"
+ },
+ "Create Agent Pool with Windows OSSKU": {
+ "$ref": "./examples/AgentPoolsCreate_WindowsOSSKU.json"
+ },
+ "Create Agent Pool with GPUMIG": {
+ "$ref": "./examples/AgentPoolsCreate_GPUMIG.json"
+ },
+ "Create Agent Pool with Ephemeral OS Disk": {
+ "$ref": "./examples/AgentPoolsCreate_Ephemeral.json"
+ },
+ "Create Agent Pool with KubeletConfig and LinuxOSConfig": {
+ "$ref": "./examples/AgentPoolsCreate_CustomNodeConfig.json"
+ },
+ "Create Agent Pool with EncryptionAtHost enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableEncryptionAtHost.json"
+ },
+ "Create Agent Pool with UltraSSD enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableUltraSSD.json"
+ },
+ "Create Agent Pool with FIPS enabled OS": {
+ "$ref": "./examples/AgentPoolsCreate_EnableFIPS.json"
+ },
+ "Create Agent Pool using an agent pool snapshot": {
+ "$ref": "./examples/AgentPoolsCreate_Snapshot.json"
+ },
+ "Create Agent Pool with Krustlet and the WASI runtime": {
+ "$ref": "./examples/AgentPoolsCreate_WasmWasi.json"
+ },
+ "Stop Agent Pool": {
+ "$ref": "./examples/AgentPools_Stop.json"
+ },
+ "Start Agent Pool": {
+ "$ref": "./examples/AgentPools_Start.json"
+ },
+ "Create Agent Pool with Dedicated Host Group": {
+ "$ref": "./examples/AgentPoolsCreate_DedicatedHostGroup.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_Delete",
+ "summary": "Deletes an agent pool in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Agent Pool": {
+ "$ref": "./examples/AgentPoolsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_GetUpgradeProfile",
+ "summary": "Gets the upgrade profile for an agent pool.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Upgrade Profile for Agent Pool": {
+ "$ref": "./examples/AgentPoolsGetUpgradeProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_GetAvailableAgentPoolVersions",
+ "summary": "Gets a list of supported Kubernetes versions for the specified agent pool.",
+ "description": "See [supported Kubernetes versions](https://docs.microsoft.com/azure/aks/supported-kubernetes-versions) for more details about the version lifecycle.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolAvailableVersions"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get available versions for agent pool": {
+ "$ref": "./examples/AgentPoolsGetAgentPoolAvailableVersions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ResetServicePrincipalProfile",
+ "summary": "Reset the Service Principal Profile of a managed cluster.",
+ "description": "This action cannot be performed on a cluster that is not using a service principal",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterServicePrincipalProfile"
+ },
+ "description": "The service principal profile to set on the managed cluster."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Reset Service Principal Profile": {
+ "$ref": "./examples/ManagedClustersResetServicePrincipalProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": {
+ "post": {
+ "deprecated": true,
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ResetAADProfile",
+ "summary": "Reset the AAD Profile of a managed cluster.",
+ "description": "**WARNING**: This API will be deprecated. Please see [AKS-managed Azure Active Directory integration](https://aka.ms/aks-managed-aad) to update your cluster with AKS-managed Azure AD.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterAADProfile"
+ },
+ "description": "The AAD profile to set on the Managed Cluster"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Reset AAD Profile": {
+ "$ref": "./examples/ManagedClustersResetAADProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RotateClusterCertificates",
+ "summary": "Rotates the certificates of a managed cluster.",
+ "description": "See [Certificate rotation](https://docs.microsoft.com/azure/aks/certificate-rotation) for more details about rotating managed cluster certificates.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Rotate Cluster Certificates": {
+ "$ref": "./examples/ManagedClustersRotateClusterCertificates.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclusters/{resourceName}/abort": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_AbortLatestOperation",
+ "summary": "Aborts last operation running on managed cluster.",
+ "description": "Aborts the currently running operation on the managed cluster. The Managed Cluster will be moved to a Canceling state and eventually to a Canceled state when cancellation finishes. If the operation completes before cancellation can take place, a 409 error code is returned.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "location": {
+ "description": "URL to query for status of the operation.",
+ "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": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Abort operation on managed cluster": {
+ "$ref": "./examples/ManagedClustersAbortOperation.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateServiceAccountSigningKeys": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RotateServiceAccountSigningKeys",
+ "summary": "Rotates the service account signing keys of a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Rotate Cluster Service Account Signing Keys": {
+ "$ref": "./examples/ManagedClustersRotateServiceAccountSigningKeys.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/stop": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Stop",
+ "summary": "Stops a Managed Cluster",
+ "description": "This can only be performed on Azure Virtual Machine Scale set backed clusters. Stopping a cluster stops the control plane and agent nodes entirely, while maintaining all object and cluster state. A cluster does not accrue charges while it is stopped. See [stopping a cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for more details about stopping a cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Stop Managed Cluster": {
+ "$ref": "./examples/ManagedClustersStop.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/start": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Start",
+ "summary": "Starts a previously stopped Managed Cluster",
+ "description": "See [starting a cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for more details about starting a cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Start Managed Cluster": {
+ "$ref": "./examples/ManagedClustersStart.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_List",
+ "summary": "Gets a list of private endpoint connections in the specified managed cluster.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Private Endpoint Connections by Managed Cluster": {
+ "$ref": "./examples/PrivateEndpointConnectionsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Get",
+ "summary": "Gets the specified private endpoint connection.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Update",
+ "summary": "Updates a private endpoint connection.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The updated private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing private endpoint connection was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "201": {
+ "description": "The new private endpoint connection was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Delete",
+ "summary": "Deletes a private endpoint connection.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content -- The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeNodeImageVersion": {
+ "post": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_UpgradeNodeImageVersion",
+ "summary": "Upgrades the node image version of an agent pool to the latest.",
+ "description": "Upgrading the node image version of an agent pool applies the newest OS and runtime updates to the nodes. AKS provides one new image per week with the latest updates. For more details on node image versions, see: https://docs.microsoft.com/azure/aks/node-image-upgrade",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Upgrade Agent Pool Node Image Version": {
+ "$ref": "./examples/AgentPoolsUpgradeNodeImageVersion.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "privateLinkResources"
+ ],
+ "operationId": "PrivateLinkResources_List",
+ "summary": "Gets a list of private link resources in the specified managed cluster.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourcesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Private Link Resources by Managed Cluster": {
+ "$ref": "./examples/PrivateLinkResourcesList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resolvePrivateLinkServiceId": {
+ "post": {
+ "tags": [
+ "resolvePrivateLinkServiceId"
+ ],
+ "operationId": "ResolvePrivateLinkServiceId_POST",
+ "summary": "Gets the private link service ID for the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ },
+ "description": "Parameters required in order to resolve a private link service ID."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Resolve the Private Link Service ID for Managed Cluster": {
+ "$ref": "./examples/ResolvePrivateLinkServiceId.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/runCommand": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RunCommand",
+ "summary": "Submits a command to run against the Managed Cluster.",
+ "description": "AKS will create a pod to run the command. This is primarily useful for private clusters. For more information see [AKS Run Command](https://docs.microsoft.com/azure/aks/private-clusters#aks-run-command-preview).",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "requestPayload",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RunCommandRequest"
+ },
+ "description": "The run command request"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "command finished with async pattern, tracking by location header. !!! this is for autorest only, you never get 200 from this api !!!",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "submitNewCommand": {
+ "$ref": "./examples/RunCommandRequest.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/commandResults/{commandId}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetCommandResult",
+ "summary": "Gets the results of a command which has been run on the Managed Cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "commandId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Id of the command."
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "command finished",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "commandSucceedResult": {
+ "$ref": "./examples/RunCommandResultSucceed.json"
+ },
+ "commandFailedResult": {
+ "$ref": "./examples/RunCommandResultFailed.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/outboundNetworkDependenciesEndpoints": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListOutboundNetworkDependenciesEndpoints",
+ "summary": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster.",
+ "description": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster. The operation returns properties of each egress endpoint.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OutboundEnvironmentEndpointCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List OutboundNetworkDependenciesEndpoints by Managed Cluster": {
+ "$ref": "./examples/OutboundNetworkDependenciesEndpointsList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_List",
+ "summary": "Gets a list of snapshots in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Snapshots": {
+ "$ref": "./examples/SnapshotsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_ListByResourceGroup",
+ "summary": "Lists snapshots in the specified subscription and 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": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Snapshots by Resource Group": {
+ "$ref": "./examples/SnapshotsListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots/{resourceName}": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Get",
+ "summary": "Gets a snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Snapshot": {
+ "$ref": "./examples/SnapshotsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_CreateOrUpdate",
+ "summary": "Creates or updates a snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "The snapshot to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing snapshot was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "201": {
+ "description": "The new snapshot was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/Update Snapshot": {
+ "$ref": "./examples/SnapshotsCreate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_UpdateTags",
+ "summary": "Updates tags on a snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update snapshot Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Snapshot Tags": {
+ "$ref": "./examples/SnapshotsUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Delete",
+ "summary": "Deletes a snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Snapshot": {
+ "$ref": "./examples/SnapshotsDelete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "OperationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/OperationValue"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of operations"
+ }
+ },
+ "description": "The List Operation response."
+ },
+ "OperationValue": {
+ "type": "object",
+ "properties": {
+ "origin": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The origin of the operation."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the operation."
+ },
+ "display": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/OperationValueDisplay",
+ "description": "Describes the properties of a Operation Value Display."
+ }
+ },
+ "description": "Describes the properties of a Operation value."
+ },
+ "OperationValueDisplay": {
+ "type": "object",
+ "properties": {
+ "operation": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the operation."
+ },
+ "resource": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the resource the operation applies to."
+ },
+ "description": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The description of the operation."
+ },
+ "provider": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The resource provider for the operation."
+ }
+ },
+ "description": "Describes the properties of a Operation Value Display."
+ },
+ "SubResource": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource ID."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ }
+ },
+ "description": "Reference to another subresource.",
+ "x-ms-azure-resource": true
+ },
+ "TagsObject": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags."
+ }
+ },
+ "description": "Tags object for patch operations."
+ },
+ "ContainerServiceOSDisk": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 2048,
+ "minimum": 0,
+ "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified."
+ },
+ "ManagedClusterServicePrincipalProfile": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "string",
+ "description": "The ID for the service principal."
+ },
+ "secret": {
+ "type": "string",
+ "description": "The secret password associated with the service principal in plain text."
+ }
+ },
+ "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.",
+ "required": [
+ "clientId"
+ ]
+ },
+ "ManagedClusterAgentPoolProfileProperties": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1."
+ },
+ "vmSize": {
+ "type": "string",
+ "title": "The size of the agent pool VMs.",
+ "description": "VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions"
+ },
+ "osDiskSizeGB": {
+ "$ref": "#/definitions/ContainerServiceOSDisk"
+ },
+ "osDiskType": {
+ "$ref": "#/definitions/OSDiskType"
+ },
+ "kubeletDiskType": {
+ "$ref": "#/definitions/KubeletDiskType"
+ },
+ "workloadRuntime": {
+ "$ref": "#/definitions/WorkloadRuntime"
+ },
+ "vnetSubnetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/virtualNetworks/subnets"
+ }
+ ]
+ },
+ "title": "The ID of the subnet which agent pool nodes and optionally pods will join on startup.",
+ "description": "If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
+ },
+ "podSubnetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/virtualNetworks/subnets"
+ }
+ ]
+ },
+ "title": "The ID of the subnet which pods will join when launched.",
+ "description": "If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
+ },
+ "maxPods": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of pods that can run on a node."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "osSKU": {
+ "$ref": "#/definitions/OSSKU"
+ },
+ "maxCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of nodes for auto-scaling"
+ },
+ "minCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The minimum number of nodes for auto-scaling"
+ },
+ "enableAutoScaling": {
+ "type": "boolean",
+ "description": "Whether to enable auto-scaler"
+ },
+ "scaleDownMode": {
+ "$ref": "#/definitions/ScaleDownMode",
+ "title": "The scale down mode to use when scaling the Agent Pool.",
+ "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete."
+ },
+ "type": {
+ "$ref": "#/definitions/AgentPoolType"
+ },
+ "mode": {
+ "$ref": "#/definitions/AgentPoolMode"
+ },
+ "orchestratorVersion": {
+ "type": "string",
+ "title": "The version of Kubernetes specified by the user.",
+ "description": "Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool)."
+ },
+ "currentOrchestratorVersion": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The version of Kubernetes the Agent Pool is running.",
+ "description": "If orchestratorVersion is a fully specified version , this field will be exactly equal to it. If orchestratorVersion is , this field will contain the full version being used."
+ },
+ "nodeImageVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of node image"
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "Settings for upgrading the agentpool"
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The current deployment or provisioning state."
+ },
+ "powerState": {
+ "title": "Whether the Agent Pool is running or stopped.",
+ "description": "When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded",
+ "$ref": "#/definitions/PowerState"
+ },
+ "availabilityZones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'."
+ },
+ "enableNodePublicIP": {
+ "type": "boolean",
+ "title": "Whether each node is allocated its own public IP.",
+ "description": "Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false."
+ },
+ "nodePublicIPPrefixID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/publicIPPrefixes"
+ }
+ ]
+ },
+ "title": "The public IP prefix ID which VM nodes should use IPs from.",
+ "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}"
+ },
+ "scaleSetPriority": {
+ "$ref": "#/definitions/ScaleSetPriority",
+ "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'."
+ },
+ "scaleSetEvictionPolicy": {
+ "$ref": "#/definitions/ScaleSetEvictionPolicy",
+ "title": "The Virtual Machine Scale Set eviction policy to use.",
+ "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'."
+ },
+ "spotMaxPrice": {
+ "$ref": "#/definitions/SpotMaxPrice",
+ "title": "The max price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.",
+ "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags to be persisted on the agent pool virtual machine scale set."
+ },
+ "nodeLabels": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The node labels to be persisted across all nodes in agent pool."
+ },
+ "nodeTaints": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule."
+ },
+ "proximityPlacementGroupID": {
+ "$ref": "#/definitions/ProximityPlacementGroupID",
+ "description": "The ID for Proximity Placement Group."
+ },
+ "kubeletConfig": {
+ "$ref": "#/definitions/KubeletConfig",
+ "description": "The Kubelet configuration on the agent pool nodes."
+ },
+ "linuxOSConfig": {
+ "$ref": "#/definitions/LinuxOSConfig",
+ "description": "The OS configuration of Linux agent nodes."
+ },
+ "enableEncryptionAtHost": {
+ "type": "boolean",
+ "title": "Whether to enable host based OS and data drive encryption.",
+ "description": "This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption"
+ },
+ "enableUltraSSD": {
+ "type": "boolean",
+ "description": "Whether to enable UltraSSD"
+ },
+ "enableFIPS": {
+ "type": "boolean",
+ "title": "Whether to use a FIPS-enabled OS.",
+ "description": "See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details."
+ },
+ "gpuInstanceProfile": {
+ "$ref": "#/definitions/GPUInstanceProfile",
+ "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU."
+ },
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot."
+ },
+ "hostGroupID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/hostGroups"
+ }
+ ]
+ },
+ "title": "The fully qualified resource ID of the Dedicated Host Group to provision virtual machines from, used only in creation scenario and not allowed to changed once set.",
+ "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts)."
+ }
+ },
+ "description": "Properties for the container service agent pool profile."
+ },
+ "ManagedClusterAgentPoolProfile": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties"
+ }
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Unique name of the agent pool profile in the context of the subscription and resource group.",
+ "description": "Windows agent pool names must be 6 characters or less.",
+ "pattern": "^[a-z][a-z0-9]{0,11}$"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Profile for the container service agent pool."
+ },
+ "AgentPoolType": {
+ "type": "string",
+ "enum": [
+ "VirtualMachineScaleSets",
+ "AvailabilitySet"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "VirtualMachineScaleSets",
+ "description": "Create an Agent Pool backed by a Virtual Machine Scale Set."
+ },
+ {
+ "value": "AvailabilitySet",
+ "description": "Use of this is strongly discouraged."
+ }
+ ]
+ },
+ "description": "The type of Agent Pool."
+ },
+ "AgentPoolMode": {
+ "type": "string",
+ "enum": [
+ "System",
+ "User"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "System",
+ "description": "System agent pools are primarily for hosting critical system pods such as CoreDNS and metrics-server. System agent pools osType must be Linux. System agent pools VM SKU must have at least 2vCPUs and 4GB of memory."
+ },
+ {
+ "value": "User",
+ "description": "User agent pools are primarily for hosting your application pods."
+ }
+ ]
+ },
+ "title": "The mode of an agent pool.",
+ "description": "A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools"
+ },
+ "AgentPoolListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "description": "The list of agent pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of agent pool results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Agent Pools operation."
+ },
+ "AgentPoolUpgradeSettings": {
+ "type": "object",
+ "properties": {
+ "maxSurge": {
+ "type": "string",
+ "title": "The maximum number or percentage of nodes that are surged during upgrade.",
+ "description": "This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade"
+ },
+ "drainTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 1440,
+ "minimum": 1,
+ "title": "The drain timeout for a node",
+ "description": "The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes."
+ }
+ },
+ "description": "Settings for upgrading an agentpool"
+ },
+ "AgentPool": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Properties of an agent pool.",
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "Agent Pool."
+ },
+ "ManagedClusterWindowsProfile": {
+ "type": "object",
+ "properties": {
+ "adminUsername": {
+ "type": "string",
+ "description": "Specifies the name of the administrator account.
**Restriction:** Cannot end in \".\"
**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".
**Minimum-length:** 1 character
**Max-length:** 20 characters"
+ },
+ "adminPassword": {
+ "type": "string",
+ "description": "Specifies the password of the administrator account.
**Minimum-length:** 8 characters
**Max-length:** 123 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\""
+ },
+ "licenseType": {
+ "type": "string",
+ "enum": [
+ "None",
+ "Windows_Server"
+ ],
+ "x-ms-enum": {
+ "name": "licenseType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "None",
+ "description": "No additional licensing is applied."
+ },
+ {
+ "value": "Windows_Server",
+ "description": "Enables Azure Hybrid User Benefits for Windows VMs."
+ }
+ ]
+ },
+ "description": "The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details."
+ },
+ "enableCSIProxy": {
+ "type": "boolean",
+ "title": "Whether to enable CSI proxy.",
+ "description": "For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy)."
+ },
+ "gmsaProfile": {
+ "$ref": "#/definitions/WindowsGmsaProfile",
+ "description": "The Windows gMSA Profile in the Managed Cluster."
+ }
+ },
+ "required": [
+ "adminUsername"
+ ],
+ "description": "Profile for Windows VMs in the managed cluster."
+ },
+ "WindowsGmsaProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Whether to enable Windows gMSA.",
+ "description": "Specifies whether to enable Windows gMSA in the managed cluster."
+ },
+ "dnsServer": {
+ "type": "string",
+ "description": "Specifies the DNS server for Windows gMSA.
Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster."
+ },
+ "rootDomainName": {
+ "type": "string",
+ "description": "Specifies the root domain name for Windows gMSA.
Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster."
+ }
+ },
+ "description": "Windows gMSA Profile in the managed cluster."
+ },
+ "ContainerServiceLinuxProfile": {
+ "type": "object",
+ "properties": {
+ "adminUsername": {
+ "type": "string",
+ "description": "The administrator username to use for Linux VMs.",
+ "pattern": "^[A-Za-z][-A-Za-z0-9_]*$"
+ },
+ "ssh": {
+ "$ref": "#/definitions/ContainerServiceSshConfiguration",
+ "description": "The SSH configuration for Linux-based VMs running on Azure."
+ }
+ },
+ "required": [
+ "adminUsername",
+ "ssh"
+ ],
+ "description": "Profile for Linux VMs in the container service cluster."
+ },
+ "ContainerServiceNetworkProfile": {
+ "type": "object",
+ "properties": {
+ "networkPlugin": {
+ "type": "string",
+ "enum": [
+ "azure",
+ "kubenet",
+ "none"
+ ],
+ "default": "kubenet",
+ "x-ms-enum": {
+ "name": "NetworkPlugin",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Use the Azure CNI network plugin. See [Azure CNI (advanced) networking](https://docs.microsoft.com/azure/aks/concepts-network#azure-cni-advanced-networking) for more information."
+ },
+ {
+ "value": "kubenet",
+ "description": "Use the Kubenet network plugin. See [Kubenet (basic) networking](https://docs.microsoft.com/azure/aks/concepts-network#kubenet-basic-networking) for more information."
+ },
+ {
+ "value": "none",
+ "description": "No CNI plugin is pre-installed. See [BYO CNI](https://docs.microsoft.com/en-us/azure/aks/use-byo-cni) for more information."
+ }
+ ]
+ },
+ "description": "Network plugin used for building the Kubernetes network."
+ },
+ "networkPluginMode": {
+ "type": "string",
+ "enum": [
+ "overlay"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkPluginMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "overlay",
+ "description": "Used with networkPlugin=azure, pods are given IPs from the PodCIDR address space but use Azure Routing Domains rather than Kubenet's method of route tables. For more information visit https://aka.ms/aks/azure-cni-overlay."
+ }
+ ]
+ },
+ "description": "The mode the network plugin should use."
+ },
+ "networkPolicy": {
+ "type": "string",
+ "enum": [
+ "calico",
+ "azure",
+ "cilium"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "calico",
+ "description": "Use Calico network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information."
+ },
+ {
+ "value": "azure",
+ "description": "Use Azure network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information."
+ },
+ {
+ "value": "cilium",
+ "description": "Use Cilium to enforce network policies. This requires networkDataplane to be 'cilium'."
+ }
+ ]
+ },
+ "description": "Network policy used for building the Kubernetes network."
+ },
+ "networkMode": {
+ "type": "string",
+ "enum": [
+ "transparent",
+ "bridge"
+ ],
+ "x-ms-enum": {
+ "name": "networkMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "transparent",
+ "description": "No bridge is created. Intra-VM Pod to Pod communication is through IP routes created by Azure CNI. See [Transparent Mode](https://docs.microsoft.com/azure/aks/faq#transparent-mode) for more information."
+ },
+ {
+ "value": "bridge",
+ "description": "This is no longer supported"
+ }
+ ]
+ },
+ "title": "The network mode Azure CNI is configured with.",
+ "description": "This cannot be specified if networkPlugin is anything other than 'azure'."
+ },
+ "networkDataplane": {
+ "type": "string",
+ "enum": [
+ "azure",
+ "cilium"
+ ],
+ "x-ms-enum": {
+ "name": "networkDataplane",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Use Azure network dataplane."
+ },
+ {
+ "value": "cilium",
+ "description": "Use Cilium network dataplane. See [Azure CNI Powered by Cilium](https://learn.microsoft.com/azure/aks/azure-cni-powered-by-cilium) for more information."
+ }
+ ]
+ },
+ "description": "Network dataplane used in the Kubernetes cluster."
+ },
+ "podCidr": {
+ "type": "string",
+ "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
+ "default": "10.244.0.0/16",
+ "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used."
+ },
+ "serviceCidr": {
+ "type": "string",
+ "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
+ "default": "10.0.0.0/16",
+ "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges."
+ },
+ "dnsServiceIP": {
+ "type": "string",
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$",
+ "default": "10.0.0.10",
+ "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr."
+ },
+ "outboundType": {
+ "type": "string",
+ "enum": [
+ "loadBalancer",
+ "userDefinedRouting",
+ "managedNATGateway",
+ "userAssignedNATGateway"
+ ],
+ "x-ms-enum": {
+ "name": "outboundType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "loadBalancer",
+ "description": "The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type 'loadBalancer'. For more information see [outbound type loadbalancer](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-loadbalancer)."
+ },
+ {
+ "value": "userDefinedRouting",
+ "description": "Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see [outbound type userDefinedRouting](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-userdefinedrouting)."
+ },
+ {
+ "value": "managedNATGateway",
+ "description": "The AKS-managed NAT gateway is used for egress."
+ },
+ {
+ "value": "userAssignedNATGateway",
+ "description": "The user-assigned NAT gateway associated to the cluster subnet is used for egress. This is an advanced scenario and requires proper network configuration."
+ }
+ ]
+ },
+ "default": "loadBalancer",
+ "title": "The outbound (egress) routing method.",
+ "description": "This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype)."
+ },
+ "loadBalancerSku": {
+ "type": "string",
+ "enum": [
+ "standard",
+ "basic"
+ ],
+ "x-ms-enum": {
+ "name": "loadBalancerSku",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "standard",
+ "description": "Use a a standard Load Balancer. This is the recommended Load Balancer SKU. For more information about on working with the load balancer in the managed cluster, see the [standard Load Balancer](https://docs.microsoft.com/azure/aks/load-balancer-standard) article."
+ },
+ {
+ "value": "basic",
+ "description": "Use a basic Load Balancer with limited functionality."
+ }
+ ]
+ },
+ "title": "The load balancer sku for the managed cluster.",
+ "description": "The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs."
+ },
+ "loadBalancerProfile": {
+ "$ref": "#/definitions/ManagedClusterLoadBalancerProfile",
+ "description": "Profile of the cluster load balancer."
+ },
+ "natGatewayProfile": {
+ "$ref": "#/definitions/ManagedClusterNATGatewayProfile",
+ "description": "Profile of the cluster NAT gateway."
+ },
+ "podCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The CIDR notation IP ranges from which to assign pod IPs.",
+ "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking."
+ },
+ "serviceCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The CIDR notation IP ranges from which to assign service cluster IPs.",
+ "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges."
+ },
+ "ipFamilies": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The IP version to use for cluster networking and IP assignment.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "ipFamily",
+ "modelAsString": true
+ }
+ },
+ "title": "The IP families used to specify IP versions available to the cluster.",
+ "description": "IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6."
+ }
+ },
+ "description": "Profile of network configuration."
+ },
+ "MaintenanceConfigurationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ },
+ "description": "The list of maintenance configurations."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of maintenance configuration results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List maintenance configurations operation."
+ },
+ "MaintenanceConfiguration": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "systemData": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/systemData",
+ "readOnly": true,
+ "description": "The system metadata relating to this resource."
+ },
+ "properties": {
+ "description": "Properties of a default maintenance configuration.",
+ "$ref": "#/definitions/MaintenanceConfigurationProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "title": "Planned maintenance configuration, used to configure when updates can be deployed to a Managed Cluster.",
+ "description": "See [planned maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for more information about planned maintenance."
+ },
+ "MaintenanceConfigurationProperties": {
+ "type": "object",
+ "properties": {
+ "timeInWeek": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TimeInWeek"
+ },
+ "x-ms-identifiers": [],
+ "title": "Time slots during the week when planned maintenance is allowed to proceed.",
+ "description": "If two array entries specify the same day of the week, the applied configuration is the union of times in both entries."
+ },
+ "notAllowedTime": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TimeSpan"
+ },
+ "x-ms-identifiers": [],
+ "description": "Time slots on which upgrade is not allowed."
+ },
+ "maintenanceWindow": {
+ "type": "object",
+ "$ref": "#/definitions/MaintenanceWindow",
+ "description": "Maintenance window for the maintenance configuration."
+ }
+ },
+ "description": "Properties used to configure planned maintenance for a Managed Cluster."
+ },
+ "MaintenanceWindow": {
+ "type": "object",
+ "properties": {
+ "schedule": {
+ "$ref": "#/definitions/Schedule",
+ "description": "Recurrence schedule for the maintenance window."
+ },
+ "durationHours": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 4,
+ "maximum": 24,
+ "default": 24,
+ "description": "Length of maintenance window range from 4 to 24 hours."
+ },
+ "utcOffset": {
+ "type": "string",
+ "pattern": "^(-|\\+)[0-9]{2}:[0-9]{2}$",
+ "description": "The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'."
+ },
+ "startDate": {
+ "type": "string",
+ "format": "date",
+ "description": "The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away."
+ },
+ "startTime": {
+ "type": "string",
+ "pattern": "^\\d{2}:\\d{2}$",
+ "description": "The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'."
+ },
+ "notAllowedDates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DateSpan"
+ },
+ "x-ms-identifiers": [],
+ "description": "Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time."
+ }
+ },
+ "description": "Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster.",
+ "required": [
+ "schedule",
+ "durationHours",
+ "startTime"
+ ]
+ },
+ "Schedule": {
+ "type": "object",
+ "properties": {
+ "daily": {
+ "$ref": "#/definitions/DailySchedule"
+ },
+ "weekly": {
+ "$ref": "#/definitions/WeeklySchedule"
+ },
+ "absoluteMonthly": {
+ "$ref": "#/definitions/AbsoluteMonthlySchedule"
+ },
+ "relativeMonthly": {
+ "$ref": "#/definitions/RelativeMonthlySchedule"
+ }
+ },
+ "description": "One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule."
+ },
+ "DailySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalDays": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 7,
+ "description": "Specifies the number of days between each set of occurrences."
+ }
+ },
+ "description": "For schedules like: 'recur every day' or 'recur every 3 days'.",
+ "required": [
+ "intervalDays"
+ ]
+ },
+ "WeeklySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalWeeks": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 4,
+ "description": "Specifies the number of weeks between each set of occurrences."
+ },
+ "dayOfWeek": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "Specifies on which day of the week the maintenance occurs."
+ }
+ },
+ "description": "For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'.",
+ "required": [
+ "intervalWeeks",
+ "dayOfWeek"
+ ]
+ },
+ "AbsoluteMonthlySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalMonths": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 6,
+ "description": "Specifies the number of months between each set of occurrences."
+ },
+ "dayOfMonth": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 31,
+ "description": "The date of the month."
+ }
+ },
+ "description": "For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'.",
+ "required": [
+ "intervalMonths",
+ "dayOfMonth"
+ ]
+ },
+ "RelativeMonthlySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalMonths": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 6,
+ "description": "Specifies the number of months between each set of occurrences."
+ },
+ "weekIndex": {
+ "type": "string",
+ "enum": [
+ "First",
+ "Second",
+ "Third",
+ "Fourth",
+ "Last"
+ ],
+ "x-ms-enum": {
+ "name": "type",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "First",
+ "description": "First week of the month."
+ },
+ {
+ "value": "Second",
+ "description": "Second week of the month."
+ },
+ {
+ "value": "Third",
+ "description": "Third week of the month."
+ },
+ {
+ "value": "Fourth",
+ "description": "Fourth week of the month."
+ },
+ {
+ "value": "Last",
+ "description": "Last week of the month."
+ }
+ ]
+ },
+ "title": "The week index.",
+ "description": "Specifies on which week of the month the dayOfWeek applies."
+ },
+ "dayOfWeek": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "Specifies on which day of the week the maintenance occurs."
+ }
+ },
+ "description": "For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'.",
+ "required": [
+ "intervalMonths",
+ "weekIndex",
+ "dayOfWeek"
+ ]
+ },
+ "DateSpan": {
+ "type": "object",
+ "properties": {
+ "start": {
+ "type": "string",
+ "format": "date",
+ "description": "The start date of the date span."
+ },
+ "end": {
+ "type": "string",
+ "format": "date",
+ "description": "The end date of the date span."
+ }
+ },
+ "title": "A date range.",
+ "description": "For example, between '2022-12-23' and '2023-01-05'.",
+ "required": [
+ "start",
+ "end"
+ ]
+ },
+ "TimeInWeek": {
+ "type": "object",
+ "properties": {
+ "day": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "The day of the week."
+ },
+ "hourSlots": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HourInDay"
+ },
+ "title": "A list of hours in the day used to identify a time range.",
+ "description": "Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range."
+ }
+ },
+ "description": "Time in a week."
+ },
+ "WeekDay": {
+ "type": "string",
+ "enum": [
+ "Sunday",
+ "Monday",
+ "Tuesday",
+ "Wednesday",
+ "Thursday",
+ "Friday",
+ "Saturday"
+ ],
+ "x-ms-enum": {
+ "name": "WeekDay",
+ "modelAsString": true
+ },
+ "description": "The weekday enum."
+ },
+ "HourInDay": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 23,
+ "minimum": 0,
+ "description": "Hour in a day."
+ },
+ "TimeSpan": {
+ "type": "object",
+ "properties": {
+ "start": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The start of a time span"
+ },
+ "end": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The end of a time span"
+ }
+ },
+ "title": "A time range.",
+ "description": "For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z."
+ },
+ "RunCommandRequest": {
+ "type": "object",
+ "properties": {
+ "command": {
+ "type": "string",
+ "description": "The command to run."
+ },
+ "context": {
+ "type": "string",
+ "description": "A base64 encoded zip file containing the files required by the command."
+ },
+ "clusterToken": {
+ "type": "string",
+ "description": "AuthToken issued for AKS AAD Server App."
+ }
+ },
+ "description": "A run command request",
+ "required": [
+ "command"
+ ]
+ },
+ "RunCommandResult": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The command id.",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "Properties of command result.",
+ "$ref": "#/definitions/CommandResultProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "run command result."
+ },
+ "CommandResultProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "provisioning State"
+ },
+ "exitCode": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true,
+ "description": "The exit code of the command"
+ },
+ "startedAt": {
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true,
+ "description": "The time when the command started."
+ },
+ "finishedAt": {
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true,
+ "description": "The time when the command finished."
+ },
+ "logs": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The command output."
+ },
+ "reason": {
+ "type": "string",
+ "readOnly": true,
+ "description": "An explanation of why provisioningState is set to failed (if so)."
+ }
+ },
+ "description": "The results of a run command"
+ },
+ "ManagedClusterNATGatewayProfile": {
+ "type": "object",
+ "properties": {
+ "managedOutboundIPProfile": {
+ "$ref": "#/definitions/ManagedClusterManagedOutboundIPProfile",
+ "description": "Profile of the managed outbound IP resources of the cluster NAT gateway."
+ },
+ "effectiveOutboundIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "The effective outbound IP resources of the cluster NAT gateway."
+ },
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 120,
+ "minimum": 4,
+ "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes.",
+ "default": 4
+ }
+ },
+ "description": "Profile of the managed cluster NAT gateway."
+ },
+ "ManagedClusterManagedOutboundIPProfile": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 16,
+ "minimum": 1,
+ "description": "The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. ",
+ "default": 1
+ }
+ },
+ "description": "Profile of the managed outbound IP resources of the managed cluster."
+ },
+ "ManagedClusterLoadBalancerProfile": {
+ "type": "object",
+ "properties": {
+ "managedOutboundIPs": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 100,
+ "minimum": 1,
+ "description": "The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ",
+ "default": 1
+ },
+ "countIPv6": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 100,
+ "minimum": 0,
+ "description": "The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. ",
+ "default": 0
+ }
+ },
+ "description": "Desired managed outbound IPs for the cluster load balancer."
+ },
+ "outboundIPPrefixes": {
+ "type": "object",
+ "properties": {
+ "publicIPPrefixes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "A list of public IP prefix resources."
+ }
+ },
+ "description": "Desired outbound IP Prefix resources for the cluster load balancer."
+ },
+ "outboundIPs": {
+ "type": "object",
+ "properties": {
+ "publicIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "A list of public IP resources."
+ }
+ },
+ "description": "Desired outbound IP resources for the cluster load balancer."
+ },
+ "effectiveOutboundIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "The effective outbound IP resources of the cluster load balancer."
+ },
+ "allocatedOutboundPorts": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 64000,
+ "minimum": 0,
+ "description": "The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports.",
+ "default": 0
+ },
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 120,
+ "minimum": 4,
+ "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes.",
+ "default": 30
+ },
+ "enableMultipleStandardLoadBalancers": {
+ "type": "boolean",
+ "description": "Enable multiple standard load balancers per AKS cluster or not."
+ }
+ },
+ "description": "Profile of the managed cluster load balancer."
+ },
+ "ResourceReference": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The fully qualified Azure resource id."
+ }
+ },
+ "description": "A reference to an Azure resource."
+ },
+ "ContainerServiceSshConfiguration": {
+ "type": "object",
+ "properties": {
+ "publicKeys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerServiceSshPublicKey"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified."
+ }
+ },
+ "description": "SSH configuration for Linux-based VMs running on Azure.",
+ "required": [
+ "publicKeys"
+ ]
+ },
+ "ContainerServiceSshPublicKey": {
+ "type": "object",
+ "properties": {
+ "keyData": {
+ "type": "string",
+ "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers."
+ }
+ },
+ "required": [
+ "keyData"
+ ],
+ "description": "Contains information about SSH certificate public key data."
+ },
+ "ManagedClusterListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedCluster"
+ },
+ "description": "The list of managed clusters."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed cluster results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Managed Clusters operation."
+ },
+ "ManagedCluster": {
+ "type": "object",
+ "properties": {
+ "sku": {
+ "$ref": "#/definitions/ManagedClusterSKU",
+ "description": "The managed cluster SKU."
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the Virtual Machine."
+ },
+ "identity": {
+ "$ref": "#/definitions/ManagedClusterIdentity",
+ "description": "The identity of the managed cluster, if configured."
+ },
+ "properties": {
+ "description": "Properties of a managed cluster.",
+ "$ref": "#/definitions/ManagedClusterProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "Managed cluster."
+ },
+ "ManagedClusterProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The current provisioning state."
+ },
+ "powerState": {
+ "$ref": "#/definitions/PowerState",
+ "description": "The Power State of the cluster.",
+ "readOnly": true
+ },
+ "maxAgentPools": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The max number of agent pools for the managed cluster."
+ },
+ "kubernetesVersion": {
+ "type": "string",
+ "title": "The version of Kubernetes specified by the user.",
+ "description": "Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details."
+ },
+ "currentKubernetesVersion": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The version of Kubernetes the Managed Cluster is running.",
+ "description": "If kubernetesVersion was a fully specified version , this field will be exactly equal to it. If kubernetesVersion was , this field will contain the full version being used."
+ },
+ "dnsPrefix": {
+ "type": "string",
+ "title": "The DNS prefix of the Managed Cluster.",
+ "description": "This cannot be updated once the Managed Cluster has been created."
+ },
+ "fqdnSubdomain": {
+ "type": "string",
+ "title": "The FQDN subdomain of the private cluster with custom private dns zone.",
+ "description": "This cannot be updated once the Managed Cluster has been created."
+ },
+ "fqdn": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The FQDN of the master pool."
+ },
+ "privateFQDN": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The FQDN of private cluster."
+ },
+ "azurePortalFQDN": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The special FQDN used by the Azure Portal to access the Managed Cluster. This FQDN is for use only by the Azure Portal and should not be used by other clients.",
+ "description": "The Azure Portal requires certain Cross-Origin Resource Sharing (CORS) headers to be sent in some responses, which Kubernetes APIServer doesn't handle by default. This special FQDN supports CORS, allowing the Azure Portal to function properly."
+ },
+ "agentPoolProfiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfile"
+ },
+ "x-ms-identifiers": [],
+ "description": "The agent pool properties."
+ },
+ "linuxProfile": {
+ "$ref": "#/definitions/ContainerServiceLinuxProfile",
+ "description": "The profile for Linux VMs in the Managed Cluster."
+ },
+ "windowsProfile": {
+ "$ref": "#/definitions/ManagedClusterWindowsProfile",
+ "description": "The profile for Windows VMs in the Managed Cluster."
+ },
+ "servicePrincipalProfile": {
+ "$ref": "#/definitions/ManagedClusterServicePrincipalProfile",
+ "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs."
+ },
+ "addonProfiles": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/ManagedClusterAddonProfile"
+ },
+ "description": "The profile of managed cluster add-on."
+ },
+ "podIdentityProfile": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProfile",
+ "title": "The pod identity profile of the Managed Cluster.",
+ "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on AAD pod identity integration."
+ },
+ "oidcIssuerProfile": {
+ "$ref": "#/definitions/ManagedClusterOIDCIssuerProfile",
+ "description": "The OIDC issuer profile of the Managed Cluster."
+ },
+ "nodeResourceGroup": {
+ "type": "string",
+ "description": "The name of the resource group containing agent pool nodes."
+ },
+ "enableRBAC": {
+ "type": "boolean",
+ "description": "Whether to enable Kubernetes Role-Based Access Control."
+ },
+ "supportPlan": {
+ "$ref": "#/definitions/KubernetesSupportPlan",
+ "description": "The support plan for the Managed Cluster. If unspecified, the default is 'KubernetesOfficial'."
+ },
+ "enablePodSecurityPolicy": {
+ "type": "boolean",
+ "description": "(DEPRECATED) Whether to enable Kubernetes pod security policy (preview). PodSecurityPolicy was deprecated in Kubernetes v1.21, and removed from Kubernetes in v1.25. Learn more at https://aka.ms/k8s/psp and https://aka.ms/aks/psp."
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/ContainerServiceNetworkProfile",
+ "description": "The network configuration profile."
+ },
+ "aadProfile": {
+ "$ref": "#/definitions/ManagedClusterAADProfile",
+ "description": "The Azure Active Directory configuration."
+ },
+ "autoUpgradeProfile": {
+ "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile",
+ "description": "The auto upgrade configuration."
+ },
+ "autoScalerProfile": {
+ "type": "object",
+ "properties": {
+ "balance-similar-node-groups": {
+ "type": "string",
+ "title": "Detects similar node pools and balances the number of nodes between them.",
+ "description": "Valid values are 'true' and 'false'"
+ },
+ "expander": {
+ "type": "string",
+ "enum": [
+ "least-waste",
+ "most-pods",
+ "priority",
+ "random"
+ ],
+ "x-ms-enum": {
+ "name": "expander",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "least-waste",
+ "description": "Selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up. This is useful when you have different classes of nodes, for example, high CPU or high memory nodes, and only want to expand those when there are pending pods that need a lot of those resources."
+ },
+ {
+ "value": "most-pods",
+ "description": "Selects the node group that would be able to schedule the most pods when scaling up. This is useful when you are using nodeSelector to make sure certain pods land on certain nodes. Note that this won't cause the autoscaler to select bigger nodes vs. smaller, as it can add multiple smaller nodes at once."
+ },
+ {
+ "value": "priority",
+ "description": "Selects the node group that has the highest priority assigned by the user. It's configuration is described in more details [here](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/expander/priority/readme.md)."
+ },
+ {
+ "value": "random",
+ "description": "Used when you don't have a particular need for the node groups to scale differently."
+ }
+ ]
+ },
+ "title": "The expander to use when scaling up",
+ "description": "If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information."
+ },
+ "max-empty-bulk-delete": {
+ "type": "string",
+ "title": "The maximum number of empty nodes that can be deleted at the same time. This must be a positive integer.",
+ "description": "The default is 10."
+ },
+ "max-graceful-termination-sec": {
+ "type": "string",
+ "title": "The maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node.",
+ "description": "The default is 600."
+ },
+ "max-node-provision-time": {
+ "type": "string",
+ "title": "The maximum time the autoscaler waits for a node to be provisioned.",
+ "description": "The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "max-total-unready-percentage": {
+ "type": "string",
+ "title": "The maximum percentage of unready nodes in the cluster. After this percentage is exceeded, cluster autoscaler halts operations.",
+ "description": "The default is 45. The maximum is 100 and the minimum is 0."
+ },
+ "new-pod-scale-up-delay": {
+ "type": "string",
+ "title": "Ignore unscheduled pods before they're a certain age.",
+ "description": "For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc)."
+ },
+ "ok-total-unready-count": {
+ "type": "string",
+ "title": "The number of allowed unready nodes, irrespective of max-total-unready-percentage.",
+ "description": "This must be an integer. The default is 3."
+ },
+ "scan-interval": {
+ "type": "string",
+ "title": "How often cluster is reevaluated for scale up or down.",
+ "description": "The default is '10'. Values must be an integer number of seconds."
+ },
+ "scale-down-delay-after-add": {
+ "type": "string",
+ "title": "How long after scale up that scale down evaluation resumes",
+ "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-delay-after-delete": {
+ "type": "string",
+ "title": "How long after node deletion that scale down evaluation resumes.",
+ "description": "The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-delay-after-failure": {
+ "type": "string",
+ "title": "How long after scale down failure that scale down evaluation resumes.",
+ "description": "The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-unneeded-time": {
+ "type": "string",
+ "title": "How long a node should be unneeded before it is eligible for scale down.",
+ "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-unready-time": {
+ "type": "string",
+ "title": "How long an unready node should be unneeded before it is eligible for scale down",
+ "description": "The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-utilization-threshold": {
+ "type": "string",
+ "title": "Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down.",
+ "description": "The default is '0.5'."
+ },
+ "skip-nodes-with-local-storage": {
+ "type": "string",
+ "title": "If cluster autoscaler will skip deleting nodes with pods with local storage, for example, EmptyDir or HostPath.",
+ "description": "The default is true."
+ },
+ "skip-nodes-with-system-pods": {
+ "type": "string",
+ "title": "If cluster autoscaler will skip deleting nodes with pods from kube-system (except for DaemonSet or mirror pods)",
+ "description": "The default is true."
+ }
+ },
+ "description": "Parameters to be applied to the cluster-autoscaler when enabled"
+ },
+ "apiServerAccessProfile": {
+ "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile",
+ "description": "The access profile for managed cluster API server."
+ },
+ "diskEncryptionSetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/diskEncryptionSets"
+ }
+ ]
+ },
+ "title": "The Resource ID of the disk encryption set to use for enabling encryption at rest.",
+ "description": "This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'"
+ },
+ "identityProfile": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/UserAssignedIdentity"
+ },
+ "description": "Identities associated with the cluster."
+ },
+ "privateLinkResources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ },
+ "description": "Private link resources associated with the cluster."
+ },
+ "disableLocalAccounts": {
+ "type": "boolean",
+ "title": "If local accounts should be disabled on the Managed Cluster.",
+ "description": "If set to true, getting static credentials will be disabled for this cluster. This must only be used on Managed Clusters that are AAD enabled. For more details see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview)."
+ },
+ "httpProxyConfig": {
+ "$ref": "#/definitions/ManagedClusterHTTPProxyConfig",
+ "description": "Configurations for provisioning the cluster with HTTP proxy servers."
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfile",
+ "description": "Security profile for the managed cluster."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/ManagedClusterStorageProfile",
+ "description": "Storage profile for the managed cluster."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ },
+ "title": "PublicNetworkAccess of the managedCluster",
+ "description": "Allow or deny public network access for AKS"
+ },
+ "workloadAutoScalerProfile": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfile"
+ },
+ "azureMonitorProfile": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfile"
+ }
+ },
+ "description": "Properties of the managed cluster."
+ },
+ "PowerState": {
+ "type": "object",
+ "description": "Describes the Power State of the cluster",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "Tells whether the cluster is Running or Stopped",
+ "enum": [
+ "Running",
+ "Stopped"
+ ],
+ "x-ms-enum": {
+ "name": "code",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Running",
+ "description": "The cluster is running."
+ },
+ {
+ "value": "Stopped",
+ "description": "The cluster is stopped."
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ManagedClusterAPIServerAccessProfile": {
+ "type": "object",
+ "properties": {
+ "authorizedIPRanges": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The IP ranges authorized to access the Kubernetes API server.",
+ "description": "IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges)."
+ },
+ "enablePrivateCluster": {
+ "type": "boolean",
+ "title": "Whether to create the cluster as a private cluster or not.",
+ "description": "For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters)."
+ },
+ "privateDNSZone": {
+ "type": "string",
+ "title": "The private DNS zone mode for the cluster.",
+ "description": "The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'."
+ },
+ "enablePrivateClusterPublicFQDN": {
+ "type": "boolean",
+ "description": "Whether to create additional public FQDN for private cluster or not."
+ },
+ "disableRunCommand": {
+ "type": "boolean",
+ "description": "Whether to disable run command for the cluster or not."
+ }
+ },
+ "description": "Access profile for managed cluster API server."
+ },
+ "ManagedClusterIdentity": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal id of the system assigned identity which is used by master components."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant id of the system assigned identity which is used by master components."
+ },
+ "type": {
+ "type": "string",
+ "title": "The type of identity used for the managed cluster.",
+ "description": "For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "SystemAssigned",
+ "description": "Use an implicitly created system assigned managed identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the system assigned managed identity to manipulate Azure resources."
+ },
+ {
+ "value": "UserAssigned",
+ "description": "Use a user-specified identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the specified user assigned managed identity to manipulate Azure resources."
+ },
+ {
+ "value": "None",
+ "description": "Do not use a managed identity for the Managed Cluster, service principal will be used instead."
+ }
+ ]
+ }
+ },
+ "delegatedResources": {
+ "$ref": "../../../../../../common-types/resource-management/v4/managedidentitywithdelegation.json#/definitions/DelegatedResources",
+ "description": "The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only."
+ },
+ "userAssignedIdentities": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "object",
+ "x-ms-client-name": "ManagedServiceIdentityUserAssignedIdentitiesValue",
+ "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."
+ }
+ }
+ },
+ "title": "The user identity associated with the managed cluster. This identity will be used in control plane. Only one user assigned identity is allowed.",
+ "description": "The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."
+ }
+ },
+ "description": "Identity for the managed cluster."
+ },
+ "UserAssignedIdentity": {
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.ManagedIdentity/userAssignedIdentities"
+ }
+ ]
+ },
+ "description": "The resource ID of the user assigned identity."
+ },
+ "clientId": {
+ "type": "string",
+ "description": "The client ID of the user assigned identity."
+ },
+ "objectId": {
+ "type": "string",
+ "description": "The object ID of the user assigned identity."
+ }
+ },
+ "description": "Details about a user assigned identity."
+ },
+ "ManagedClusterAccessProfile": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "AccessProfile of a managed cluster.",
+ "$ref": "#/definitions/AccessProfile",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "Managed cluster Access Profile.",
+ "x-ms-azure-resource": false
+ },
+ "AccessProfile": {
+ "type": "object",
+ "properties": {
+ "kubeConfig": {
+ "type": "string",
+ "format": "byte",
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "Profile for enabling a user to access a managed cluster."
+ },
+ "ManagedClusterPoolUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "name": {
+ "type": "string",
+ "description": "The Agent Pool name."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "upgrades": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether the Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of orchestrator types and versions available for upgrade."
+ }
+ },
+ "required": [
+ "kubernetesVersion",
+ "osType"
+ ],
+ "description": "The list of available upgrade versions."
+ },
+ "ManagedClusterUpgradeProfileProperties": {
+ "type": "object",
+ "properties": {
+ "controlPlaneProfile": {
+ "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile",
+ "description": "The list of available upgrade versions for the control plane."
+ },
+ "agentPoolProfiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of available upgrade versions for agent pools."
+ }
+ },
+ "required": [
+ "controlPlaneProfile",
+ "agentPoolProfiles"
+ ],
+ "description": "Control plane and agent pool upgrade profiles."
+ },
+ "ManagedClusterAutoUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "upgradeChannel": {
+ "type": "string",
+ "enum": [
+ "rapid",
+ "stable",
+ "patch",
+ "node-image",
+ "none"
+ ],
+ "x-ms-enum": {
+ "name": "upgradeChannel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "rapid",
+ "description": "Automatically upgrade the cluster to the latest supported patch release on the latest supported minor version. In cases where the cluster is at a version of Kubernetes that is at an N-2 minor version where N is the latest supported minor version, the cluster first upgrades to the latest supported patch version on N-1 minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster first is upgraded to 1.18.6, then is upgraded to 1.19.1."
+ },
+ {
+ "value": "stable",
+ "description": "Automatically upgrade the cluster to the latest supported patch release on minor version N-1, where N is the latest supported minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.18.6."
+ },
+ {
+ "value": "patch",
+ "description": "Automatically upgrade the cluster to the latest supported patch version when it becomes available while keeping the minor version the same. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.17.9."
+ },
+ {
+ "value": "node-image",
+ "description": "Automatically upgrade the node image to the latest version available. Consider using nodeOSUpgradeChannel instead as that allows you to configure node OS patching separate from Kubernetes version patching"
+ },
+ {
+ "value": "none",
+ "description": "Disables auto-upgrades and keeps the cluster at its current version of Kubernetes."
+ }
+ ]
+ },
+ "title": "The upgrade channel for auto upgrade. The default is 'none'.",
+ "description": "For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel)."
+ },
+ "nodeOSUpgradeChannel": {
+ "type": "string",
+ "enum": [
+ "Unmanaged",
+ "None",
+ "NodeImage"
+ ],
+ "x-ms-enum": {
+ "name": "nodeOSUpgradeChannel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "None",
+ "description": "No attempt to update your machines OS will be made either by OS or by rolling VHDs. This means you are responsible for your security updates"
+ },
+ {
+ "value": "Unmanaged",
+ "description": "OS updates will be applied automatically through the OS built-in patching infrastructure. Newly scaled in machines will be unpatched initially and will be patched at some point by the OS's infrastructure. Behavior of this option depends on the OS in question. Ubuntu and Mariner apply security patches through unattended upgrade roughly once a day around 06:00 UTC. Windows does not apply security patches automatically and so for them this option is equivalent to None till further notice"
+ },
+ {
+ "value": "NodeImage",
+ "description": "AKS will update the nodes with a newly patched VHD containing security fixes and bugfixes on a weekly cadence. With the VHD update machines will be rolling reimaged to that VHD following maintenance windows and surge settings. No extra VHD cost is incurred when choosing this option as AKS hosts the images."
+ }
+ ]
+ },
+ "title": "Node OS Upgrade Channel",
+ "description": "Manner in which the OS on your nodes is updated. The default is NodeImage."
+ }
+ },
+ "description": "Auto upgrade profile for a managed cluster."
+ },
+ "ManagedClusterAADProfile": {
+ "type": "object",
+ "properties": {
+ "managed": {
+ "type": "boolean",
+ "description": "Whether to enable managed AAD."
+ },
+ "enableAzureRBAC": {
+ "type": "boolean",
+ "description": "Whether to enable Azure RBAC for Kubernetes authorization."
+ },
+ "adminGroupObjectIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of AAD group object IDs that will have admin role of the cluster."
+ },
+ "clientAppID": {
+ "type": "string",
+ "description": "(DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "serverAppID": {
+ "type": "string",
+ "description": "(DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "serverAppSecret": {
+ "type": "string",
+ "description": "(DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "tenantID": {
+ "type": "string",
+ "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription."
+ }
+ },
+ "title": "AADProfile specifies attributes for Azure Active Directory integration.",
+ "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)."
+ },
+ "ManagedClusterAddonProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the add-on is enabled or not."
+ },
+ "config": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Key-value pairs for configuring an add-on."
+ },
+ "identity": {
+ "readOnly": true,
+ "description": "Information of user assigned identity used by this add-on.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/UserAssignedIdentity"
+ }
+ ]
+ }
+ },
+ "required": [
+ "enabled"
+ ],
+ "description": "A Kubernetes add-on profile for a managed cluster."
+ },
+ "ManagedClusterPodIdentity": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the pod identity."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the pod identity."
+ },
+ "bindingSelector": {
+ "type": "string",
+ "description": "The binding selector to use for the AzureIdentityBinding resource."
+ },
+ "identity": {
+ "$ref": "#/definitions/UserAssignedIdentity",
+ "description": "The user assigned identity details."
+ },
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state of the pod identity.",
+ "enum": [
+ "Assigned",
+ "Canceled",
+ "Deleting",
+ "Failed",
+ "Succeeded",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterPodIdentityProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "provisioningInfo": {
+ "type": "object",
+ "readOnly": true,
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProvisioningError",
+ "description": "Pod identity assignment error (if any)."
+ }
+ }
+ }
+ },
+ "required": [
+ "name",
+ "namespace",
+ "identity"
+ ],
+ "description": "Details about the pod identity assigned to the Managed Cluster."
+ },
+ "ManagedClusterPodIdentityProvisioningError": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProvisioningErrorBody",
+ "description": "Details about the error."
+ }
+ },
+ "description": "An error response from the pod identity provisioning."
+ },
+ "ManagedClusterPodIdentityProvisioningErrorBody": {
+ "type": "object",
+ "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/ManagedClusterPodIdentityProvisioningErrorBody"
+ },
+ "x-ms-identifiers": [],
+ "description": "A list of additional details about the error."
+ }
+ },
+ "description": "An error response from the pod identity provisioning."
+ },
+ "ManagedClusterPodIdentityException": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the pod identity exception."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the pod identity exception."
+ },
+ "podLabels": {
+ "type": "object",
+ "description": "The pod labels to match.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "name",
+ "namespace",
+ "podLabels"
+ ],
+ "title": "A pod identity exception, which allows pods with certain labels to access the Azure Instance Metadata Service (IMDS) endpoint without being intercepted by the node-managed identity (NMI) server.",
+ "description": "See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details."
+ },
+ "ManagedClusterPodIdentityProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the pod identity addon is enabled."
+ },
+ "allowNetworkPluginKubenet": {
+ "type": "boolean",
+ "title": "Whether pod identity is allowed to run on clusters with Kubenet networking.",
+ "description": "Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information."
+ },
+ "userAssignedIdentities": {
+ "description": "The pod identities to use in the cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPodIdentity"
+ },
+ "x-ms-identifiers": []
+ },
+ "userAssignedIdentityExceptions": {
+ "description": "The pod identity exceptions to allow.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityException"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "title": "The pod identity profile of the Managed Cluster.",
+ "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration."
+ },
+ "ManagedClusterOIDCIssuerProfile": {
+ "type": "object",
+ "properties": {
+ "issuerURL": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The OIDC issuer url of the Managed Cluster."
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the OIDC issuer is enabled."
+ }
+ },
+ "description": "The OIDC issuer profile of the Managed Cluster."
+ },
+ "ManagedClusterUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the upgrade profile."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the upgrade profile."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the upgrade profile."
+ },
+ "properties": {
+ "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties",
+ "description": "The properties of the upgrade profile.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available upgrades for compute pools."
+ },
+ "AgentPoolUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the agent pool upgrade profile."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the agent pool upgrade profile."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the agent pool upgrade profile."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolUpgradeProfileProperties",
+ "description": "The properties of the agent pool upgrade profile.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available upgrades for an agent pool."
+ },
+ "AgentPoolUpgradeProfileProperties": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "upgrades": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether the Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of orchestrator types and versions available for upgrade."
+ },
+ "latestNodeImageVersion": {
+ "type": "string",
+ "description": "The latest AKS supported node image version."
+ }
+ },
+ "required": [
+ "kubernetesVersion",
+ "osType"
+ ],
+ "description": "The list of available upgrade versions."
+ },
+ "AgentPoolAvailableVersions": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the agent pool version list."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the agent pool version list."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Type of the agent pool version list."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolAvailableVersionsProperties",
+ "description": "Properties of agent pool available versions.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available versions for an agent pool."
+ },
+ "AgentPoolAvailableVersionsProperties": {
+ "type": "object",
+ "properties": {
+ "agentPoolVersions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "default": {
+ "type": "boolean",
+ "description": "Whether this version is the default agent pool version."
+ },
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of versions available for agent pool."
+ }
+ },
+ "description": "The list of available agent pool versions."
+ },
+ "OSType": {
+ "type": "string",
+ "default": "Linux",
+ "enum": [
+ "Linux",
+ "Windows"
+ ],
+ "x-ms-enum": {
+ "name": "OSType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Linux",
+ "description": "Use Linux."
+ },
+ {
+ "value": "Windows",
+ "description": "Use Windows."
+ }
+ ]
+ },
+ "description": "The operating system type. The default is Linux."
+ },
+ "OSSKU": {
+ "type": "string",
+ "enum": [
+ "Ubuntu",
+ "CBLMariner",
+ "AzureLinux",
+ "Windows2019",
+ "Windows2022"
+ ],
+ "x-ms-enum": {
+ "name": "OSSKU",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Ubuntu",
+ "description": "Use Ubuntu as the OS for node images."
+ },
+ {
+ "value": "AzureLinux",
+ "description": "Use AzureLinux as the OS for node images. Azure Linux is a container-optimized Linux distro built by Microsoft, visit https://aka.ms/azurelinux for more information."
+ },
+ {
+ "value": "CBLMariner",
+ "description": "Deprecated OSSKU. Microsoft recommends that new deployments choose 'AzureLinux' instead."
+ },
+ {
+ "value": "Windows2019",
+ "description": "Use Windows2019 as the OS for node images. Unsupported for system node pools. Windows2019 only supports Windows2019 containers; it cannot run Windows2022 containers and vice versa."
+ },
+ {
+ "value": "Windows2022",
+ "description": "Use Windows2022 as the OS for node images. Unsupported for system node pools. Windows2022 only supports Windows2022 containers; it cannot run Windows2019 containers and vice versa."
+ }
+ ]
+ },
+ "description": "Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows."
+ },
+ "ScaleSetPriority": {
+ "type": "string",
+ "default": "Regular",
+ "enum": [
+ "Spot",
+ "Regular"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleSetPriority",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Spot",
+ "description": "Spot priority VMs will be used. There is no SLA for spot nodes. See [spot on AKS](https://docs.microsoft.com/azure/aks/spot-node-pool) for more information."
+ },
+ {
+ "value": "Regular",
+ "description": "Regular VMs will be used."
+ }
+ ]
+ },
+ "description": "The Virtual Machine Scale Set priority."
+ },
+ "ScaleSetEvictionPolicy": {
+ "type": "string",
+ "default": "Delete",
+ "enum": [
+ "Delete",
+ "Deallocate"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleSetEvictionPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Delete",
+ "description": "Nodes in the underlying Scale Set of the node pool are deleted when they're evicted."
+ },
+ {
+ "value": "Deallocate",
+ "description": "Nodes in the underlying Scale Set of the node pool are set to the stopped-deallocated state upon eviction. Nodes in the stopped-deallocated state count against your compute quota and can cause issues with cluster scaling or upgrading."
+ }
+ ]
+ },
+ "title": "The Virtual Machine Scale Set eviction policy.",
+ "description": "The eviction policy specifies what to do with the VM when it is evicted. The default is Delete. For more information about eviction see [spot VMs](https://docs.microsoft.com/azure/virtual-machines/spot-vms)"
+ },
+ "SpotMaxPrice": {
+ "type": "number",
+ "default": -1,
+ "title": "The max price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.",
+ "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)"
+ },
+ "ScaleDownMode": {
+ "type": "string",
+ "enum": [
+ "Delete",
+ "Deallocate"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleDownMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Delete",
+ "description": "Create new instances during scale up and remove instances during scale down."
+ },
+ {
+ "value": "Deallocate",
+ "description": "Attempt to start deallocated instances (if they exist) during scale up and deallocate instances during scale down."
+ }
+ ]
+ },
+ "description": "Describes how VMs are added to or removed from Agent Pools. See [billing states](https://docs.microsoft.com/azure/virtual-machines/states-billing)."
+ },
+ "ProximityPlacementGroupID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/proximityPlacementGroups"
+ }
+ ]
+ },
+ "description": "The ID for Proximity Placement Group."
+ },
+ "CredentialResults": {
+ "type": "object",
+ "properties": {
+ "kubeconfigs": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/CredentialResult"
+ },
+ "x-ms-identifiers": [],
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "The list credential result response."
+ },
+ "CredentialResult": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the credential."
+ },
+ "value": {
+ "type": "string",
+ "format": "byte",
+ "readOnly": true,
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "The credential result response."
+ },
+ "CloudError": {
+ "type": "object",
+ "x-ms-external": true,
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/CloudErrorBody",
+ "description": "Details about the error."
+ }
+ },
+ "description": "An error response from the Container service."
+ },
+ "CloudErrorBody": {
+ "type": "object",
+ "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": [],
+ "description": "A list of additional details about the error."
+ }
+ },
+ "description": "An error response from the Container service."
+ },
+ "ManagedClusterSKU": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of a managed cluster SKU.",
+ "enum": [
+ "Base"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterSKUName",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Base",
+ "description": "Base option for the AKS control plane."
+ }
+ ]
+ }
+ },
+ "tier": {
+ "type": "string",
+ "title": "The tier of a managed cluster SKU.",
+ "description": "If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details.",
+ "enum": [
+ "Standard",
+ "Free",
+ "Premium"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterSKUTier",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Premium",
+ "description": "Cluster has premium capabilities in addition to all of the capabilities included in 'Standard'. Premium enables selection of LongTermSupport (aka.ms/aks/lts) for certain Kubernetes versions."
+ },
+ {
+ "value": "Standard",
+ "description": "Recommended for mission-critical and production workloads. Includes Kubernetes control plane autoscaling, workload-intensive testing, and up to 5,000 nodes per cluster. Guarantees 99.95% availability of the Kubernetes API server endpoint for clusters that use Availability Zones and 99.9% of availability for clusters that don't use Availability Zones."
+ },
+ {
+ "value": "Free",
+ "description": "The cluster management is free, but charged for VM, storage, and networking usage. Best for experimenting, learning, simple testing, or workloads with fewer than 10 nodes. Not recommended for production use cases."
+ }
+ ]
+ }
+ }
+ },
+ "description": "The SKU of a Managed Cluster."
+ },
+ "PrivateEndpointConnectionListResult": {
+ "type": "object",
+ "description": "A list of private endpoint connections",
+ "properties": {
+ "value": {
+ "description": "The collection value.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "description": "A private endpoint connection",
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the private endpoint connection."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection.",
+ "externalDocs": {
+ "url": "https://aka.ms/search-naming-rules"
+ }
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type."
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "description": "The properties of a private endpoint connection.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "PrivateEndpointConnectionProperties": {
+ "type": "object",
+ "description": "Properties of a private endpoint connection.",
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Canceled",
+ "Creating",
+ "Deleting",
+ "Failed",
+ "Succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The resource of private endpoint."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ }
+ },
+ "required": [
+ "privateLinkServiceConnectionState"
+ ]
+ },
+ "PrivateEndpoint": {
+ "type": "object",
+ "description": "Private endpoint which a connection belongs to.",
+ "properties": {
+ "id": {
+ "description": "The resource ID of the private endpoint",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "description": "The state of a private link service connection.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "type": "string",
+ "description": "The private link service connection status.",
+ "x-ms-enum": {
+ "name": "ConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "type": "string",
+ "description": "The private link service connection description."
+ }
+ }
+ },
+ "PrivateLinkResourcesListResult": {
+ "type": "object",
+ "description": "A list of private link resources",
+ "properties": {
+ "value": {
+ "description": "The collection value.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ }
+ }
+ },
+ "PrivateLinkResource": {
+ "description": "A private link resource",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the private link resource."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the private link resource.",
+ "externalDocs": {
+ "url": "https://aka.ms/search-naming-rules"
+ }
+ },
+ "type": {
+ "type": "string",
+ "description": "The resource type."
+ },
+ "groupId": {
+ "type": "string",
+ "description": "The group ID of the resource."
+ },
+ "requiredMembers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The RequiredMembers of the resource"
+ },
+ "privateLinkServiceID": {
+ "readOnly": true,
+ "type": "string",
+ "format": "arm-id",
+ "description": "The private link service ID of the resource, this field is exposed only to NRP internally."
+ }
+ }
+ },
+ "OSDiskType": {
+ "type": "string",
+ "enum": [
+ "Managed",
+ "Ephemeral"
+ ],
+ "x-ms-enum": {
+ "name": "OSDiskType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Managed",
+ "description": "Azure replicates the operating system disk for a virtual machine to Azure storage to avoid data loss should the VM need to be relocated to another host. Since containers aren't designed to have local state persisted, this behavior offers limited value while providing some drawbacks, including slower node provisioning and higher read/write latency."
+ },
+ {
+ "value": "Ephemeral",
+ "description": "Ephemeral OS disks are stored only on the host machine, just like a temporary disk. This provides lower read/write latency, along with faster node scaling and cluster upgrades."
+ }
+ ]
+ },
+ "title": "The OS disk type to be used for machines in the agent pool.",
+ "description": "The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os)."
+ },
+ "KubeletDiskType": {
+ "type": "string",
+ "enum": [
+ "OS",
+ "Temporary"
+ ],
+ "x-ms-enum": {
+ "name": "KubeletDiskType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "OS",
+ "description": "Kubelet will use the OS disk for its data."
+ },
+ {
+ "value": "Temporary",
+ "description": "Kubelet will use the temporary disk for its data."
+ }
+ ]
+ },
+ "description": "Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage."
+ },
+ "WorkloadRuntime": {
+ "type": "string",
+ "enum": [
+ "OCIContainer",
+ "WasmWasi"
+ ],
+ "x-ms-enum": {
+ "name": "WorkloadRuntime",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "OCIContainer",
+ "description": "Nodes will use Kubelet to run standard OCI container workloads."
+ },
+ {
+ "value": "WasmWasi",
+ "description": "Nodes will use Krustlet to run WASM workloads using the WASI provider (Preview)."
+ }
+ ]
+ },
+ "description": "Determines the type of workload a node can run."
+ },
+ "KubeletConfig": {
+ "title": "Kubelet configurations of agent nodes.",
+ "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.",
+ "type": "object",
+ "properties": {
+ "cpuManagerPolicy": {
+ "type": "string",
+ "title": "The CPU Manager policy to use.",
+ "description": "The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'."
+ },
+ "cpuCfsQuota": {
+ "type": "boolean",
+ "title": "If CPU CFS quota enforcement is enabled for containers that specify CPU limits.",
+ "description": "The default is true."
+ },
+ "cpuCfsQuotaPeriod": {
+ "type": "string",
+ "title": "The CPU CFS quota period value.",
+ "description": "The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'."
+ },
+ "imageGcHighThreshold": {
+ "type": "integer",
+ "format": "int32",
+ "title": "The percent of disk usage after which image garbage collection is always run.",
+ "description": "To disable image garbage collection, set to 100. The default is 85%"
+ },
+ "imageGcLowThreshold": {
+ "type": "integer",
+ "format": "int32",
+ "title": "The percent of disk usage before which image garbage collection is never run.",
+ "description": "This cannot be set higher than imageGcHighThreshold. The default is 80%"
+ },
+ "topologyManagerPolicy": {
+ "type": "string",
+ "title": "The Topology Manager policy to use.",
+ "description": "For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'."
+ },
+ "allowedUnsafeSysctls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`)."
+ },
+ "failSwapOn": {
+ "type": "boolean",
+ "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node."
+ },
+ "containerLogMaxSizeMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated."
+ },
+ "containerLogMaxFiles": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2.",
+ "minimum": 2
+ },
+ "podMaxPids": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of processes per pod."
+ }
+ }
+ },
+ "LinuxOSConfig": {
+ "title": "OS configurations of Linux agent nodes.",
+ "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.",
+ "type": "object",
+ "properties": {
+ "sysctls": {
+ "$ref": "#/definitions/SysctlConfig",
+ "description": "Sysctl settings for Linux agent nodes."
+ },
+ "transparentHugePageEnabled": {
+ "type": "string",
+ "title": "Whether transparent hugepages are enabled.",
+ "description": "Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)."
+ },
+ "transparentHugePageDefrag": {
+ "type": "string",
+ "title": "Whether the kernel should make aggressive use of memory compaction to make more hugepages available.",
+ "description": "Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)."
+ },
+ "swapFileSizeMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The size in MB of a swap file that will be created on each node."
+ }
+ }
+ },
+ "SysctlConfig": {
+ "description": "Sysctl settings for Linux agent nodes.",
+ "type": "object",
+ "properties": {
+ "netCoreSomaxconn": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.somaxconn."
+ },
+ "netCoreNetdevMaxBacklog": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.netdev_max_backlog."
+ },
+ "netCoreRmemDefault": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.rmem_default."
+ },
+ "netCoreRmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.rmem_max."
+ },
+ "netCoreWmemDefault": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.wmem_default."
+ },
+ "netCoreWmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.wmem_max."
+ },
+ "netCoreOptmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.optmem_max."
+ },
+ "netIpv4TcpMaxSynBacklog": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog."
+ },
+ "netIpv4TcpMaxTwBuckets": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets."
+ },
+ "netIpv4TcpFinTimeout": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_fin_timeout."
+ },
+ "netIpv4TcpKeepaliveTime": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_time."
+ },
+ "netIpv4TcpKeepaliveProbes": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_probes."
+ },
+ "netIpv4TcpkeepaliveIntvl": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl."
+ },
+ "netIpv4TcpTwReuse": {
+ "type": "boolean",
+ "description": "Sysctl setting net.ipv4.tcp_tw_reuse."
+ },
+ "netIpv4IpLocalPortRange": {
+ "type": "string",
+ "description": "Sysctl setting net.ipv4.ip_local_port_range."
+ },
+ "netIpv4NeighDefaultGcThresh1": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1."
+ },
+ "netIpv4NeighDefaultGcThresh2": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2."
+ },
+ "netIpv4NeighDefaultGcThresh3": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3."
+ },
+ "netNetfilterNfConntrackMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.netfilter.nf_conntrack_max."
+ },
+ "netNetfilterNfConntrackBuckets": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.netfilter.nf_conntrack_buckets."
+ },
+ "fsInotifyMaxUserWatches": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.inotify.max_user_watches."
+ },
+ "fsFileMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.file-max."
+ },
+ "fsAioMaxNr": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.aio-max-nr."
+ },
+ "fsNrOpen": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.nr_open."
+ },
+ "kernelThreadsMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting kernel.threads-max."
+ },
+ "vmMaxMapCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.max_map_count."
+ },
+ "vmSwappiness": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.swappiness."
+ },
+ "vmVfsCachePressure": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.vfs_cache_pressure."
+ }
+ }
+ },
+ "ManagedClusterHTTPProxyConfig": {
+ "description": "Cluster HTTP proxy configuration.",
+ "type": "object",
+ "properties": {
+ "httpProxy": {
+ "type": "string",
+ "description": "The HTTP proxy server endpoint to use."
+ },
+ "httpsProxy": {
+ "type": "string",
+ "description": "The HTTPS proxy server endpoint to use."
+ },
+ "noProxy": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The endpoints that should not go through proxy."
+ },
+ "trustedCa": {
+ "type": "string",
+ "description": "Alternative CA cert to use for connecting to proxy servers."
+ }
+ }
+ },
+ "GPUInstanceProfile": {
+ "type": "string",
+ "enum": [
+ "MIG1g",
+ "MIG2g",
+ "MIG3g",
+ "MIG4g",
+ "MIG7g"
+ ],
+ "x-ms-enum": {
+ "name": "GPUInstanceProfile ",
+ "modelAsString": true
+ },
+ "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU."
+ },
+ "ExtendedLocationType": {
+ "type": "string",
+ "description": "The type of extendedLocation.",
+ "enum": [
+ "EdgeZone"
+ ],
+ "x-ms-enum": {
+ "name": "ExtendedLocationTypes",
+ "modelAsString": true
+ }
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "description": "The complex type of the extended location.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extended location."
+ },
+ "type": {
+ "$ref": "#/definitions/ExtendedLocationType",
+ "description": "The type of the extended location."
+ }
+ }
+ },
+ "OSOptionProperty": {
+ "type": "object",
+ "properties": {
+ "os-type": {
+ "type": "string",
+ "description": "The OS type."
+ },
+ "enable-fips-image": {
+ "type": "boolean",
+ "description": "Whether the image is FIPS-enabled."
+ }
+ },
+ "required": [
+ "os-type",
+ "enable-fips-image"
+ ],
+ "description": "OS option property."
+ },
+ "OSOptionPropertyList": {
+ "type": "object",
+ "properties": {
+ "osOptionPropertyList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSOptionProperty"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of OS options."
+ }
+ },
+ "required": [
+ "osOptionPropertyList"
+ ],
+ "description": "The list of OS option properties."
+ },
+ "OSOptionProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the OS option resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the OS option resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the OS option resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/OSOptionPropertyList",
+ "description": "The list of OS options.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The OS option profile."
+ },
+ "EndpointDependency": {
+ "description": "A domain name that AKS agent nodes are reaching at.",
+ "type": "object",
+ "properties": {
+ "domainName": {
+ "description": "The domain name of the dependency.",
+ "type": "string"
+ },
+ "endpointDetails": {
+ "description": "The Ports and Protocols used when connecting to domainName.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointDetail"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "EndpointDetail": {
+ "description": "connect information from the AKS agent nodes to a single endpoint.",
+ "type": "object",
+ "properties": {
+ "ipAddress": {
+ "description": "An IP Address that Domain Name currently resolves to.",
+ "type": "string"
+ },
+ "port": {
+ "format": "int32",
+ "description": "The port an endpoint is connected to.",
+ "type": "integer"
+ },
+ "protocol": {
+ "description": "The protocol used for connection",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the detail",
+ "type": "string"
+ }
+ }
+ },
+ "OutboundEnvironmentEndpoint": {
+ "description": "Egress endpoints which AKS agent nodes connect to for common purpose.",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "The category of endpoints accessed by the AKS agent node, e.g. azure-resource-management, apiserver, etc.",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "The endpoints that AKS agent nodes connect to",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointDependency"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "OutboundEnvironmentEndpointCollection": {
+ "description": "Collection of OutboundEnvironmentEndpoint",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OutboundEnvironmentEndpoint"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedClusterSecurityProfile": {
+ "type": "object",
+ "properties": {
+ "defender": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileDefender",
+ "description": "Microsoft Defender settings for the security profile."
+ },
+ "azureKeyVaultKms": {
+ "$ref": "#/definitions/AzureKeyVaultKms",
+ "description": "Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile."
+ },
+ "workloadIdentity": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileWorkloadIdentity",
+ "description": "Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details."
+ },
+ "imageCleaner": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileImageCleaner",
+ "description": "Image Cleaner settings for the security profile."
+ }
+ },
+ "description": "Security profile for the container service cluster."
+ },
+ "AzureKeyVaultKms": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Azure Key Vault key management service. The default is false."
+ },
+ "keyId": {
+ "type": "string",
+ "description": "Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty."
+ },
+ "keyVaultNetworkAccess": {
+ "type": "string",
+ "enum": [
+ "Public",
+ "Private"
+ ],
+ "default": "Public",
+ "x-ms-enum": {
+ "name": "KeyVaultNetworkAccessTypes",
+ "modelAsString": true
+ },
+ "title": "Network access of the key vault",
+ "description": "Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`."
+ },
+ "keyVaultResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ ]
+ },
+ "description": "Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty."
+ }
+ },
+ "description": "Azure Key Vault key management service settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileWorkloadIdentity": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable workload identity."
+ }
+ },
+ "description": "Workload identity settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileImageCleaner": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Image Cleaner on AKS cluster."
+ },
+ "intervalHours": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Image Cleaner scanning interval in hours."
+ }
+ },
+ "description": "Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile."
+ },
+ "ManagedClusterStorageProfile": {
+ "type": "object",
+ "properties": {
+ "diskCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileDiskCSIDriver",
+ "description": "AzureDisk CSI Driver settings for the storage profile."
+ },
+ "fileCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileFileCSIDriver",
+ "description": "AzureFile CSI Driver settings for the storage profile."
+ },
+ "snapshotController": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileSnapshotController",
+ "description": "Snapshot Controller settings for the storage profile."
+ },
+ "blobCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileBlobCSIDriver",
+ "description": "AzureBlob CSI Driver settings for the storage profile."
+ }
+ },
+ "description": "Storage profile for the container service cluster."
+ },
+ "ManagedClusterSecurityProfileDefender": {
+ "type": "object",
+ "properties": {
+ "logAnalyticsWorkspaceResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.OperationalInsights/workspaces"
+ }
+ ]
+ },
+ "description": "Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty."
+ },
+ "securityMonitoring": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileDefenderSecurityMonitoring",
+ "description": "Microsoft Defender threat detection for Cloud settings for the security profile."
+ }
+ },
+ "description": "Microsoft Defender settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileDefenderSecurityMonitoring": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Defender threat detection"
+ }
+ },
+ "description": "Microsoft Defender settings for the security profile threat detection."
+ },
+ "ManagedClusterStorageProfileDiskCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureDisk CSI Driver. The default value is true."
+ }
+ },
+ "description": "AzureDisk CSI Driver settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileFileCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureFile CSI Driver. The default value is true."
+ }
+ },
+ "description": "AzureFile CSI Driver settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileSnapshotController": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Snapshot Controller. The default value is true."
+ }
+ },
+ "description": "Snapshot Controller settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileBlobCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureBlob CSI Driver. The default value is false."
+ }
+ },
+ "description": "AzureBlob CSI Driver settings for the storage profile."
+ },
+ "CreationData": {
+ "description": "Data used when creating a target resource from a source resource.",
+ "type": "object",
+ "properties": {
+ "sourceResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "This is the ARM ID of the source object to be used to create the target object."
+ }
+ }
+ },
+ "SnapshotListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "The list of snapshots."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of snapshot results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Snapshots operation."
+ },
+ "Snapshot": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "Properties of a snapshot.",
+ "$ref": "#/definitions/SnapshotProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "A node pool snapshot resource."
+ },
+ "SnapshotProperties": {
+ "type": "object",
+ "properties": {
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source agent pool resource ID to create this snapshot."
+ },
+ "snapshotType": {
+ "$ref": "#/definitions/SnapshotType"
+ },
+ "kubernetesVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of Kubernetes."
+ },
+ "nodeImageVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of node image."
+ },
+ "osType": {
+ "readOnly": true,
+ "$ref": "#/definitions/OSType"
+ },
+ "osSku": {
+ "readOnly": true,
+ "$ref": "#/definitions/OSSKU"
+ },
+ "vmSize": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The size of the VM."
+ },
+ "enableFIPS": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Whether to use a FIPS-enabled OS."
+ }
+ },
+ "description": "Properties used to configure a node pool snapshot."
+ },
+ "SnapshotType": {
+ "type": "string",
+ "default": "NodePool",
+ "enum": [
+ "NodePool"
+ ],
+ "x-ms-enum": {
+ "name": "SnapshotType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "NodePool",
+ "description": "The snapshot is a snapshot of a node pool."
+ }
+ ]
+ },
+ "description": "The type of a snapshot. The default is NodePool."
+ },
+ "ManagedClusterWorkloadAutoScalerProfile": {
+ "type": "object",
+ "description": "Workload Auto-scaler profile for the managed cluster.",
+ "properties": {
+ "keda": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfileKeda"
+ },
+ "verticalPodAutoscaler": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler"
+ }
+ }
+ },
+ "ManagedClusterWorkloadAutoScalerProfileKeda": {
+ "type": "object",
+ "description": "KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable KEDA."
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler": {
+ "type": "object",
+ "description": "VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable VPA. Default value is false.",
+ "default": false
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "ManagedClusterAzureMonitorProfile": {
+ "type": "object",
+ "description": "Azure Monitor addon profiles for monitoring the managed cluster.",
+ "properties": {
+ "metrics": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfileMetrics"
+ }
+ }
+ },
+ "ManagedClusterAzureMonitorProfileKubeStateMetrics": {
+ "type": "object",
+ "description": "Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details.",
+ "properties": {
+ "metricLabelsAllowlist": {
+ "type": "string",
+ "description": "Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels."
+ },
+ "metricAnnotationsAllowList": {
+ "type": "string",
+ "description": "Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels."
+ }
+ }
+ },
+ "ManagedClusterAzureMonitorProfileMetrics": {
+ "type": "object",
+ "description": "Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling."
+ },
+ "kubeStateMetrics": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfileKubeStateMetrics"
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "KubernetesSupportPlan": {
+ "type": "string",
+ "description": "Different support tiers for AKS managed clusters",
+ "enum": [
+ "KubernetesOfficial",
+ "AKSLongTermSupport"
+ ],
+ "x-ms-enum": {
+ "name": "KubernetesSupportPlan",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "KubernetesOfficial",
+ "description": "Support for the version is the same as for the open source Kubernetes offering. Official Kubernetes open source community support versions for 1 year after release."
+ },
+ {
+ "value": "AKSLongTermSupport",
+ "description": "Support for the version extended past the KubernetesOfficial support of 1 year. AKS continues to patch CVEs for another 1 year, for a total of 2 years of support."
+ }
+ ]
+ }
+ },
+ "KubernetesVersionCapabilities": {
+ "type": "object",
+ "description": "Capabilities on this Kubernetes version.",
+ "properties": {
+ "supportPlan": {
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/KubernetesSupportPlan"
+ }
+ }
+ }
+ },
+ "KubernetesPatchVersion": {
+ "type": "object",
+ "description": "Kubernetes patch version profile",
+ "properties": {
+ "upgrades": {
+ "type": "array",
+ "description": "Possible upgrade path for given patch version",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "KubernetesVersion": {
+ "type": "object",
+ "description": "Kubernetes version profile for given major.minor release.",
+ "properties": {
+ "version": {
+ "type": "string",
+ "description": "major.minor version of Kubernetes release"
+ },
+ "capabilities": {
+ "$ref": "#/definitions/KubernetesVersionCapabilities",
+ "description": "Capabilities on this Kubernetes version."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether this version is in preview mode."
+ },
+ "patchVersions": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/KubernetesPatchVersion"
+ },
+ "description": "Patch versions of Kubernetes release"
+ }
+ }
+ },
+ "KubernetesVersionListResult": {
+ "type": "object",
+ "description": "Hold values properties, which is array of KubernetesVersion",
+ "properties": {
+ "values": {
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/KubernetesVersion"
+ },
+ "description": "Array of AKS supported Kubernetes versions."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ResourceNameParameter": {
+ "name": "resourceName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$",
+ "description": "The name of the managed cluster resource.",
+ "x-ms-parameter-location": "method"
+ },
+ "ResourceTypeParameter": {
+ "name": "resource-type",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The resource type for which the OS options needs to be returned",
+ "x-ms-parameter-location": "method"
+ },
+ "ServerFqdnParameter": {
+ "name": "server-fqdn",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "server fqdn type for credentials to be returned",
+ "x-ms-parameter-location": "method"
+ },
+ "CredentialFormatParameter": {
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "exec",
+ "azure"
+ ],
+ "x-ms-enum": {
+ "name": "format",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Return azure auth-provider kubeconfig. This format is deprecated in v1.22 and will be fully removed in v1.26. See: https://aka.ms/k8s/changes-1-26."
+ },
+ {
+ "value": "exec",
+ "description": "Return exec format kubeconfig. This format requires kubelogin binary in the path."
+ }
+ ]
+ },
+ "description": "Only apply to AAD clusters, specifies the format of returned kubeconfig. Format 'azure' will return azure auth-provider kubeconfig; format 'exec' will return exec format kubeconfig, which requires kubelogin binary in the path.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsAbortOperation.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsAbortOperation.json
new file mode 100644
index 000000000000..512f7ad774fe
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsAbortOperation.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operations/00000000-0000-0000-0000-000000000000?api-version=2023-07-01",
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_CustomNodeConfig.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_CustomNodeConfig.json
new file mode 100644
index 000000000000..72414eddf9b8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_CustomNodeConfig.json
@@ -0,0 +1,124 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_DedicatedHostGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_DedicatedHostGroup.json
new file mode 100644
index 000000000000..2d226d275d18
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_DedicatedHostGroup.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json
new file mode 100644
index 000000000000..6cffa677de66
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableEncryptionAtHost.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableEncryptionAtHost": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableFIPS.json
new file mode 100644
index 000000000000..d6bfb0239258
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableFIPS.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableUltraSSD.json
new file mode 100644
index 000000000000..46b91b52347b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_EnableUltraSSD.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.13",
+ "currentOrchestratorVersion": "1.17.13",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableUltraSSD": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Ephemeral.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Ephemeral.json
new file mode 100644
index 000000000000..9268cb3a6caf
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Ephemeral.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "osDiskSizeGB": 64
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "osDiskSizeGB": 64
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskType": "Ephemeral",
+ "kubeletDiskType": "OS",
+ "osDiskSizeGB": 64
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_GPUMIG.json
new file mode 100644
index 000000000000..46d88a2c3b0e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_GPUMIG.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG2g",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_OSSKU.json
new file mode 100644
index 000000000000..df1a63aca2a7
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_OSSKU.json
@@ -0,0 +1,127 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 12345,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "kubeletConfig": {
+ "cpuManagerPolicy": "static",
+ "cpuCfsQuota": true,
+ "cpuCfsQuotaPeriod": "200ms",
+ "imageGcHighThreshold": 90,
+ "imageGcLowThreshold": 70,
+ "topologyManagerPolicy": "best-effort",
+ "allowedUnsafeSysctls": [
+ "kernel.msg*",
+ "net.core.somaxconn"
+ ],
+ "failSwapOn": false,
+ "podMaxPids": 100
+ },
+ "linuxOSConfig": {
+ "sysctls": {
+ "netCoreWmemDefault": 65536,
+ "netIpv4TcpTwReuse": true,
+ "netIpv4IpLocalPortRange": "20000 60000",
+ "kernelThreadsMax": 99999
+ },
+ "transparentHugePageEnabled": "always",
+ "transparentHugePageDefrag": "madvise",
+ "swapFileSizeMB": 1500
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_PPG.json
new file mode 100644
index 000000000000..92a6545068de
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_PPG.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Snapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Snapshot.json
new file mode 100644
index 000000000000..3cd4d9269162
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Snapshot.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.19.6",
+ "currentOrchestratorVersion": "1.19.6",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Spot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Spot.json
new file mode 100644
index 000000000000..988b51ec9408
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Spot.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "spotMaxPrice": -1
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "spotMaxPrice": -1
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Update.json
new file mode 100644
index 000000000000..c659796e25ae
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_Update.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "tags": {
+ "name1": "val1"
+ },
+ "nodeLabels": {
+ "key1": "val1"
+ },
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete",
+ "mode": "User"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_WasmWasi.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_WasmWasi.json
new file mode 100644
index 000000000000..13bb70a6162b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_WasmWasi.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.17.8",
+ "currentOrchestratorVersion": "1.17.8",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osDiskSizeGB": 64,
+ "mode": "User",
+ "workloadRuntime": "WasmWasi"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_WindowsOSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_WindowsOSSKU.json
new file mode 100644
index 000000000000..a395c715ac87
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsCreate_WindowsOSSKU.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "wnp2",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.23.3",
+ "currentOrchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/wnp2",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "wnp2",
+ "properties": {
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.23.3",
+ "currentOrchestratorVersion": "1.23.3",
+ "count": 3,
+ "vmSize": "Standard_D4s_v3",
+ "maxPods": 110,
+ "osType": "Windows",
+ "osSKU": "Windows2022"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsDelete.json
new file mode 100644
index 000000000000..d3f3cceb76a8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsDelete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGet.json
new file mode 100644
index 000000000000..5f8eab4238c6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGet.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json
new file mode 100644
index 000000000000..82cfa487cf8f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/availableagentpoolversions",
+ "name": "default",
+ "properties": {
+ "agentPoolVersions": [
+ {
+ "kubernetesVersion": "1.12.7"
+ },
+ {
+ "kubernetesVersion": "1.12.8"
+ },
+ {
+ "default": true,
+ "kubernetesVersion": "1.13.5",
+ "isPreview": true
+ }
+ ]
+ },
+ "type": "Microsoft.ContainerService/managedClusters/availableAgentpoolVersions"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGetUpgradeProfile.json
new file mode 100644
index 000000000000..d931b10e5649
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsGetUpgradeProfile.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1/upgradeprofiles/default",
+ "name": "default",
+ "properties": {
+ "kubernetesVersion": "1.12.8",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.13.5"
+ }
+ ],
+ "latestNodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ },
+ "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsList.json
new file mode 100644
index 000000000000..738f0c7aa16e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsUpgradeNodeImageVersion.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsUpgradeNodeImageVersion.json
new file mode 100644
index 000000000000..e79afc0f3a6d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPoolsUpgradeNodeImageVersion.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.ContainerService/locations/westus/operations/00000000-0000-0000-0000-000000000000?api-version=2018-07-31"
+ },
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "UpgradingNodeImageVersion",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "nodeImageVersion": "AKSUbuntu-1604-2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Start.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Start.json
new file mode 100644
index 000000000000..e476a5b9a069
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Start.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Starting",
+ "count": 50,
+ "enableAutoScaling": true,
+ "minCount": 3,
+ "maxCount": 55,
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Starting",
+ "count": 50,
+ "enableAutoScaling": true,
+ "minCount": 3,
+ "maxCount": 55,
+ "powerState": {
+ "code": "Running"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Stop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Stop.json
new file mode 100644
index 000000000000..f4ba9befe48e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Stop.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Stopping",
+ "count": 0,
+ "enableAutoScaling": false,
+ "minCount": null,
+ "maxCount": null,
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Stopping",
+ "count": 0,
+ "enableAutoScaling": false,
+ "minCount": null,
+ "maxCount": null,
+ "powerState": {
+ "code": "Stopped"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Update.json
new file mode 100644
index 000000000000..f34d96ae06a4
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/AgentPools_Update.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "agentPoolName": "agentpool1",
+ "parameters": {
+ "properties": {
+ "orchestratorVersion": "",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
+ "type": "Microsoft.ContainerService/managedClusters/agentPools",
+ "name": "agentpool1",
+ "properties": {
+ "provisioningState": "Updating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "count": 3,
+ "enableAutoScaling": true,
+ "minCount": 2,
+ "maxCount": 2,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "nodeTaints": [
+ "Key1=Value1:NoSchedule"
+ ],
+ "scaleSetPriority": "Spot",
+ "scaleSetEvictionPolicy": "Delete"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ContainerServiceGetOSOptions.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ContainerServiceGetOSOptions.json
new file mode 100644
index 000000000000..e10fd7f00210
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ContainerServiceGetOSOptions.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/locations/location1/osOptions/default",
+ "name": "default",
+ "type": "Microsoft.ContainerService/locations/osOptions",
+ "properties": {
+ "osOptionPropertyList": [
+ {
+ "os-type": "Linux",
+ "enable-fips-image": false
+ },
+ {
+ "os-type": "Windows",
+ "enable-fips-image": false
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/KubernetesVersions_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/KubernetesVersions_List.json
new file mode 100644
index 000000000000..8c5c2616721f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/KubernetesVersions_List.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "location": "location1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "values": [
+ {
+ "version": "1.23",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.23.12": {
+ "upgrades": [
+ "1.23.15",
+ "1.24.6",
+ "1.24.9"
+ ]
+ },
+ "1.23.15": {
+ "upgrades": [
+ "1.24.6",
+ "1.24.9"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.24",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.24.6": {
+ "upgrades": [
+ "1.24.9",
+ "1.25.4",
+ "1.25.5"
+ ]
+ },
+ "1.24.9": {
+ "upgrades": [
+ "1.25.4",
+ "1.25.5"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.25",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.25.4": {
+ "upgrades": [
+ "1.25.5",
+ "1.26.0"
+ ]
+ },
+ "1.25.5": {
+ "upgrades": [
+ "1.26.0"
+ ]
+ }
+ }
+ },
+ {
+ "version": "1.26",
+ "capabilities": {
+ "supportPlan": [
+ "KubernetesOfficial"
+ ]
+ },
+ "patchVersions": {
+ "1.26.0": {
+ "upgrades": []
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsCreate_Update.json
new file mode 100644
index 000000000000..dbb64efbc340
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsCreate_Update.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default",
+ "parameters": {
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "type": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json
new file mode 100644
index 000000000000..214315e4a913
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedAutoUpgradeSchedule",
+ "parameters": {
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "relativeMonthly": {
+ "intervalMonths": 3,
+ "weekIndex": "First",
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "weekly": {
+ "intervalWeeks": 3,
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "weekly": {
+ "intervalWeeks": 3,
+ "dayOfWeek": "Monday"
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "+05:30",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsDelete.json
new file mode 100644
index 000000000000..2cc7c160d6a1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsDelete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json
new file mode 100644
index 000000000000..8666cabf97b0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedNodeOSUpgradeSchedule"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsGet.json
new file mode 100644
index 000000000000..1eb11cd585c1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsGet.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json
new file mode 100644
index 000000000000..f209f2a8f761
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsGet_MaintenanceWindow.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "configName": "aksManagedNodeOSUpgradeSchedule"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedNodeOSUpgradeSchedule",
+ "name": "aksManagedNodeOSUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "daily": {
+ "intervalDays": 3
+ }
+ },
+ "durationHours": 4,
+ "utcOffset": "-07:00",
+ "startDate": "2023-01-01",
+ "startTime": "09:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsList.json
new file mode 100644
index 000000000000..128c33464d3d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsList.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/default",
+ "name": "default",
+ "properties": {
+ "timeInWeek": [
+ {
+ "day": "Monday",
+ "hourSlots": [
+ 1,
+ 2
+ ]
+ }
+ ],
+ "notAllowedTime": [
+ {
+ "start": "2020-11-26T03:00:00Z",
+ "end": "2020-11-30T12:00:00Z"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsList_MaintenanceWindow.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsList_MaintenanceWindow.json
new file mode 100644
index 000000000000..913056c8371f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/MaintenanceConfigurationsList_MaintenanceWindow.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedNodeOSUpgradeSchedule",
+ "name": "aksManagedNodeOSUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "daily": {
+ "intervalDays": 5
+ }
+ },
+ "durationHours": 10,
+ "utcOffset": "-07:00",
+ "startDate": "2023-01-01",
+ "startTime": "13:30"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
+ "name": "aksManagedAutoUpgradeSchedule",
+ "properties": {
+ "maintenanceWindow": {
+ "schedule": {
+ "absoluteMonthly": {
+ "intervalMonths": 3,
+ "dayOfMonth": 15
+ }
+ },
+ "durationHours": 5,
+ "utcOffset": "+00:00",
+ "startDate": "2023-01-01",
+ "startTime": "08:30",
+ "notAllowedDates": [
+ {
+ "start": "2023-02-18",
+ "end": "2023-02-25"
+ },
+ {
+ "start": "2023-12-23",
+ "end": "2024-01-05"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersAbortOperation.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersAbortOperation.json
new file mode 100644
index 000000000000..620582c2b0c0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersAbortOperation.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operations/00000000-0000-0000-0000-000000000000?api-version=2023-07-01",
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2023-07-01"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json
new file mode 100644
index 000000000000..bdda4c1674dc
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json
@@ -0,0 +1,259 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "addonProfiles": {
+ "azureKeyvaultSecretsProvider": {
+ "enabled": true,
+ "config": {
+ "enableSecretRotation": "true",
+ "rotationPollInterval": "2m"
+ }
+ }
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DedicatedHostGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DedicatedHostGroup.json
new file mode 100644
index 000000000000..a727da2c6d18
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DedicatedHostGroup.json
@@ -0,0 +1,249 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "hostGroupID": "/subscriptions/subid1/resourcegroups/rg/providers/Microsoft.Compute/hostGroups/hostgroup1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DisableRunCommand.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DisableRunCommand.json
new file mode 100644
index 000000000000..db85538260bf
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DisableRunCommand.json
@@ -0,0 +1,267 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "KubernetesOfficial"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "KubernetesOfficial"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DualStackNetworking.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DualStackNetworking.json
new file mode 100644
index 000000000000..332e17e095f1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_DualStackNetworking.json
@@ -0,0 +1,323 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ },
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ]
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.22.1",
+ "currentKubernetesVersion": "1.22.1",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.22.1",
+ "currentOrchestratorVersion": "1.22.1",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16",
+ "fd11:1234::/64"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16",
+ "fd00:1234::/108"
+ ],
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2,
+ "countIPv6": 1
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip3-ipv6"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.22.1",
+ "currentKubernetesVersion": "1.22.1",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.22.1",
+ "currentOrchestratorVersion": "1.22.1",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16",
+ "fd11:1234::/64"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16",
+ "fd00:1234::/108"
+ ],
+ "ipFamilies": [
+ "IPv4",
+ "IPv6"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2,
+ "countIPv6": 1
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip3-ipv6"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json
new file mode 100644
index 000000000000..844ae7b9b934
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnableEncryptionAtHost.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnableUltraSSD.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnableUltraSSD.json
new file mode 100644
index 000000000000..cc774b82829e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnableUltraSSD.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableUltraSSD": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnabledFIPS.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnabledFIPS.json
new file mode 100644
index 000000000000..854df18e712d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_EnabledFIPS.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_GPUMIG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_GPUMIG.json
new file mode 100644
index 000000000000..aa19962958f2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_GPUMIG.json
@@ -0,0 +1,283 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_ND96asr_v4",
+ "maxPods": 110,
+ "osType": "Linux",
+ "gpuInstanceProfile": "MIG3g",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_HTTPProxy.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_HTTPProxy.json
new file mode 100644
index 000000000000..aeb27573d25e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_HTTPProxy.json
@@ -0,0 +1,280 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_ManagedNATGateway.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_ManagedNATGateway.json
new file mode 100644
index 000000000000..ab3e41e79ee0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_ManagedNATGateway.json
@@ -0,0 +1,233 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "managedOutboundIPProfile": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "idleTimeoutInMinutes": 4,
+ "managedOutboundIPProfile": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "managedNATGateway",
+ "natGatewayProfile": {
+ "idleTimeoutInMinutes": 4,
+ "managedOutboundIPProfile": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json
new file mode 100644
index 000000000000..110426effa74
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_NodePublicIPPrefix.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodePublicIPPrefixID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/publicIPPrefixes/public-ip-prefix"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_OSSKU.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_OSSKU.json
new file mode 100644
index 000000000000..af0b4a67320b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_OSSKU.json
@@ -0,0 +1,283 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "osSKU": "AzureLinux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "httpProxyConfig": {
+ "httpProxy": "http://myproxy.server.com:8080",
+ "httpsProxy": "https://myproxy.server.com:8080",
+ "noProxy": [
+ "localhost",
+ "127.0.0.1"
+ ],
+ "trustedCa": "Q29uZ3JhdHMhIFlvdSBoYXZlIGZvdW5kIGEgaGlkZGVuIG1lc3NhZ2U="
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PPG.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PPG.json
new file mode 100644
index 000000000000..3f5c4937ceec
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PPG.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "proximityPlacementGroupID": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Compute/proximityPlacementGroups/ppg1"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PodIdentity.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PodIdentity.json
new file mode 100644
index 000000000000..609c1bb6d27b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PodIdentity.json
@@ -0,0 +1,265 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "podIdentityProfile": {
+ "enabled": true,
+ "allowNetworkPluginKubenet": true
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Premium.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Premium.json
new file mode 100644
index 000000000000..97ff779897df
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Premium.json
@@ -0,0 +1,274 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "sku": {
+ "name": "Base",
+ "tier": "Premium"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "disableRunCommand": true
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "supportPlan": "AKSLongTermSupport"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json
new file mode 100644
index 000000000000..4a19308e7b85
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json
@@ -0,0 +1,266 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "privateFQDN": "domain1.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "fqdnSubdomain": "domain1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "privateDNSZone": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.Network/privateDnsZones/privatelink.location1.azmk8s.io"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "privateFQDN": "domain1.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json
new file mode 100644
index 000000000000..3e325acb1ca2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json
@@ -0,0 +1,270 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true,
+ "privateDNSZone": "system"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableEncryptionAtHost": true
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "apiServerAccessProfile": {
+ "enablePrivateCluster": true,
+ "enablePrivateClusterPublicFQDN": true,
+ "privateDNSZone": "system"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "fqdn": "dnsprefix1-ee788a1f.hcp.location1.azmk8s.io",
+ "privateFQDN": "dnsprefix1-aae7e0f0.5cef6058-b6b5-414d-8cb1-4bd14eb0b15c.privatelink.location1.azmk8s.io",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_SecurityProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_SecurityProfile.json
new file mode 100644
index 000000000000..6547ae878c3b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_SecurityProfile.json
@@ -0,0 +1,262 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ },
+ "workloadIdentity": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ },
+ "workloadIdentity": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "securityProfile": {
+ "defender": {
+ "logAnalyticsWorkspaceResourceId": "/subscriptions/SUB_ID/resourcegroups/RG_NAME/providers/microsoft.operationalinsights/workspaces/WORKSPACE_NAME",
+ "securityMonitoring": {
+ "enabled": true
+ }
+ },
+ "workloadIdentity": {
+ "enabled": true
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Snapshot.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Snapshot.json
new file mode 100644
index 000000000000..cef0771dfd06
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Snapshot.json
@@ -0,0 +1,265 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "enableFIPS": true,
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": false,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Update.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Update.json
new file mode 100644
index 000000000000..e7e226375163
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_Update.json
@@ -0,0 +1,317 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "upgradeSettings": {
+ "overrideSettings": {
+ "forceUpgrade": false,
+ "until": "2022-11-01T13:00:00Z"
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "upgradeSettings": {
+ "overrideSettings": {
+ "forceUpgrade": false,
+ "until": "2022-11-01T13:00:00Z"
+ }
+ },
+ "autoScalerProfile": {
+ "balance-similar-node-groups": "true",
+ "expander": "priority",
+ "max-node-provision-time": "15m",
+ "new-pod-scale-up-delay": "1m",
+ "scale-down-delay-after-add": "15m",
+ "scan-interval": "20s",
+ "skip-nodes-with-system-pods": "false"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "scaleDownMode": "Deallocate",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWindowsGmsa.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWindowsGmsa.json
new file mode 100644
index 000000000000..424cfe602db1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWindowsGmsa.json
@@ -0,0 +1,301 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "gmsaProfile": {
+ "enabled": true
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWithAHUB.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWithAHUB.json
new file mode 100644
index 000000000000..23dea45aec0b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWithAHUB.json
@@ -0,0 +1,295 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "licenseType": "Windows_Server"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/subid1/resourceGroups/rgName1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {
+ "principalId": "principalId1",
+ "clientId": "clientId1"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json
new file mode 100644
index 000000000000..add8c2c1f253
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json
@@ -0,0 +1,284 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "loadBalancerProfile": {
+ "managedOutboundIPs": {
+ "count": 2
+ }
+ }
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "aadProfile": {
+ "managed": true,
+ "enableAzureRBAC": true
+ },
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "aadProfile": {
+ "managed": true,
+ "adminGroupObjectIDs": null,
+ "enableAzureRBAC": true,
+ "tenantID": "tenantID"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "enableNodePublicIP": true,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "managedOutboundIPs": {
+ "count": 2
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "aadProfile": {
+ "managed": true,
+ "adminGroupObjectIDs": null,
+ "enableAzureRBAC": true,
+ "tenantID": "tenantID"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UserAssignedNATGateway.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UserAssignedNATGateway.json
new file mode 100644
index 000000000000..b046640e155f
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersCreate_UserAssignedNATGateway.json
@@ -0,0 +1,200 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "location": "location1",
+ "tags": {
+ "tier": "production",
+ "archv2": ""
+ },
+ "sku": {
+ "name": "Basic",
+ "tier": "Free"
+ },
+ "properties": {
+ "kubernetesVersion": "",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "osType": "Linux",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "networkProfile": {
+ "loadBalancerSku": "standard",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser",
+ "adminPassword": "replacePassword1234$"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid",
+ "secret": "secret"
+ },
+ "addonProfiles": {},
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System",
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "loadBalancerSku": "basic",
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Creating",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS2_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Creating",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "type": "VirtualMachineScaleSets",
+ "enableNodePublicIP": false,
+ "mode": "System"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "windowsProfile": {
+ "adminUsername": "azureuser"
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": true,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "enablePodSecurityPolicy": true,
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "userAssignedNATGateway"
+ },
+ "autoScalerProfile": {
+ "scan-interval": "20s",
+ "scale-down-delay-after-add": "15m"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersDelete.json
new file mode 100644
index 000000000000..fa6c42a96185
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersDelete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGet.json
new file mode 100644
index 000000000000..067d094e8bee
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGet.json
@@ -0,0 +1,113 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "maxAgentPools": 1,
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "azurePortalFQDN": "dnsprefix1-abcd1234.portal.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6",
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
+ "upgradeSettings": {
+ "maxSurge": "33%"
+ }
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10",
+ "loadBalancerSku": "standard",
+ "outboundType": "loadBalancer",
+ "podCidrs": [
+ "10.244.0.0/16"
+ ],
+ "serviceCidrs": [
+ "10.0.0.0/16"
+ ],
+ "ipFamilies": [
+ "IPv4"
+ ],
+ "loadBalancerProfile": {
+ "allocatedOutboundPorts": 2000,
+ "idleTimeoutInMinutes": 10,
+ "outboundIPs": {
+ "publicIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/customeroutboundip2"
+ }
+ ]
+ },
+ "effectiveOutboundIPs": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
+ },
+ {
+ "id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
+ }
+ ]
+ }
+ },
+ "upgradeSettings": {
+ "overrideSettings": {
+ "forceUpgrade": true,
+ "until": "2022-11-01T13:00:00Z"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGetAccessProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGetAccessProfile.json
new file mode 100644
index 000000000000..ed2d58999cd8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGetAccessProfile.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "roleName": "clusterUser"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser",
+ "location": "location1",
+ "name": "clusterUser",
+ "properties": {
+ "kubeConfig": "a3ViZUNvbmZpZzE="
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGetUpgradeProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGetUpgradeProfile.json
new file mode 100644
index 000000000000..6d27106d09f8
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersGetUpgradeProfile.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default",
+ "name": "default",
+ "properties": {
+ "agentPoolProfiles": [
+ {
+ "kubernetesVersion": "1.7.7",
+ "name": "agent",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.7.9"
+ },
+ {
+ "kubernetesVersion": "1.7.11",
+ "isPreview": true
+ }
+ ]
+ }
+ ],
+ "controlPlaneProfile": {
+ "kubernetesVersion": "1.7.7",
+ "name": "master",
+ "osType": "Linux",
+ "upgrades": [
+ {
+ "kubernetesVersion": "1.7.9",
+ "isPreview": true
+ },
+ {
+ "kubernetesVersion": "1.7.11"
+ }
+ ]
+ }
+ },
+ "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersList.json
new file mode 100644
index 000000000000..d99e399c2cf7
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersList.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "maxAgentPools": 1,
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListByResourceGroup.json
new file mode 100644
index 000000000000..bbf25ac039fe
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListByResourceGroup.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv2": "",
+ "tier": "production"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "currentKubernetesVersion": "1.9.6",
+ "maxAgentPools": 1,
+ "dnsPrefix": "dnsprefix1",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterAdminCredentials.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterAdminCredentials.json
new file mode 100644
index 000000000000..244e27972623
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterAdminCredentials.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterMonitoringUserCredentials.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterMonitoringUserCredentials.json
new file mode 100644
index 000000000000..244e27972623
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterMonitoringUserCredentials.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterUserCredentials.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterUserCredentials.json
new file mode 100644
index 000000000000..244e27972623
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersListClusterUserCredentials.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kubeconfigs": [
+ {
+ "name": "credentialName1",
+ "value": "Y3JlZGVudGlhbFZhbHVlMQ=="
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersResetAADProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersResetAADProfile.json
new file mode 100644
index 000000000000..d1fe30d1676b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersResetAADProfile.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "clientAppID": "clientappid",
+ "serverAppID": "serverappid",
+ "serverAppSecret": "serverappsecret",
+ "tenantID": "tenantid"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersResetServicePrincipalProfile.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersResetServicePrincipalProfile.json
new file mode 100644
index 000000000000..73bb108f3413
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersResetServicePrincipalProfile.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "clientId": "clientid",
+ "secret": "secret"
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersRotateClusterCertificates.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersRotateClusterCertificates.json
new file mode 100644
index 000000000000..fa6c42a96185
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersRotateClusterCertificates.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersRotateServiceAccountSigningKeys.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersRotateServiceAccountSigningKeys.json
new file mode 100644
index 000000000000..fa6c42a96185
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersRotateServiceAccountSigningKeys.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersStart.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersStart.json
new file mode 100644
index 000000000000..fa6c42a96185
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersStart.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersStop.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersStop.json
new file mode 100644
index 000000000000..fa6c42a96185
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersStop.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/providers/Microsoft.ContainerService/locations/eastus/operationresults/00000000-0000-0000-0000-000000000000?api-version=2017-08-31"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersUpdateTags.json
new file mode 100644
index 000000000000..2068ee2755d6
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ManagedClustersUpdateTags.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "tags": {
+ "tier": "testing",
+ "archv3": ""
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
+ "location": "location1",
+ "name": "clustername1",
+ "tags": {
+ "archv3": "",
+ "tier": "testing"
+ },
+ "type": "Microsoft.ContainerService/ManagedClusters",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.9.6",
+ "dnsPrefix": "dnsprefix1",
+ "agentPoolProfiles": [
+ {
+ "name": "nodepool1",
+ "count": 3,
+ "vmSize": "Standard_DS1_v2",
+ "maxPods": 110,
+ "osType": "Linux",
+ "provisioningState": "Succeeded",
+ "orchestratorVersion": "1.9.6",
+ "currentOrchestratorVersion": "1.9.6"
+ }
+ ],
+ "linuxProfile": {
+ "adminUsername": "azureuser",
+ "ssh": {
+ "publicKeys": [
+ {
+ "keyData": "keydata"
+ }
+ ]
+ }
+ },
+ "servicePrincipalProfile": {
+ "clientId": "clientid"
+ },
+ "nodeResourceGroup": "MC_rg1_clustername1_location1",
+ "enableRBAC": false,
+ "diskEncryptionSetID": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Compute/diskEncryptionSets/des",
+ "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
+ "networkProfile": {
+ "networkPlugin": "kubenet",
+ "podCidr": "10.244.0.0/16",
+ "serviceCidr": "10.0.0.0/16",
+ "dnsServiceIP": "10.0.0.10"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/Operation_List.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/Operation_List.json
new file mode 100644
index 000000000000..85f1772e59e5
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/Operation_List.json
@@ -0,0 +1,3583 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "display": {
+ "description": "Gets the status of an asynchronous operation",
+ "operation": "Get Operation",
+ "provider": "Microsoft Container Service",
+ "resource": "Operation"
+ },
+ "name": "Microsoft.ContainerService/locations/operations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Lists the supported orchestrators",
+ "operation": "List Orchestrators",
+ "provider": "Microsoft Container Service",
+ "resource": "Orchestrator"
+ },
+ "name": "Microsoft.ContainerService/locations/orchestrators/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets OS options",
+ "operation": "Get OS Options",
+ "provider": "Microsoft Container Service",
+ "resource": "OSOptions"
+ },
+ "name": "Microsoft.ContainerService/locations/osOptions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Lists operations available on Microsoft.ContainerService resource provider",
+ "operation": "List Available Container Service Operations",
+ "provider": "Microsoft Container Service",
+ "resource": "Available Container Service Operations"
+ },
+ "name": "Microsoft.ContainerService/operations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Registers Subscription with Microsoft.ContainerService resource provider",
+ "operation": "Register Subscription for Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Service Register Subscription"
+ },
+ "name": "Microsoft.ContainerService/register/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Unregisters Subscription with Microsoft.ContainerService resource provider",
+ "operation": "Unregister Subscription for Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Service Unregister Subscription"
+ },
+ "name": "Microsoft.ContainerService/unregister/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the status of an asynchronous operation result",
+ "operation": "Get Operation Result",
+ "provider": "Microsoft Container Service",
+ "resource": "OperationResult"
+ },
+ "name": "Microsoft.ContainerService/locations/operationresults/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a container service",
+ "operation": "Get Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new container service or updates an existing one",
+ "operation": "Create or Update Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a container service",
+ "operation": "Delete Container Service",
+ "provider": "Microsoft Container Service",
+ "resource": "Container Services"
+ },
+ "name": "Microsoft.ContainerService/containerServices/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster",
+ "operation": "Get Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new managed cluster or updates an existing one",
+ "operation": "Create or Update Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a managed cluster",
+ "operation": "Delete Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Starts a managed cluster",
+ "operation": "Start Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/start/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Stops a managed cluster",
+ "operation": "Stop Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/stop/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets a maintenance configuration",
+ "operation": "Get a maintenance configuration",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new MaintenanceConfiguration or updates an existing one",
+ "operation": "Create or Update maintenance configuratio",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a maintenance configuration",
+ "operation": "Delete Maintenance Configuration",
+ "provider": "Microsoft Container Service",
+ "resource": "Maintenance Configurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets an agent pool",
+ "operation": "Get Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new agent pool or updates an existing one",
+ "operation": "Create or Update Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes an agent pool",
+ "operation": "Delete Agent Pool",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the upgrade profile of the Agent Pool",
+ "operation": "Get Agent Pool UpgradeProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Upgrade the node image version of agent pool",
+ "operation": "Upgrade agent pool node image version",
+ "provider": "Microsoft Container Service",
+ "resource": "Agent Pools"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/agentPools/upgradeNodeImageVersion/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the available agent pool versions of the cluster",
+ "operation": "Get Available Agent Pool Versions",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/availableAgentPoolVersions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster access profile by role name",
+ "operation": "Get Managed Cluster AccessProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/accessProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a managed cluster access profile by role name using list credential",
+ "operation": "Get Managed Cluster AccessProfile by List Credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/accessProfiles/listCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the upgrade profile of the cluster",
+ "operation": "Get UpgradeProfile",
+ "provider": "Microsoft Container Service",
+ "resource": "UpgradeProfile"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/upgradeProfiles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterAdmin credential of a managed cluster",
+ "operation": "List clusterAdmin credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterAdminCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterUser credential of a managed cluster",
+ "operation": "List clusterUser credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterUserCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "List the clusterMonitoringUser credential of a managed cluster",
+ "operation": "List clusterMonitoringUser credential",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/listClusterMonitoringUserCredential/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reset the service principal profile of a managed cluster",
+ "operation": "Reset service principal profile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetServicePrincipalProfile/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Resolve the private link service id of a managed cluster",
+ "operation": "Resolve private link service id",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resolvePrivateLinkServiceId/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reset the AAD profile of a managed cluster",
+ "operation": "Reset AAD profile",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetAADProfile/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Rotate certificates of a managed cluster",
+ "operation": "Rotate certificates of the cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rotateClusterCertificates/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Run user issued command against managed kubernetes server.",
+ "operation": "RunCommand",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/runCommand/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Retrieve result from previous issued command.",
+ "operation": "CommandResult",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/commandResults/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get the diagnostic setting for a managed cluster resource",
+ "operation": "Read Diagnostic Setting",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/diagnosticSettings/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Creates or updates the diagnostic setting for a managed cluster resource",
+ "operation": "Write Diagnostic Setting",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Clusters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/diagnosticSettings/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get Managed Cluster Detector",
+ "operation": "Get Managed Cluster Detector",
+ "provider": "Microsoft Container Service",
+ "resource": "Managed Cluster Detector"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/detectors/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the diagnostics state of the cluster",
+ "operation": "Get Diagnostics State",
+ "provider": "Microsoft Container Service",
+ "resource": "Diagnostics State"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/diagnosticsState/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Determines if user is allowed to approve a private endpoint connection",
+ "operation": "Approve Private Endpoint Connections",
+ "provider": "Microsoft Container Service",
+ "resource": "Approve Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnectionsApproval/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get private endpoint connection",
+ "operation": "Get private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Approve or Reject a private endpoint connection",
+ "operation": "Update private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete private endpoint connection",
+ "operation": "Delete private endpoint connection",
+ "provider": "Microsoft Container Service",
+ "resource": "Private Endpoint Connections"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/privateEndpointConnections/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets an extension addon",
+ "operation": "Get an extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Creates a new extension addon or updates an existing one",
+ "operation": "Create or Update extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Deletes an extension addon",
+ "operation": "Delete an extension addon",
+ "provider": "Microsoft Container Service",
+ "resource": "ExtensionAddons"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensionaddons/delete",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get a snapshot",
+ "operation": "Get Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new snapshot",
+ "operation": "Create Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes a snapshot",
+ "operation": "Delete Snapshot",
+ "provider": "Microsoft Container Service",
+ "resource": "Snapshots"
+ },
+ "name": "Microsoft.ContainerService/snapshots/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get eventgrid filter",
+ "operation": "Get eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Create or Update eventgrid filter",
+ "operation": "Create or Update eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/write",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Delete an eventgrid filter",
+ "operation": "Delete an eventgrid filter",
+ "provider": "Microsoft Container Service",
+ "resource": "EventGridFilters"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/eventGridFilters/delete",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Reads initializerconfigurations",
+ "operation": "Gets/List initializerconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes initializerconfigurations",
+ "operation": "Creates/Updates initializerconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes/DeletesCollection initializerconfigurations resource",
+ "operation": "Initializerconfigurations",
+ "provider": "Microsoft Container Service",
+ "resource": "Initializerconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/initializerconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads mutatingwebhookconfigurations",
+ "operation": "Gets/List mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes mutatingwebhookconfigurations",
+ "operation": "Creates/Updates mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes mutatingwebhookconfigurations",
+ "operation": "Deletes/DeletesCollection mutatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Mutatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/mutatingwebhookconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads validatingwebhookconfigurations",
+ "operation": "Gets/List validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes validatingwebhookconfigurations",
+ "operation": "Creates/Updates validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes validatingwebhookconfigurations",
+ "operation": "Deletes/DeletesCollection validatingwebhookconfigurations resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Validatingwebhookconfigurations"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/admissionregistration.k8s.io/validatingwebhookconfigurations/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads customresourcedefinitions",
+ "operation": "Gets/List customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes customresourcedefinitions",
+ "operation": "Creates/Updates customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes customresourcedefinitions",
+ "operation": "Deletes/DeletesCollection customresourcedefinitions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Customresourcedefinitions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiextensions.k8s.io/customresourcedefinitions/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservices",
+ "operation": "Gets/List apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes apiservices",
+ "operation": "Creates/Updates apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes apiservices",
+ "operation": "Deletes/DeletesCollection apiservices resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiservices"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apiregistration.k8s.io/apiservices/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads controllerrevisions",
+ "operation": "Gets/List controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes controllerrevisions",
+ "operation": "Creates/Updates controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes controllerrevisions",
+ "operation": "Deletes/DeletesCollection controllerrevisions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Controllerrevisions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/controllerrevisions/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads daemonsets",
+ "operation": "Gets/List daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes daemonsets",
+ "operation": "Creates/Updates daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes daemonsets",
+ "operation": "Deletes/DeletesCollection daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/daemonsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads deployments",
+ "operation": "Gets/List deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes deployments",
+ "operation": "Creates/Updates deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes deployments",
+ "operation": "Deletes/DeletesCollection deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/deployments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicasets",
+ "operation": "Gets/List replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicasets",
+ "operation": "Creates/Updates replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicasets",
+ "operation": "Deletes/DeletesCollection replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/replicasets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads statefulsets",
+ "operation": "Gets/List statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes statefulsets",
+ "operation": "Creates/Updates statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes statefulsets",
+ "operation": "Deletes/DeletesCollection statefulsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Statefulsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apps/statefulsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes tokenreviews",
+ "operation": "Creates/Updates tokenreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Tokenreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authentication.k8s.io/tokenreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes localsubjectaccessreviews",
+ "operation": "Creates/Updates localsubjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Localsubjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/localsubjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes selfsubjectaccessreviews",
+ "operation": "Creates/Updates selfsubjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Selfsubjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/selfsubjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes selfsubjectrulesreviews",
+ "operation": "Creates/Updates selfsubjectrulesreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Selfsubjectrulesreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/selfsubjectrulesreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes subjectaccessreviews",
+ "operation": "Creates/Updates subjectaccessreviews resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Subjectaccessreviews"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authorization.k8s.io/subjectaccessreviews/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads horizontalpodautoscalers",
+ "operation": "Gets/List horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes horizontalpodautoscalers",
+ "operation": "Creates/Updates horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes horizontalpodautoscalers",
+ "operation": "Deletes/DeletesCollection horizontalpodautoscalers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Horizontalpodautoscalers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/autoscaling/horizontalpodautoscalers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads cronjobs",
+ "operation": "Gets/List cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes cronjobs",
+ "operation": "Creates/Updates cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes cronjobs",
+ "operation": "Deletes/DeletesCollection cronjobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Cronjobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/cronjobs/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads jobs",
+ "operation": "Gets/List jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes jobs",
+ "operation": "Creates/Updates jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes jobs",
+ "operation": "Deletes/DeletesCollection jobs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Jobs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/batch/jobs/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificatesigningrequests",
+ "operation": "Gets/List certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes certificatesigningrequests",
+ "operation": "Creates/Updates certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes certificatesigningrequests",
+ "operation": "Deletes/DeletesCollection certificatesigningrequests resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificatesigningrequests"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/certificates.k8s.io/certificatesigningrequests/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads leases",
+ "operation": "Gets/List leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes leases",
+ "operation": "Creates/Updates leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes leases",
+ "operation": "Deletes/DeletesCollection leases resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Leases"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/coordination.k8s.io/leases/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes bindings",
+ "operation": "Creates/Updates bindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Bindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/bindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads componentstatuses",
+ "operation": "Gets/List componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes componentstatuses",
+ "operation": "Creates/Updates componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes componentstatuses",
+ "operation": "Deletes/DeletesCollection componentstatuses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Componentstatuses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/componentstatuses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads configmaps",
+ "operation": "Gets/List configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes configmaps",
+ "operation": "Creates/Updates configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes configmaps",
+ "operation": "Deletes/DeletesCollection configmaps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Configmaps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/configmaps/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads endpoints",
+ "operation": "Gets/List endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes endpoints",
+ "operation": "Creates/Updates endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes endpoints",
+ "operation": "Deletes/DeletesCollection endpoints resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Endpoints"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/endpoints/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events",
+ "operation": "Gets/List events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes events",
+ "operation": "Creates/Updates events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes events",
+ "operation": "Deletes/DeletesCollection events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads limitranges",
+ "operation": "Gets/List limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes limitranges",
+ "operation": "Creates/Updates limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes limitranges",
+ "operation": "Deletes/DeletesCollection limitranges resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Limitranges"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/limitranges/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads namespaces",
+ "operation": "Gets/List namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes namespaces",
+ "operation": "Creates/Updates namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes namespaces",
+ "operation": "Deletes/DeletesCollection namespaces resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Namespaces"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/namespaces/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads nodes",
+ "operation": "Gets/List nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes nodes",
+ "operation": "Creates/Updates nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes nodes",
+ "operation": "Deletes/DeletesCollection nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/nodes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads persistentvolumeclaims",
+ "operation": "Gets/List persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes persistentvolumeclaims",
+ "operation": "Creates/Updates persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes persistentvolumeclaims",
+ "operation": "Deletes/DeletesCollection persistentvolumeclaims resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumeclaims"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumeclaims/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads persistentvolumes",
+ "operation": "Gets/List persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes persistentvolumes",
+ "operation": "Creates/Updates persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes persistentvolumes",
+ "operation": "Deletes/DeletesCollection persistentvolumes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Persistentvolumes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/persistentvolumes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads pods",
+ "operation": "Gets/List pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes pods",
+ "operation": "Creates/Updates pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes pods",
+ "operation": "Deletes/DeletesCollection pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Exec into pods resource",
+ "operation": "Exec into pods resource ",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/pods/exec/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podtemplates",
+ "operation": "Gets/List podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podtemplates",
+ "operation": "Creates/Updates podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podtemplates",
+ "operation": "Deletes/DeletesCollection podtemplates resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podtemplates"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/podtemplates/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicationcontrollers",
+ "operation": "Gets/List replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicationcontrollers",
+ "operation": "Creates/Updates replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicationcontrollers",
+ "operation": "Deletes/DeletesCollection replicationcontrollers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicationcontrollers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/replicationcontrollers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads resourcequotas",
+ "operation": "Gets/List resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes resourcequotas",
+ "operation": "Creates/Updates resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes resourcequotas",
+ "operation": "Deletes/DeletesCollection resourcequotas resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resourcequotas"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resourcequotas/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads secrets",
+ "operation": "Gets/List secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes secrets",
+ "operation": "Creates/Updates secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes secrets",
+ "operation": "Deletes/DeletesCollection secrets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Secrets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/secrets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads serviceaccounts",
+ "operation": "Gets/List serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes serviceaccounts",
+ "operation": "Creates/Updates serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes serviceaccounts",
+ "operation": "Deletes/DeletesCollection serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads services",
+ "operation": "Gets/List services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes services",
+ "operation": "Creates/Updates services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes services",
+ "operation": "Deletes/DeletesCollection services resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Services"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/services/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events",
+ "operation": "Gets/List events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes events",
+ "operation": "Creates/Updates events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes events",
+ "operation": "Deletes/DeletesCollection events resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/events.k8s.io/events/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads daemonsets",
+ "operation": "Gets/List daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes daemonsets",
+ "operation": "Creates/Updates daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes daemonsets",
+ "operation": "Deletes/DeletesCollection daemonsets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Daemonsets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/daemonsets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads deployments",
+ "operation": "Gets/List deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes deployments",
+ "operation": "Creates/Updates deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes deployments",
+ "operation": "Deletes/DeletesCollection deployments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Deployments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/deployments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ingresses",
+ "operation": "Gets/List ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes ingresses",
+ "operation": "Creates/Updates ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes ingresses",
+ "operation": "Deletes/DeletesCollection ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/ingresses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networkpolicies",
+ "operation": "Gets/List networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes networkpolicies",
+ "operation": "Creates/Updates networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes networkpolicies",
+ "operation": "Deletes/DeletesCollection networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/networkpolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podsecuritypolicies",
+ "operation": "Gets/List podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podsecuritypolicies",
+ "operation": "Creates/Updates podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podsecuritypolicies",
+ "operation": "Deletes/DeletesCollection podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/podsecuritypolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads replicasets",
+ "operation": "Gets/List replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes replicasets",
+ "operation": "Creates/Updates replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes replicasets",
+ "operation": "Deletes/DeletesCollection replicasets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Replicasets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/extensions/replicasets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads pods",
+ "operation": "Gets/List pods resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Pods"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics.k8s.io/pods/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads nodes",
+ "operation": "Gets/List nodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Nodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics.k8s.io/nodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networkpolicies",
+ "operation": "Gets/List networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes networkpolicies",
+ "operation": "Creates/Updates networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes networkpolicies",
+ "operation": "Deletes/DeletesCollection networkpolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networkpolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/networkpolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ingresses",
+ "operation": "Gets/List ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes ingresses",
+ "operation": "Creates/Updates ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes ingresses",
+ "operation": "Deletes/DeletesCollection ingresses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ingresses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/networking.k8s.io/ingresses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads runtimeclasses",
+ "operation": "Gets/List runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes runtimeclasses",
+ "operation": "Creates/Updates runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes runtimeclasses",
+ "operation": "Deletes/DeletesCollection runtimeclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Runtimeclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/node.k8s.io/runtimeclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads api",
+ "operation": "Gets/List api resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Api"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/api/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads api/v1",
+ "operation": "Gets/List api/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Api/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/api/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apis",
+ "operation": "Gets/List apis resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apis"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io",
+ "operation": "Gets/List admissionregistration.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io/v1",
+ "operation": "Gets/List admissionregistration.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads admissionregistration.k8s.io/v1beta1",
+ "operation": "Gets/List admissionregistration.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Admissionregistration.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/admissionregistration.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io",
+ "operation": "Gets/List apiextensions.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io/v1",
+ "operation": "Gets/List apiextensions.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiextensions.k8s.io/v1beta1",
+ "operation": "Gets/List apiextensions.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiextensions.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiextensions.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io",
+ "operation": "Gets/List apiregistration.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io/v1",
+ "operation": "Gets/List apiregistration.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiregistration.k8s.io/v1beta1",
+ "operation": "Gets/List apiregistration.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apiregistration.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apiregistration.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps",
+ "operation": "Gets/List apps resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1",
+ "operation": "Gets/List apps/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1beta1",
+ "operation": "Gets/List apps/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apps/v1beta2",
+ "operation": "Gets/List apps/v1beta2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Apps/V1beta2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/apps/v1beta2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io",
+ "operation": "Gets/List authentication.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io/v1",
+ "operation": "Gets/List authentication.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authentication.k8s.io/v1beta1",
+ "operation": "Gets/List authentication.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authentication.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authentication.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io",
+ "operation": "Gets/List authorization.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io/v1",
+ "operation": "Gets/List authorization.k8s.io/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads authorization.k8s.io/v1beta1",
+ "operation": "Gets/List authorization.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Authorization.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/authorization.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling",
+ "operation": "Gets/List autoscaling resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v1",
+ "operation": "Gets/List autoscaling/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v2beta1",
+ "operation": "Gets/List autoscaling/v2beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V2beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v2beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoscaling/v2beta2",
+ "operation": "Gets/List autoscaling/v2beta2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Autoscaling/V2beta2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/autoscaling/v2beta2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch",
+ "operation": "Gets/List batch resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch/v1",
+ "operation": "Gets/List batch/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads batch/v1beta1",
+ "operation": "Gets/List batch/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Batch/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/batch/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificates.k8s.io",
+ "operation": "Gets/List certificates.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificates.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/certificates.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads certificates.k8s.io/v1beta1",
+ "operation": "Gets/List certificates.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Certificates.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/certificates.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination.k8s.io",
+ "operation": "Gets/List coordination.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination/v1",
+ "operation": "Gets/List coordination/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads coordination.k8s.io/v1beta1",
+ "operation": "Gets/List coordination.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Coordination.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/coordination.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events.k8s.io",
+ "operation": "Gets/List events.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/events.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads events.k8s.io/v1beta1",
+ "operation": "Gets/List events.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Events.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/events.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads extensions",
+ "operation": "Gets/List extensions resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Extensions"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/extensions/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads extensions/v1beta1",
+ "operation": "Gets/List extensions/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Extensions/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/extensions/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics.k8s.io",
+ "operation": "Gets/List metrics.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/metrics.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics.k8s.io/v1beta1",
+ "operation": "Gets/List metrics.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/metrics.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking.k8s.io",
+ "operation": "Gets/List networking.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking/v1",
+ "operation": "Gets/List networking/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads networking.k8s.io/v1beta1",
+ "operation": "Gets/List networking.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Networking.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/networking.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads node.k8s.io",
+ "operation": "Gets/List node.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Node.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/node.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads node.k8s.io/v1beta1",
+ "operation": "Gets/List node.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Node.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/node.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads policy",
+ "operation": "Gets/List policy resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Policy"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/policy/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads policy/v1beta1",
+ "operation": "Gets/List policy/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Policy/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/policy/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization.k8s.io",
+ "operation": "Gets/List rbac.authorization.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization/v1",
+ "operation": "Gets/List rbac.authorization/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rbac.authorization.k8s.io/v1beta1",
+ "operation": "Gets/List rbac.authorization.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rbac.Authorization.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/rbac.authorization.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling.k8s.io",
+ "operation": "Gets/List scheduling.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling/v1",
+ "operation": "Gets/List scheduling/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads scheduling.k8s.io/v1beta1",
+ "operation": "Gets/List scheduling.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Scheduling.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/scheduling.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage.k8s.io",
+ "operation": "Gets/List storage.k8s.io resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage/v1",
+ "operation": "Gets/List storage/v1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io/V1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/v1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storage.k8s.io/v1beta1",
+ "operation": "Gets/List storage.k8s.io/v1beta1 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storage.K8s.Io/V1beta1"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/apis/storage.k8s.io/v1beta1/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads healthz",
+ "operation": "Gets/List healthz resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Healthz/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/healthz/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads livez",
+ "operation": "Gets/List livez resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Livez/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/livez/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads logs",
+ "operation": "Gets/List logs resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Logs"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/logs/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads metrics",
+ "operation": "Gets/List metrics resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Metrics"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/metrics/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads v2",
+ "operation": "Gets/List v2 resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Openapi/V2"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/openapi/v2/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads readyz",
+ "operation": "Gets/List readyz resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads autoregister-completion",
+ "operation": "Gets/List autoregister-completion resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Autoregister-Completion"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/autoregister-completion/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads etcd",
+ "operation": "Gets/List etcd resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Etcd"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/etcd/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads log",
+ "operation": "Gets/List log resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Log"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/log/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ping",
+ "operation": "Gets/List ping resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Ping"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/ping/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-openapi-controller",
+ "operation": "Gets/List apiservice-openapi-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Openapi-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-openapi-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-registration-controller",
+ "operation": "Gets/List apiservice-registration-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Registration-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-registration-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads apiservice-status-available-controller",
+ "operation": "Gets/List apiservice-status-available-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Apiservice-Status-Available-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/apiservice-status-available-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-controller",
+ "operation": "Gets/List bootstrap-controller resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-Controller"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/bootstrap-controller/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ca-registration",
+ "operation": "Gets/List ca-registration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Ca-Registration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/ca-registration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads crd-informer-synced",
+ "operation": "Gets/List crd-informer-synced resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Crd-Informer-Synced"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/crd-informer-synced/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads generic-apiserver-start-informers",
+ "operation": "Gets/List generic-apiserver-start-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Generic-Apiserver-Start-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/generic-apiserver-start-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads kube-apiserver-autoregistration",
+ "operation": "Gets/List kube-apiserver-autoregistration resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Kube-Apiserver-Autoregistration"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/kube-apiserver-autoregistration/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-roles",
+ "operation": "Gets/List bootstrap-roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/rbac/bootstrap-roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads bootstrap-system-priority-classes",
+ "operation": "Gets/List bootstrap-system-priority-classes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Bootstrap-System-Priority-Classes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/scheduling/bootstrap-system-priority-classes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-controllers",
+ "operation": "Gets/List start-apiextensions-controllers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Apiextensions-Controllers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-apiextensions-controllers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-apiextensions-informers",
+ "operation": "Gets/List start-apiextensions-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Apiextensions-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-apiextensions-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-aggregator-informers",
+ "operation": "Gets/List start-kube-aggregator-informers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Kube-Aggregator-Informers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-kube-aggregator-informers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads start-kube-apiserver-admission-initializer",
+ "operation": "Gets/List start-kube-apiserver-admission-initializer resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Poststarthook/Start-Kube-Apiserver-Admission-Initializer"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/poststarthook/start-kube-apiserver-admission-initializer/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads shutdown",
+ "operation": "Gets/List shutdown resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Readyz/Shutdown"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/readyz/shutdown/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads resetMetrics",
+ "operation": "Gets/List resetMetrics resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Resetmetrics"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/resetMetrics/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads swagger-ui",
+ "operation": "Gets/List swagger-ui resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Swagger-Ui"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/swagger-ui/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads swagger-api",
+ "operation": "Gets/List swagger-api resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Swagger-Api"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/swagger-api/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads ui",
+ "operation": "Gets/List ui resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Ui"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/ui/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads version",
+ "operation": "Gets/List version resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Version"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/version/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads poddisruptionbudgets",
+ "operation": "Gets/List poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes poddisruptionbudgets",
+ "operation": "Creates/Updates poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes poddisruptionbudgets",
+ "operation": "Deletes/DeletesCollection poddisruptionbudgets resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Poddisruptionbudgets"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/poddisruptionbudgets/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads podsecuritypolicies",
+ "operation": "Gets/List podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes podsecuritypolicies",
+ "operation": "Creates/Updates podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes podsecuritypolicies",
+ "operation": "Deletes/DeletesCollection podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads clusterrolebindings",
+ "operation": "Gets/List clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes clusterrolebindings",
+ "operation": "Creates/Updates clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes clusterrolebindings",
+ "operation": "Deletes/DeletesCollection clusterrolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterrolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterrolebindings/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads clusterroles",
+ "operation": "Gets/List clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes clusterroles",
+ "operation": "Creates/Updates clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes clusterroles",
+ "operation": "Deletes/DeletesCollection clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads rolebindings",
+ "operation": "Gets/List rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes rolebindings",
+ "operation": "Creates/Updates rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes rolebindings",
+ "operation": "Deletes/DeletesCollection rolebindings resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Rolebindings"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/rolebindings/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads roles",
+ "operation": "Gets/List roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes roles",
+ "operation": "Creates/Updates roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes roles",
+ "operation": "Deletes/DeletesCollection roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads priorityclasses",
+ "operation": "Gets/List priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes priorityclasses",
+ "operation": "Creates/Updates priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes priorityclasses",
+ "operation": "Deletes/DeletesCollection priorityclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Priorityclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/scheduling.k8s.io/priorityclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Use action on podsecuritypolicies",
+ "operation": "Use podsecuritypolicies resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Podsecuritypolicies"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/policy/podsecuritypolicies/use/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Binds clusterroles",
+ "operation": "Bind clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/bind/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Escalates",
+ "operation": "Escalate clusterroles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Clusterroles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/clusterroles/escalate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Binds roles",
+ "operation": "Bind roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/bind/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Escalates roles",
+ "operation": "Escalate roles resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Roles"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/rbac.authorization.k8s.io/roles/escalate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate serviceaccounts",
+ "operation": "Impersonate serviceaccounts resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Serviceaccounts"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/serviceaccounts/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate users",
+ "operation": "Impersonate users resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Users"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/users/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate groups",
+ "operation": "Impersonate groups resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Groups"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/groups/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Impersonate userextras",
+ "operation": "Impersonate userextras resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Userextras"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/authentication.k8s.io/userextras/impersonate/action",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads storageclasses",
+ "operation": "Gets/List storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes storageclasses",
+ "operation": "Creates/Updates storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes storageclasses",
+ "operation": "Deletes/DeletesCollection storageclasses resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Storageclasses"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/storageclasses/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads volumeattachments",
+ "operation": "Gets/List volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes volumeattachments",
+ "operation": "Creates/Updates volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes volumeattachments",
+ "operation": "Deletes/DeletesCollection volumeattachments resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Volumeattachments"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/volumeattachments/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads csidrivers",
+ "operation": "Gets/List csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes csidrivers",
+ "operation": "Creates/Updates csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes csidrivers",
+ "operation": "Deletes/DeletesCollection csidrivers resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csidrivers"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csidrivers/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Reads csinodes",
+ "operation": "Gets/List csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Writes csinodes",
+ "operation": "Creates/Updates csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Deletes csinodes",
+ "operation": "Deletes/DeletesCollection csinodes resource",
+ "provider": "Microsoft Container Service",
+ "resource": "Csinodes"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/storage.k8s.io/csinodes/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Gets the available metrics for Managed Cluster",
+ "operation": "Read Managed Cluster metric definitions",
+ "provider": "Microsoft Container Service",
+ "resource": "The metric definition of Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/metricDefinitions/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Gets the available logs for Managed Cluster",
+ "operation": "Read Managed Cluster log definitions",
+ "provider": "Microsoft Container Service",
+ "resource": "The log definition of Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/managedClusters/providers/Microsoft.Insights/logDefinitions/read",
+ "origin": "system"
+ },
+ {
+ "display": {
+ "description": "Get a Open Shift Managed Cluster",
+ "operation": "Get Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new Open Shift Managed Cluster or updates an existing one",
+ "operation": "Create or Update Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete a Open Shift Managed Cluster",
+ "operation": "Delete Open Shift Managed Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Managed Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftManagedClusters/delete",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Get a Open Shift Cluster",
+ "operation": "Get Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/read",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Creates a new Open Shift Cluster or updates an existing one",
+ "operation": "Create or Update Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/write",
+ "origin": "user,system"
+ },
+ {
+ "display": {
+ "description": "Delete a Open Shift Cluster",
+ "operation": "Delete Open Shift Cluster",
+ "provider": "Microsoft Container Service",
+ "resource": "Open Shift Cluster"
+ },
+ "name": "Microsoft.ContainerService/openShiftClusters/delete",
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/OutboundNetworkDependenciesEndpointsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/OutboundNetworkDependenciesEndpointsList.json
new file mode 100644
index 000000000000..fe9a62f93bb7
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/OutboundNetworkDependenciesEndpointsList.json
@@ -0,0 +1,242 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "management.azure.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "login.microsoftonline.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "images",
+ "endpoints": [
+ {
+ "domainName": "mcr.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "*.data.mcr.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https",
+ "description": "mcr cdn"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "artifacts",
+ "endpoints": [
+ {
+ "domainName": "packages.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "acs-mirror.azureedge.net",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "time-sync",
+ "endpoints": [
+ {
+ "domainName": "ntp.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 123,
+ "protocol": "UDP"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "ubuntu-optional",
+ "endpoints": [
+ {
+ "domainName": "security.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "azure.archive.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "changelogs.ubuntu.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "gpu",
+ "endpoints": [
+ {
+ "domainName": "nvidia.github.io",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "us.download.nvidia.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "apt.dockerproject.org",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "windows",
+ "endpoints": [
+ {
+ "domainName": "onegetcdn.azureedge.net",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "go.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ },
+ {
+ "domainName": "*.mp.microsoft.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "www.msftconnecttest.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ },
+ {
+ "domainName": "ctldl.windowsupdate.com",
+ "endpointDetails": [
+ {
+ "port": 80,
+ "protocol": "Http"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "apiserver",
+ "endpoints": [
+ {
+ "domainName": "*.azmk8s.io",
+ "endpointDetails": [
+ {
+ "port": 443,
+ "protocol": "Https"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "category": "tunnel-classic",
+ "endpoints": [
+ {
+ "domainName": "*.azmk8s.io",
+ "endpointDetails": [
+ {
+ "port": 9000,
+ "protocol": "TCP"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsDelete.json
new file mode 100644
index 000000000000..d9db334abaf1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsDelete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsGet.json
new file mode 100644
index 000000000000..2b406af867b1
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsGet.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsList.json
new file mode 100644
index 000000000000..2a7f45bde941
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsList.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsUpdate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsUpdate.json
new file mode 100644
index 000000000000..6e0e71ede59b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateEndpointConnectionsUpdate.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "privateEndpointConnectionName": "privateendpointconnection1",
+ "parameters": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedCluster/clustername1/privateEndpointConnections/privateendpointconnection1",
+ "name": "privateendpointconnection1",
+ "type": "Microsoft.Network/privateLinkServices/privateEndpointConnections",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateLinkResourcesList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateLinkResourcesList.json
new file mode 100644
index 000000000000..2caa01bcee15
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/PrivateLinkResourcesList.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "management",
+ "type": "Microsoft.ContainerService/managedClusters/privateLinkResources",
+ "groupId": "management",
+ "requiredMembers": [
+ "management"
+ ],
+ "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ResolvePrivateLinkServiceId.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ResolvePrivateLinkServiceId.json
new file mode 100644
index 000000000000..a17bd147498b
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/ResolvePrivateLinkServiceId.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "parameters": {
+ "name": "management"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "privateLinkServiceID": "/subscriptions/subid2/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/plsName"
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandRequest.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandRequest.json
new file mode 100644
index 000000000000..db6a7165d8d0
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandRequest.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "requestPayload": {
+ "command": "kubectl apply -f ns.yaml",
+ "context": "",
+ "clusterToken": ""
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-07-01"
+ }
+ },
+ "200": {
+ "description": "to mitigate RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE",
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "succeeded",
+ "exitCode": 0,
+ "startedAt": "2021-02-17T00:28:20Z",
+ "finishedAt": "2021-02-17T00:28:33Z",
+ "logs": "namespace dummy created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandResultFailed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandResultFailed.json
new file mode 100644
index 000000000000..87c9211f832e
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandResultFailed.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-07-01"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "failed",
+ "reason": "ImagePullBackoff"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandResultSucceed.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandResultSucceed.json
new file mode 100644
index 000000000000..9b1f0fe19ecb
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/RunCommandResultSucceed.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "clustername1",
+ "commandId": "def7b3ea71bd4f7e9d226ddbc0f00ad9"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/commandResults/0e9872e6629349dc865e27ee6f8bab2d?api-version=2023-07-01"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "def7b3ea71bd4f7e9d226ddbc0f00ad9",
+ "properties": {
+ "provisioningState": "succeeded",
+ "exitCode": 0,
+ "startedAt": "2021-02-17T00:28:20Z",
+ "finishedAt": "2021-02-17T00:28:33Z",
+ "logs": "namespace dummy created"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsCreate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsCreate.json
new file mode 100644
index 000000000000..6286e320ccc2
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsCreate.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsDelete.json
new file mode 100644
index 000000000000..22f65511fe33
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsDelete.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsGet.json
new file mode 100644
index 000000000000..8c94f413f57d
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsGet.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsList.json
new file mode 100644
index 000000000000..dd9c565a2260
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsList.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsListByResourceGroup.json
new file mode 100644
index 000000000000..a051e7a53f02
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsListByResourceGroup.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsUpdateTags.json
new file mode 100644
index 000000000000..22f03c52f561
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/examples/SnapshotsUpdateTags.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-07-01",
+ "subscriptionId": "subid1",
+ "resourceGroupName": "rg1",
+ "resourceName": "snapshot1",
+ "parameters": {
+ "tags": {
+ "key2": "new-val2",
+ "key3": "val3"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "snapshot1",
+ "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1",
+ "type": "Microsoft.ContainerService/Snapshots",
+ "location": "westus",
+ "tags": {
+ "key1": "val1",
+ "key2": "val2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-08-09T20:13:23.298420761Z"
+ },
+ "properties": {
+ "creationData": {
+ "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0"
+ },
+ "snapshotType": "NodePool",
+ "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2021.09.11",
+ "kubernetesVersion": "1.20.5",
+ "osType": "Linux",
+ "osSku": "Ubuntu",
+ "vmSize": "Standard_D2s_v3",
+ "enableFIPS": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/managedClusters.json
new file mode 100644
index 000000000000..23c8e0641110
--- /dev/null
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/stable/2023-07-01/managedClusters.json
@@ -0,0 +1,6469 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ContainerServiceClient",
+ "description": "The Container Service Client.",
+ "version": "2023-07-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.ContainerService/operations": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "Operations_List",
+ "summary": "Gets a list of operations.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "List available operations for the container service resource provider": {
+ "$ref": "./examples/Operation_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/osOptions/default": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetOSOptions",
+ "summary": "Gets supported OS options in the specified subscription.",
+ "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/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceTypeParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error response describing why the operation failed",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSOptionProfile"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Container Service OS Options": {
+ "$ref": "./examples/ContainerServiceGetOSOptions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/locations/{location}/kubernetesVersions": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListKubernetesVersions",
+ "summary": "Gets a list of supported Kubernetes versions in the specified subscription.",
+ "description": "Contains extra metadata on the version, including supported patch versions, capabilities, available upgrades, and details on preview status of the 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/LocationParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/KubernetesVersionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Kubernetes Versions": {
+ "$ref": "./examples/KubernetesVersions_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_List",
+ "summary": "Gets a list of managed clusters in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Managed Clusters": {
+ "$ref": "./examples/ManagedClustersList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListByResourceGroup",
+ "summary": "Lists managed clusters in the specified subscription and resource group.",
+ "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": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Get Managed Clusters by Resource Group": {
+ "$ref": "./examples/ManagedClustersListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetUpgradeProfile",
+ "summary": "Gets the upgrade profile of a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Upgrade Profile for Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGetUpgradeProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": {
+ "post": {
+ "deprecated": true,
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetAccessProfile",
+ "summary": "Gets an access profile of a managed cluster.",
+ "description": "**WARNING**: This API will be deprecated. Instead use [ListClusterUserCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusterusercredentials) or [ListClusterAdminCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusteradmincredentials) .",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "roleName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the role for managed cluster accessProfile resource."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterAccessProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGetAccessProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterAdminCredentials",
+ "summary": "Lists the admin credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterAdminCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterUserCredentials",
+ "summary": "Lists the user credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ },
+ {
+ "$ref": "#/parameters/CredentialFormatParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterUserCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterMonitoringUserCredential": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListClusterMonitoringUserCredentials",
+ "summary": "Lists the cluster monitoring user credentials of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ServerFqdnParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CredentialResults"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersListClusterMonitoringUserCredentials.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Get",
+ "summary": "Gets a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Managed Cluster": {
+ "$ref": "./examples/ManagedClustersGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_CreateOrUpdate",
+ "summary": "Creates or updates a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ },
+ "description": "The managed cluster to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing managed cluster was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "201": {
+ "description": "The new managed cluster was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create/Update Managed Cluster": {
+ "$ref": "./examples/ManagedClustersCreate_Update.json"
+ },
+ "Create/Update AAD Managed Cluster with EnableAzureRBAC": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithEnableAzureRBAC.json"
+ },
+ "Create Managed Cluster with PPG": {
+ "$ref": "./examples/ManagedClustersCreate_PPG.json"
+ },
+ "Create Managed Cluster with OSSKU": {
+ "$ref": "./examples/ManagedClustersCreate_OSSKU.json"
+ },
+ "Create Managed Cluster with GPUMIG": {
+ "$ref": "./examples/ManagedClustersCreate_GPUMIG.json"
+ },
+ "Create/Update Managed Cluster with EnableAHUB": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWithAHUB.json"
+ },
+ "Create Managed Cluster with EncryptionAtHost enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableEncryptionAtHost.json"
+ },
+ "Create Managed Cluster with UltraSSD enabled": {
+ "$ref": "./examples/ManagedClustersCreate_EnableUltraSSD.json"
+ },
+ "Create Managed Cluster with PodIdentity enabled": {
+ "$ref": "./examples/ManagedClustersCreate_PodIdentity.json"
+ },
+ "Create Managed Private Cluster with fqdn subdomain specified": {
+ "$ref": "./examples/ManagedClustersCreate_PrivateClusterFQDNSubdomain.json"
+ },
+ "Create Managed Private Cluster with Public FQDN specified": {
+ "$ref": "./examples/ManagedClustersCreate_PrivateClusterPublicFQDN.json"
+ },
+ "Create Managed Cluster with RunCommand disabled": {
+ "$ref": "./examples/ManagedClustersCreate_DisableRunCommand.json"
+ },
+ "Create Managed Cluster with LongTermSupport": {
+ "$ref": "./examples/ManagedClustersCreate_Premium.json"
+ },
+ "Create Managed Cluster with Node Public IP Prefix": {
+ "$ref": "./examples/ManagedClustersCreate_NodePublicIPPrefix.json"
+ },
+ "Create Managed Cluster with Azure KeyVault Secrets Provider Addon": {
+ "$ref": "./examples/ManagedClustersCreate_AzureKeyvaultSecretsProvider.json"
+ },
+ "Create Managed Cluster with FIPS enabled OS": {
+ "$ref": "./examples/ManagedClustersCreate_EnabledFIPS.json"
+ },
+ "Create Managed Cluster with HTTP proxy configured": {
+ "$ref": "./examples/ManagedClustersCreate_HTTPProxy.json"
+ },
+ "Create Managed Cluster with Security Profile configured": {
+ "$ref": "./examples/ManagedClustersCreate_SecurityProfile.json"
+ },
+ "Create Managed Cluster with AKS-managed NAT gateway as outbound type": {
+ "$ref": "./examples/ManagedClustersCreate_ManagedNATGateway.json"
+ },
+ "Create Managed Cluster with user-assigned NAT gateway as outbound type": {
+ "$ref": "./examples/ManagedClustersCreate_UserAssignedNATGateway.json"
+ },
+ "Create Managed Cluster using an agent pool snapshot": {
+ "$ref": "./examples/ManagedClustersCreate_Snapshot.json"
+ },
+ "Create/Update Managed Cluster with Windows gMSA enabled": {
+ "$ref": "./examples/ManagedClustersCreate_UpdateWindowsGmsa.json"
+ },
+ "Create/Update Managed Cluster with dual-stack networking": {
+ "$ref": "./examples/ManagedClustersCreate_DualStackNetworking.json"
+ },
+ "Create Managed Cluster with Dedicated Host Group": {
+ "$ref": "./examples/ManagedClustersCreate_DedicatedHostGroup.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_UpdateTags",
+ "summary": "Updates tags on a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update Managed Cluster Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ManagedCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update Managed Cluster Tags": {
+ "$ref": "./examples/ManagedClustersUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Delete",
+ "summary": "Deletes a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Managed Cluster": {
+ "$ref": "./examples/ManagedClustersDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations": {
+ "get": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_ListByManagedCluster",
+ "summary": "Gets a list of maintenance configurations in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfigurationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List maintenance configurations by Managed Cluster": {
+ "$ref": "./examples/MaintenanceConfigurationsList.json"
+ },
+ "List maintenance configurations configured with maintenance window by Managed Cluster": {
+ "$ref": "./examples/MaintenanceConfigurationsList_MaintenanceWindow.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations/{configName}": {
+ "get": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_Get",
+ "summary": "Gets the specified maintenance configuration of a managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsGet.json"
+ },
+ "Get Maintenance Configuration Configured With Maintenance Window": {
+ "$ref": "./examples/MaintenanceConfigurationsGet_MaintenanceWindow.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_CreateOrUpdate",
+ "summary": "Creates or updates a maintenance configuration in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ },
+ "description": "The maintenance configuration to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing maintenance configuration was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "201": {
+ "description": "The new maintenance configuration was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Create/Update Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsCreate_Update.json"
+ },
+ "Create/Update Maintenance Configuration with Maintenance Window": {
+ "$ref": "./examples/MaintenanceConfigurationsCreate_Update_MaintenanceWindow.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MaintenanceConfigurations"
+ ],
+ "operationId": "MaintenanceConfigurations_Delete",
+ "summary": "Deletes a maintenance configuration.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "configName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the maintenance configuration."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": false,
+ "x-ms-examples": {
+ "Delete Maintenance Configuration": {
+ "$ref": "./examples/MaintenanceConfigurationsDelete.json"
+ },
+ "Delete Maintenance Configuration For Node OS Upgrade": {
+ "$ref": "./examples/MaintenanceConfigurationsDelete_MaintenanceWindow.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclusters/{resourceName}/agentPools/{agentPoolName}/abort": {
+ "post": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_AbortLatestOperation",
+ "summary": "Aborts last operation running on agent pool.",
+ "description": "Aborts the currently running operation on the agent pool. The Agent Pool will be moved to a Canceling state and eventually to a Canceled state when cancellation finishes. If the operation completes before cancellation can take place, a 409 error code is returned.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "location": {
+ "description": "URL to query for status of the operation.",
+ "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": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Abort operation on agent pool": {
+ "$ref": "./examples/AgentPoolsAbortOperation.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_List",
+ "summary": "Gets a list of agent pools in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Agent Pools by Managed Cluster": {
+ "$ref": "./examples/AgentPoolsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_Get",
+ "summary": "Gets the specified managed cluster agent pool.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Agent Pool": {
+ "$ref": "./examples/AgentPoolsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_CreateOrUpdate",
+ "summary": "Creates or updates an agent pool in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the agent pool."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "description": "The agent pool to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing agent pool was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "201": {
+ "description": "The new agent pool was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create/Update Agent Pool": {
+ "$ref": "./examples/AgentPoolsCreate_Update.json"
+ },
+ "Update Agent Pool": {
+ "$ref": "./examples/AgentPools_Update.json"
+ },
+ "Create Spot Agent Pool": {
+ "$ref": "./examples/AgentPoolsCreate_Spot.json"
+ },
+ "Create Agent Pool with PPG": {
+ "$ref": "./examples/AgentPoolsCreate_PPG.json"
+ },
+ "Create Agent Pool with OSSKU": {
+ "$ref": "./examples/AgentPoolsCreate_OSSKU.json"
+ },
+ "Create Agent Pool with Windows OSSKU": {
+ "$ref": "./examples/AgentPoolsCreate_WindowsOSSKU.json"
+ },
+ "Create Agent Pool with GPUMIG": {
+ "$ref": "./examples/AgentPoolsCreate_GPUMIG.json"
+ },
+ "Create Agent Pool with Ephemeral OS Disk": {
+ "$ref": "./examples/AgentPoolsCreate_Ephemeral.json"
+ },
+ "Create Agent Pool with KubeletConfig and LinuxOSConfig": {
+ "$ref": "./examples/AgentPoolsCreate_CustomNodeConfig.json"
+ },
+ "Create Agent Pool with EncryptionAtHost enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableEncryptionAtHost.json"
+ },
+ "Create Agent Pool with UltraSSD enabled": {
+ "$ref": "./examples/AgentPoolsCreate_EnableUltraSSD.json"
+ },
+ "Create Agent Pool with FIPS enabled OS": {
+ "$ref": "./examples/AgentPoolsCreate_EnableFIPS.json"
+ },
+ "Create Agent Pool using an agent pool snapshot": {
+ "$ref": "./examples/AgentPoolsCreate_Snapshot.json"
+ },
+ "Create Agent Pool with Krustlet and the WASI runtime": {
+ "$ref": "./examples/AgentPoolsCreate_WasmWasi.json"
+ },
+ "Stop Agent Pool": {
+ "$ref": "./examples/AgentPools_Stop.json"
+ },
+ "Start Agent Pool": {
+ "$ref": "./examples/AgentPools_Start.json"
+ },
+ "Create Agent Pool with Dedicated Host Group": {
+ "$ref": "./examples/AgentPoolsCreate_DedicatedHostGroup.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_Delete",
+ "summary": "Deletes an agent pool in the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Agent Pool": {
+ "$ref": "./examples/AgentPoolsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeProfiles/default": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_GetUpgradeProfile",
+ "summary": "Gets the upgrade profile for an agent pool.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolUpgradeProfile"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Upgrade Profile for Agent Pool": {
+ "$ref": "./examples/AgentPoolsGetUpgradeProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/availableAgentPoolVersions": {
+ "get": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_GetAvailableAgentPoolVersions",
+ "summary": "Gets a list of supported Kubernetes versions for the specified agent pool.",
+ "description": "See [supported Kubernetes versions](https://docs.microsoft.com/azure/aks/supported-kubernetes-versions) for more details about the version lifecycle.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolAvailableVersions"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get available versions for agent pool": {
+ "$ref": "./examples/AgentPoolsGetAgentPoolAvailableVersions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ResetServicePrincipalProfile",
+ "summary": "Reset the Service Principal Profile of a managed cluster.",
+ "description": "This action cannot be performed on a cluster that is not using a service principal",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterServicePrincipalProfile"
+ },
+ "description": "The service principal profile to set on the managed cluster."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Reset Service Principal Profile": {
+ "$ref": "./examples/ManagedClustersResetServicePrincipalProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": {
+ "post": {
+ "deprecated": true,
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ResetAADProfile",
+ "summary": "Reset the AAD Profile of a managed cluster.",
+ "description": "**WARNING**: This API will be deprecated. Please see [AKS-managed Azure Active Directory integration](https://aka.ms/aks-managed-aad) to update your cluster with AKS-managed Azure AD.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedClusterAADProfile"
+ },
+ "description": "The AAD profile to set on the Managed Cluster"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Reset AAD Profile": {
+ "$ref": "./examples/ManagedClustersResetAADProfile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateClusterCertificates": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RotateClusterCertificates",
+ "summary": "Rotates the certificates of a managed cluster.",
+ "description": "See [Certificate rotation](https://docs.microsoft.com/azure/aks/certificate-rotation) for more details about rotating managed cluster certificates.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Rotate Cluster Certificates": {
+ "$ref": "./examples/ManagedClustersRotateClusterCertificates.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedclusters/{resourceName}/abort": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_AbortLatestOperation",
+ "summary": "Aborts last operation running on managed cluster.",
+ "description": "Aborts the currently running operation on the managed cluster. The Managed Cluster will be moved to a Canceling state and eventually to a Canceled state when cancellation finishes. If the operation completes before cancellation can take place, a 409 error code is returned.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "location": {
+ "description": "URL to query for status of the operation.",
+ "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": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Abort operation on managed cluster": {
+ "$ref": "./examples/ManagedClustersAbortOperation.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/rotateServiceAccountSigningKeys": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RotateServiceAccountSigningKeys",
+ "summary": "Rotates the service account signing keys of a managed cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Rotate Cluster Service Account Signing Keys": {
+ "$ref": "./examples/ManagedClustersRotateServiceAccountSigningKeys.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/stop": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Stop",
+ "summary": "Stops a Managed Cluster",
+ "description": "This can only be performed on Azure Virtual Machine Scale set backed clusters. Stopping a cluster stops the control plane and agent nodes entirely, while maintaining all object and cluster state. A cluster does not accrue charges while it is stopped. See [stopping a cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for more details about stopping a cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Stop Managed Cluster": {
+ "$ref": "./examples/ManagedClustersStop.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/start": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_Start",
+ "summary": "Starts a previously stopped Managed Cluster",
+ "description": "See [starting a cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for more details about starting a cluster.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Start Managed Cluster": {
+ "$ref": "./examples/ManagedClustersStart.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_List",
+ "summary": "Gets a list of private endpoint connections in the specified managed cluster.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Private Endpoint Connections by Managed Cluster": {
+ "$ref": "./examples/PrivateEndpointConnectionsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Get",
+ "summary": "Gets the specified private endpoint connection.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Update",
+ "summary": "Updates a private endpoint connection.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The updated private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing private endpoint connection was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "201": {
+ "description": "The new private endpoint connection was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Delete",
+ "summary": "Deletes a private endpoint connection.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content -- The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Private Endpoint Connection": {
+ "$ref": "./examples/PrivateEndpointConnectionsDelete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}/upgradeNodeImageVersion": {
+ "post": {
+ "tags": [
+ "AgentPools"
+ ],
+ "operationId": "AgentPools_UpgradeNodeImageVersion",
+ "summary": "Upgrades the node image version of an agent pool to the latest.",
+ "description": "Upgrading the node image version of an agent pool applies the newest OS and runtime updates to the nodes. AKS provides one new image per week with the latest updates. For more details on node image versions, see: https://docs.microsoft.com/azure/aks/node-image-upgrade",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]{0,11}$",
+ "minLength": 1,
+ "maxLength": 12,
+ "description": "The name of the agent pool."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Upgrade Agent Pool Node Image Version": {
+ "$ref": "./examples/AgentPoolsUpgradeNodeImageVersion.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "privateLinkResources"
+ ],
+ "operationId": "PrivateLinkResources_List",
+ "summary": "Gets a list of private link resources in the specified managed cluster.",
+ "description": "To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourcesListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Private Link Resources by Managed Cluster": {
+ "$ref": "./examples/PrivateLinkResourcesList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resolvePrivateLinkServiceId": {
+ "post": {
+ "tags": [
+ "resolvePrivateLinkServiceId"
+ ],
+ "operationId": "ResolvePrivateLinkServiceId_POST",
+ "summary": "Gets the private link service ID for the specified managed cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ },
+ "description": "Parameters required in order to resolve a private link service ID."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Resolve the Private Link Service ID for Managed Cluster": {
+ "$ref": "./examples/ResolvePrivateLinkServiceId.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/runCommand": {
+ "post": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_RunCommand",
+ "summary": "Submits a command to run against the Managed Cluster.",
+ "description": "AKS will create a pod to run the command. This is primarily useful for private clusters. For more information see [AKS Run Command](https://docs.microsoft.com/azure/aks/private-clusters#aks-run-command-preview).",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "requestPayload",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RunCommandRequest"
+ },
+ "description": "The run command request"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "command finished with async pattern, tracking by location header. !!! this is for autorest only, you never get 200 from this api !!!",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "submitNewCommand": {
+ "$ref": "./examples/RunCommandRequest.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/commandResults/{commandId}": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_GetCommandResult",
+ "summary": "Gets the results of a command which has been run on the Managed Cluster.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "commandId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Id of the command."
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "command finished",
+ "schema": {
+ "$ref": "#/definitions/RunCommandResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "commandSucceedResult": {
+ "$ref": "./examples/RunCommandResultSucceed.json"
+ },
+ "commandFailedResult": {
+ "$ref": "./examples/RunCommandResultFailed.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/outboundNetworkDependenciesEndpoints": {
+ "get": {
+ "tags": [
+ "ManagedClusters"
+ ],
+ "operationId": "ManagedClusters_ListOutboundNetworkDependenciesEndpoints",
+ "summary": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster.",
+ "description": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified managed cluster. The operation returns properties of each egress endpoint.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OutboundEnvironmentEndpointCollection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List OutboundNetworkDependenciesEndpoints by Managed Cluster": {
+ "$ref": "./examples/OutboundNetworkDependenciesEndpointsList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_List",
+ "summary": "Gets a list of snapshots in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Snapshots": {
+ "$ref": "./examples/SnapshotsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_ListByResourceGroup",
+ "summary": "Lists snapshots in the specified subscription and 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": "OK",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List Snapshots by Resource Group": {
+ "$ref": "./examples/SnapshotsListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots/{resourceName}": {
+ "get": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Get",
+ "summary": "Gets a snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Snapshot": {
+ "$ref": "./examples/SnapshotsGet.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_CreateOrUpdate",
+ "summary": "Creates or updates a snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "The snapshot to create or update."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The existing snapshot was successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "201": {
+ "description": "The new snapshot was successfully created.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/Update Snapshot": {
+ "$ref": "./examples/SnapshotsCreate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_UpdateTags",
+ "summary": "Updates tags on a snapshot.",
+ "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/ResourceNameParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TagsObject"
+ },
+ "description": "Parameters supplied to the Update snapshot Tags operation."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Snapshot Tags": {
+ "$ref": "./examples/SnapshotsUpdateTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Snapshots"
+ ],
+ "operationId": "Snapshots_Delete",
+ "summary": "Deletes a snapshot.",
+ "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/ResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Snapshot": {
+ "$ref": "./examples/SnapshotsDelete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "OperationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/OperationValue"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of operations"
+ }
+ },
+ "description": "The List Operation response."
+ },
+ "OperationValue": {
+ "type": "object",
+ "properties": {
+ "origin": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The origin of the operation."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the operation."
+ },
+ "display": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/OperationValueDisplay",
+ "description": "Describes the properties of a Operation Value Display."
+ }
+ },
+ "description": "Describes the properties of a Operation value."
+ },
+ "OperationValueDisplay": {
+ "type": "object",
+ "properties": {
+ "operation": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the operation."
+ },
+ "resource": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The display name of the resource the operation applies to."
+ },
+ "description": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The description of the operation."
+ },
+ "provider": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The resource provider for the operation."
+ }
+ },
+ "description": "Describes the properties of a Operation Value Display."
+ },
+ "SubResource": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource ID."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type"
+ }
+ },
+ "description": "Reference to another subresource.",
+ "x-ms-azure-resource": true
+ },
+ "TagsObject": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags."
+ }
+ },
+ "description": "Tags object for patch operations."
+ },
+ "ContainerServiceOSDisk": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 2048,
+ "minimum": 0,
+ "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified."
+ },
+ "ManagedClusterServicePrincipalProfile": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "string",
+ "description": "The ID for the service principal."
+ },
+ "secret": {
+ "type": "string",
+ "description": "The secret password associated with the service principal in plain text."
+ }
+ },
+ "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.",
+ "required": [
+ "clientId"
+ ]
+ },
+ "ManagedClusterAgentPoolProfileProperties": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1."
+ },
+ "vmSize": {
+ "type": "string",
+ "title": "The size of the agent pool VMs.",
+ "description": "VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions"
+ },
+ "osDiskSizeGB": {
+ "$ref": "#/definitions/ContainerServiceOSDisk"
+ },
+ "osDiskType": {
+ "$ref": "#/definitions/OSDiskType"
+ },
+ "kubeletDiskType": {
+ "$ref": "#/definitions/KubeletDiskType"
+ },
+ "workloadRuntime": {
+ "$ref": "#/definitions/WorkloadRuntime"
+ },
+ "vnetSubnetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/virtualNetworks/subnets"
+ }
+ ]
+ },
+ "title": "The ID of the subnet which agent pool nodes and optionally pods will join on startup.",
+ "description": "If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
+ },
+ "podSubnetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/virtualNetworks/subnets"
+ }
+ ]
+ },
+ "title": "The ID of the subnet which pods will join when launched.",
+ "description": "If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
+ },
+ "maxPods": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of pods that can run on a node."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "osSKU": {
+ "$ref": "#/definitions/OSSKU"
+ },
+ "maxCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of nodes for auto-scaling"
+ },
+ "minCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The minimum number of nodes for auto-scaling"
+ },
+ "enableAutoScaling": {
+ "type": "boolean",
+ "description": "Whether to enable auto-scaler"
+ },
+ "scaleDownMode": {
+ "$ref": "#/definitions/ScaleDownMode",
+ "title": "The scale down mode to use when scaling the Agent Pool.",
+ "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete."
+ },
+ "type": {
+ "$ref": "#/definitions/AgentPoolType"
+ },
+ "mode": {
+ "$ref": "#/definitions/AgentPoolMode"
+ },
+ "orchestratorVersion": {
+ "type": "string",
+ "title": "The version of Kubernetes specified by the user.",
+ "description": "Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool)."
+ },
+ "currentOrchestratorVersion": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The version of Kubernetes the Agent Pool is running.",
+ "description": "If orchestratorVersion is a fully specified version , this field will be exactly equal to it. If orchestratorVersion is , this field will contain the full version being used."
+ },
+ "nodeImageVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of node image"
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "Settings for upgrading the agentpool"
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The current deployment or provisioning state."
+ },
+ "powerState": {
+ "title": "Whether the Agent Pool is running or stopped.",
+ "description": "When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded",
+ "$ref": "#/definitions/PowerState"
+ },
+ "availabilityZones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'."
+ },
+ "enableNodePublicIP": {
+ "type": "boolean",
+ "title": "Whether each node is allocated its own public IP.",
+ "description": "Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false."
+ },
+ "nodePublicIPPrefixID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/publicIPPrefixes"
+ }
+ ]
+ },
+ "title": "The public IP prefix ID which VM nodes should use IPs from.",
+ "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}"
+ },
+ "scaleSetPriority": {
+ "$ref": "#/definitions/ScaleSetPriority",
+ "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'."
+ },
+ "scaleSetEvictionPolicy": {
+ "$ref": "#/definitions/ScaleSetEvictionPolicy",
+ "title": "The Virtual Machine Scale Set eviction policy to use.",
+ "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'."
+ },
+ "spotMaxPrice": {
+ "$ref": "#/definitions/SpotMaxPrice",
+ "title": "The max price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.",
+ "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags to be persisted on the agent pool virtual machine scale set."
+ },
+ "nodeLabels": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The node labels to be persisted across all nodes in agent pool."
+ },
+ "nodeTaints": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule."
+ },
+ "proximityPlacementGroupID": {
+ "$ref": "#/definitions/ProximityPlacementGroupID",
+ "description": "The ID for Proximity Placement Group."
+ },
+ "kubeletConfig": {
+ "$ref": "#/definitions/KubeletConfig",
+ "description": "The Kubelet configuration on the agent pool nodes."
+ },
+ "linuxOSConfig": {
+ "$ref": "#/definitions/LinuxOSConfig",
+ "description": "The OS configuration of Linux agent nodes."
+ },
+ "enableEncryptionAtHost": {
+ "type": "boolean",
+ "title": "Whether to enable host based OS and data drive encryption.",
+ "description": "This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption"
+ },
+ "enableUltraSSD": {
+ "type": "boolean",
+ "description": "Whether to enable UltraSSD"
+ },
+ "enableFIPS": {
+ "type": "boolean",
+ "title": "Whether to use a FIPS-enabled OS.",
+ "description": "See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details."
+ },
+ "gpuInstanceProfile": {
+ "$ref": "#/definitions/GPUInstanceProfile",
+ "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU."
+ },
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot."
+ },
+ "hostGroupID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/hostGroups"
+ }
+ ]
+ },
+ "title": "The fully qualified resource ID of the Dedicated Host Group to provision virtual machines from, used only in creation scenario and not allowed to changed once set.",
+ "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts)."
+ }
+ },
+ "description": "Properties for the container service agent pool profile."
+ },
+ "ManagedClusterAgentPoolProfile": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties"
+ }
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "title": "Unique name of the agent pool profile in the context of the subscription and resource group.",
+ "description": "Windows agent pool names must be 6 characters or less.",
+ "pattern": "^[a-z][a-z0-9]{0,11}$"
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "Profile for the container service agent pool."
+ },
+ "AgentPoolType": {
+ "type": "string",
+ "enum": [
+ "VirtualMachineScaleSets",
+ "AvailabilitySet"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "VirtualMachineScaleSets",
+ "description": "Create an Agent Pool backed by a Virtual Machine Scale Set."
+ },
+ {
+ "value": "AvailabilitySet",
+ "description": "Use of this is strongly discouraged."
+ }
+ ]
+ },
+ "description": "The type of Agent Pool."
+ },
+ "AgentPoolMode": {
+ "type": "string",
+ "enum": [
+ "System",
+ "User"
+ ],
+ "x-ms-enum": {
+ "name": "AgentPoolMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "System",
+ "description": "System agent pools are primarily for hosting critical system pods such as CoreDNS and metrics-server. System agent pools osType must be Linux. System agent pools VM SKU must have at least 2vCPUs and 4GB of memory."
+ },
+ {
+ "value": "User",
+ "description": "User agent pools are primarily for hosting your application pods."
+ }
+ ]
+ },
+ "title": "The mode of an agent pool.",
+ "description": "A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools"
+ },
+ "AgentPoolListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "description": "The list of agent pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of agent pool results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Agent Pools operation."
+ },
+ "AgentPoolUpgradeSettings": {
+ "type": "object",
+ "properties": {
+ "maxSurge": {
+ "type": "string",
+ "title": "The maximum number or percentage of nodes that are surged during upgrade.",
+ "description": "This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade"
+ },
+ "drainTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 1440,
+ "minimum": 1,
+ "title": "The drain timeout for a node",
+ "description": "The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes."
+ }
+ },
+ "description": "Settings for upgrading an agentpool"
+ },
+ "AgentPool": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Properties of an agent pool.",
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "Agent Pool."
+ },
+ "ManagedClusterWindowsProfile": {
+ "type": "object",
+ "properties": {
+ "adminUsername": {
+ "type": "string",
+ "description": "Specifies the name of the administrator account.
**Restriction:** Cannot end in \".\"
**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".
**Minimum-length:** 1 character
**Max-length:** 20 characters"
+ },
+ "adminPassword": {
+ "type": "string",
+ "description": "Specifies the password of the administrator account.
**Minimum-length:** 8 characters
**Max-length:** 123 characters
**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\""
+ },
+ "licenseType": {
+ "type": "string",
+ "enum": [
+ "None",
+ "Windows_Server"
+ ],
+ "x-ms-enum": {
+ "name": "licenseType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "None",
+ "description": "No additional licensing is applied."
+ },
+ {
+ "value": "Windows_Server",
+ "description": "Enables Azure Hybrid User Benefits for Windows VMs."
+ }
+ ]
+ },
+ "description": "The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details."
+ },
+ "enableCSIProxy": {
+ "type": "boolean",
+ "title": "Whether to enable CSI proxy.",
+ "description": "For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy)."
+ },
+ "gmsaProfile": {
+ "$ref": "#/definitions/WindowsGmsaProfile",
+ "description": "The Windows gMSA Profile in the Managed Cluster."
+ }
+ },
+ "required": [
+ "adminUsername"
+ ],
+ "description": "Profile for Windows VMs in the managed cluster."
+ },
+ "WindowsGmsaProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "title": "Whether to enable Windows gMSA.",
+ "description": "Specifies whether to enable Windows gMSA in the managed cluster."
+ },
+ "dnsServer": {
+ "type": "string",
+ "description": "Specifies the DNS server for Windows gMSA.
Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster."
+ },
+ "rootDomainName": {
+ "type": "string",
+ "description": "Specifies the root domain name for Windows gMSA.
Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster."
+ }
+ },
+ "description": "Windows gMSA Profile in the managed cluster."
+ },
+ "ContainerServiceLinuxProfile": {
+ "type": "object",
+ "properties": {
+ "adminUsername": {
+ "type": "string",
+ "description": "The administrator username to use for Linux VMs.",
+ "pattern": "^[A-Za-z][-A-Za-z0-9_]*$"
+ },
+ "ssh": {
+ "$ref": "#/definitions/ContainerServiceSshConfiguration",
+ "description": "The SSH configuration for Linux-based VMs running on Azure."
+ }
+ },
+ "required": [
+ "adminUsername",
+ "ssh"
+ ],
+ "description": "Profile for Linux VMs in the container service cluster."
+ },
+ "ContainerServiceNetworkProfile": {
+ "type": "object",
+ "properties": {
+ "networkPlugin": {
+ "type": "string",
+ "enum": [
+ "azure",
+ "kubenet",
+ "none"
+ ],
+ "default": "kubenet",
+ "x-ms-enum": {
+ "name": "NetworkPlugin",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Use the Azure CNI network plugin. See [Azure CNI (advanced) networking](https://docs.microsoft.com/azure/aks/concepts-network#azure-cni-advanced-networking) for more information."
+ },
+ {
+ "value": "kubenet",
+ "description": "Use the Kubenet network plugin. See [Kubenet (basic) networking](https://docs.microsoft.com/azure/aks/concepts-network#kubenet-basic-networking) for more information."
+ },
+ {
+ "value": "none",
+ "description": "No CNI plugin is pre-installed. See [BYO CNI](https://docs.microsoft.com/en-us/azure/aks/use-byo-cni) for more information."
+ }
+ ]
+ },
+ "description": "Network plugin used for building the Kubernetes network."
+ },
+ "networkPluginMode": {
+ "type": "string",
+ "enum": [
+ "overlay"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkPluginMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "overlay",
+ "description": "Used with networkPlugin=azure, pods are given IPs from the PodCIDR address space but use Azure Routing Domains rather than Kubenet's method of route tables. For more information visit https://aka.ms/aks/azure-cni-overlay."
+ }
+ ]
+ },
+ "description": "The mode the network plugin should use."
+ },
+ "networkPolicy": {
+ "type": "string",
+ "enum": [
+ "calico",
+ "azure",
+ "cilium"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "calico",
+ "description": "Use Calico network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information."
+ },
+ {
+ "value": "azure",
+ "description": "Use Azure network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information."
+ },
+ {
+ "value": "cilium",
+ "description": "Use Cilium to enforce network policies. This requires networkDataplane to be 'cilium'."
+ }
+ ]
+ },
+ "description": "Network policy used for building the Kubernetes network."
+ },
+ "networkMode": {
+ "type": "string",
+ "enum": [
+ "transparent",
+ "bridge"
+ ],
+ "x-ms-enum": {
+ "name": "networkMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "transparent",
+ "description": "No bridge is created. Intra-VM Pod to Pod communication is through IP routes created by Azure CNI. See [Transparent Mode](https://docs.microsoft.com/azure/aks/faq#transparent-mode) for more information."
+ },
+ {
+ "value": "bridge",
+ "description": "This is no longer supported"
+ }
+ ]
+ },
+ "title": "The network mode Azure CNI is configured with.",
+ "description": "This cannot be specified if networkPlugin is anything other than 'azure'."
+ },
+ "networkDataplane": {
+ "type": "string",
+ "enum": [
+ "azure",
+ "cilium"
+ ],
+ "x-ms-enum": {
+ "name": "networkDataplane",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Use Azure network dataplane."
+ },
+ {
+ "value": "cilium",
+ "description": "Use Cilium network dataplane. See [Azure CNI Powered by Cilium](https://learn.microsoft.com/azure/aks/azure-cni-powered-by-cilium) for more information."
+ }
+ ]
+ },
+ "description": "Network dataplane used in the Kubernetes cluster."
+ },
+ "podCidr": {
+ "type": "string",
+ "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
+ "default": "10.244.0.0/16",
+ "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used."
+ },
+ "serviceCidr": {
+ "type": "string",
+ "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
+ "default": "10.0.0.0/16",
+ "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges."
+ },
+ "dnsServiceIP": {
+ "type": "string",
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$",
+ "default": "10.0.0.10",
+ "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr."
+ },
+ "outboundType": {
+ "type": "string",
+ "enum": [
+ "loadBalancer",
+ "userDefinedRouting",
+ "managedNATGateway",
+ "userAssignedNATGateway"
+ ],
+ "x-ms-enum": {
+ "name": "outboundType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "loadBalancer",
+ "description": "The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type 'loadBalancer'. For more information see [outbound type loadbalancer](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-loadbalancer)."
+ },
+ {
+ "value": "userDefinedRouting",
+ "description": "Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see [outbound type userDefinedRouting](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-userdefinedrouting)."
+ },
+ {
+ "value": "managedNATGateway",
+ "description": "The AKS-managed NAT gateway is used for egress."
+ },
+ {
+ "value": "userAssignedNATGateway",
+ "description": "The user-assigned NAT gateway associated to the cluster subnet is used for egress. This is an advanced scenario and requires proper network configuration."
+ }
+ ]
+ },
+ "default": "loadBalancer",
+ "title": "The outbound (egress) routing method.",
+ "description": "This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype)."
+ },
+ "loadBalancerSku": {
+ "type": "string",
+ "enum": [
+ "standard",
+ "basic"
+ ],
+ "x-ms-enum": {
+ "name": "loadBalancerSku",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "standard",
+ "description": "Use a a standard Load Balancer. This is the recommended Load Balancer SKU. For more information about on working with the load balancer in the managed cluster, see the [standard Load Balancer](https://docs.microsoft.com/azure/aks/load-balancer-standard) article."
+ },
+ {
+ "value": "basic",
+ "description": "Use a basic Load Balancer with limited functionality."
+ }
+ ]
+ },
+ "title": "The load balancer sku for the managed cluster.",
+ "description": "The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs."
+ },
+ "loadBalancerProfile": {
+ "$ref": "#/definitions/ManagedClusterLoadBalancerProfile",
+ "description": "Profile of the cluster load balancer."
+ },
+ "natGatewayProfile": {
+ "$ref": "#/definitions/ManagedClusterNATGatewayProfile",
+ "description": "Profile of the cluster NAT gateway."
+ },
+ "podCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The CIDR notation IP ranges from which to assign pod IPs.",
+ "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking."
+ },
+ "serviceCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The CIDR notation IP ranges from which to assign service cluster IPs.",
+ "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges."
+ },
+ "ipFamilies": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The IP version to use for cluster networking and IP assignment.",
+ "enum": [
+ "IPv4",
+ "IPv6"
+ ],
+ "x-ms-enum": {
+ "name": "ipFamily",
+ "modelAsString": true
+ }
+ },
+ "title": "The IP families used to specify IP versions available to the cluster.",
+ "description": "IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6."
+ }
+ },
+ "description": "Profile of network configuration."
+ },
+ "MaintenanceConfigurationListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MaintenanceConfiguration"
+ },
+ "description": "The list of maintenance configurations."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of maintenance configuration results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List maintenance configurations operation."
+ },
+ "MaintenanceConfiguration": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubResource"
+ }
+ ],
+ "properties": {
+ "systemData": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/systemData",
+ "readOnly": true,
+ "description": "The system metadata relating to this resource."
+ },
+ "properties": {
+ "description": "Properties of a default maintenance configuration.",
+ "$ref": "#/definitions/MaintenanceConfigurationProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "title": "Planned maintenance configuration, used to configure when updates can be deployed to a Managed Cluster.",
+ "description": "See [planned maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for more information about planned maintenance."
+ },
+ "MaintenanceConfigurationProperties": {
+ "type": "object",
+ "properties": {
+ "timeInWeek": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TimeInWeek"
+ },
+ "x-ms-identifiers": [],
+ "title": "Time slots during the week when planned maintenance is allowed to proceed.",
+ "description": "If two array entries specify the same day of the week, the applied configuration is the union of times in both entries."
+ },
+ "notAllowedTime": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TimeSpan"
+ },
+ "x-ms-identifiers": [],
+ "description": "Time slots on which upgrade is not allowed."
+ },
+ "maintenanceWindow": {
+ "type": "object",
+ "$ref": "#/definitions/MaintenanceWindow",
+ "description": "Maintenance window for the maintenance configuration."
+ }
+ },
+ "description": "Properties used to configure planned maintenance for a Managed Cluster."
+ },
+ "MaintenanceWindow": {
+ "type": "object",
+ "properties": {
+ "schedule": {
+ "$ref": "#/definitions/Schedule",
+ "description": "Recurrence schedule for the maintenance window."
+ },
+ "durationHours": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 4,
+ "maximum": 24,
+ "default": 24,
+ "description": "Length of maintenance window range from 4 to 24 hours."
+ },
+ "utcOffset": {
+ "type": "string",
+ "pattern": "^(-|\\+)[0-9]{2}:[0-9]{2}$",
+ "description": "The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'."
+ },
+ "startDate": {
+ "type": "string",
+ "format": "date",
+ "description": "The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away."
+ },
+ "startTime": {
+ "type": "string",
+ "pattern": "^\\d{2}:\\d{2}$",
+ "description": "The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'."
+ },
+ "notAllowedDates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DateSpan"
+ },
+ "x-ms-identifiers": [],
+ "description": "Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time."
+ }
+ },
+ "description": "Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster.",
+ "required": [
+ "schedule",
+ "durationHours",
+ "startTime"
+ ]
+ },
+ "Schedule": {
+ "type": "object",
+ "properties": {
+ "daily": {
+ "$ref": "#/definitions/DailySchedule"
+ },
+ "weekly": {
+ "$ref": "#/definitions/WeeklySchedule"
+ },
+ "absoluteMonthly": {
+ "$ref": "#/definitions/AbsoluteMonthlySchedule"
+ },
+ "relativeMonthly": {
+ "$ref": "#/definitions/RelativeMonthlySchedule"
+ }
+ },
+ "description": "One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule."
+ },
+ "DailySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalDays": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 7,
+ "description": "Specifies the number of days between each set of occurrences."
+ }
+ },
+ "description": "For schedules like: 'recur every day' or 'recur every 3 days'.",
+ "required": [
+ "intervalDays"
+ ]
+ },
+ "WeeklySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalWeeks": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 4,
+ "description": "Specifies the number of weeks between each set of occurrences."
+ },
+ "dayOfWeek": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "Specifies on which day of the week the maintenance occurs."
+ }
+ },
+ "description": "For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'.",
+ "required": [
+ "intervalWeeks",
+ "dayOfWeek"
+ ]
+ },
+ "AbsoluteMonthlySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalMonths": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 6,
+ "description": "Specifies the number of months between each set of occurrences."
+ },
+ "dayOfMonth": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 31,
+ "description": "The date of the month."
+ }
+ },
+ "description": "For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'.",
+ "required": [
+ "intervalMonths",
+ "dayOfMonth"
+ ]
+ },
+ "RelativeMonthlySchedule": {
+ "type": "object",
+ "properties": {
+ "intervalMonths": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 6,
+ "description": "Specifies the number of months between each set of occurrences."
+ },
+ "weekIndex": {
+ "type": "string",
+ "enum": [
+ "First",
+ "Second",
+ "Third",
+ "Fourth",
+ "Last"
+ ],
+ "x-ms-enum": {
+ "name": "type",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "First",
+ "description": "First week of the month."
+ },
+ {
+ "value": "Second",
+ "description": "Second week of the month."
+ },
+ {
+ "value": "Third",
+ "description": "Third week of the month."
+ },
+ {
+ "value": "Fourth",
+ "description": "Fourth week of the month."
+ },
+ {
+ "value": "Last",
+ "description": "Last week of the month."
+ }
+ ]
+ },
+ "title": "The week index.",
+ "description": "Specifies on which week of the month the dayOfWeek applies."
+ },
+ "dayOfWeek": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "Specifies on which day of the week the maintenance occurs."
+ }
+ },
+ "description": "For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'.",
+ "required": [
+ "intervalMonths",
+ "weekIndex",
+ "dayOfWeek"
+ ]
+ },
+ "DateSpan": {
+ "type": "object",
+ "properties": {
+ "start": {
+ "type": "string",
+ "format": "date",
+ "description": "The start date of the date span."
+ },
+ "end": {
+ "type": "string",
+ "format": "date",
+ "description": "The end date of the date span."
+ }
+ },
+ "title": "A date range.",
+ "description": "For example, between '2022-12-23' and '2023-01-05'.",
+ "required": [
+ "start",
+ "end"
+ ]
+ },
+ "TimeInWeek": {
+ "type": "object",
+ "properties": {
+ "day": {
+ "$ref": "#/definitions/WeekDay",
+ "description": "The day of the week."
+ },
+ "hourSlots": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HourInDay"
+ },
+ "title": "A list of hours in the day used to identify a time range.",
+ "description": "Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range."
+ }
+ },
+ "description": "Time in a week."
+ },
+ "WeekDay": {
+ "type": "string",
+ "enum": [
+ "Sunday",
+ "Monday",
+ "Tuesday",
+ "Wednesday",
+ "Thursday",
+ "Friday",
+ "Saturday"
+ ],
+ "x-ms-enum": {
+ "name": "WeekDay",
+ "modelAsString": true
+ },
+ "description": "The weekday enum."
+ },
+ "HourInDay": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 23,
+ "minimum": 0,
+ "description": "Hour in a day."
+ },
+ "TimeSpan": {
+ "type": "object",
+ "properties": {
+ "start": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The start of a time span"
+ },
+ "end": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The end of a time span"
+ }
+ },
+ "title": "A time range.",
+ "description": "For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z."
+ },
+ "RunCommandRequest": {
+ "type": "object",
+ "properties": {
+ "command": {
+ "type": "string",
+ "description": "The command to run."
+ },
+ "context": {
+ "type": "string",
+ "description": "A base64 encoded zip file containing the files required by the command."
+ },
+ "clusterToken": {
+ "type": "string",
+ "description": "AuthToken issued for AKS AAD Server App."
+ }
+ },
+ "description": "A run command request",
+ "required": [
+ "command"
+ ]
+ },
+ "RunCommandResult": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The command id.",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "Properties of command result.",
+ "$ref": "#/definitions/CommandResultProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "run command result."
+ },
+ "CommandResultProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "provisioning State"
+ },
+ "exitCode": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": true,
+ "description": "The exit code of the command"
+ },
+ "startedAt": {
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true,
+ "description": "The time when the command started."
+ },
+ "finishedAt": {
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true,
+ "description": "The time when the command finished."
+ },
+ "logs": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The command output."
+ },
+ "reason": {
+ "type": "string",
+ "readOnly": true,
+ "description": "An explanation of why provisioningState is set to failed (if so)."
+ }
+ },
+ "description": "The results of a run command"
+ },
+ "ManagedClusterNATGatewayProfile": {
+ "type": "object",
+ "properties": {
+ "managedOutboundIPProfile": {
+ "$ref": "#/definitions/ManagedClusterManagedOutboundIPProfile",
+ "description": "Profile of the managed outbound IP resources of the cluster NAT gateway."
+ },
+ "effectiveOutboundIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "The effective outbound IP resources of the cluster NAT gateway."
+ },
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 120,
+ "minimum": 4,
+ "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes.",
+ "default": 4
+ }
+ },
+ "description": "Profile of the managed cluster NAT gateway."
+ },
+ "ManagedClusterManagedOutboundIPProfile": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 16,
+ "minimum": 1,
+ "description": "The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. ",
+ "default": 1
+ }
+ },
+ "description": "Profile of the managed outbound IP resources of the managed cluster."
+ },
+ "ManagedClusterLoadBalancerProfile": {
+ "type": "object",
+ "properties": {
+ "managedOutboundIPs": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 100,
+ "minimum": 1,
+ "description": "The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ",
+ "default": 1
+ },
+ "countIPv6": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 100,
+ "minimum": 0,
+ "description": "The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. ",
+ "default": 0
+ }
+ },
+ "description": "Desired managed outbound IPs for the cluster load balancer."
+ },
+ "outboundIPPrefixes": {
+ "type": "object",
+ "properties": {
+ "publicIPPrefixes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "A list of public IP prefix resources."
+ }
+ },
+ "description": "Desired outbound IP Prefix resources for the cluster load balancer."
+ },
+ "outboundIPs": {
+ "type": "object",
+ "properties": {
+ "publicIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "A list of public IP resources."
+ }
+ },
+ "description": "Desired outbound IP resources for the cluster load balancer."
+ },
+ "effectiveOutboundIPs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceReference"
+ },
+ "description": "The effective outbound IP resources of the cluster load balancer."
+ },
+ "allocatedOutboundPorts": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 64000,
+ "minimum": 0,
+ "description": "The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports.",
+ "default": 0
+ },
+ "idleTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "maximum": 120,
+ "minimum": 4,
+ "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes.",
+ "default": 30
+ },
+ "enableMultipleStandardLoadBalancers": {
+ "type": "boolean",
+ "description": "Enable multiple standard load balancers per AKS cluster or not."
+ }
+ },
+ "description": "Profile of the managed cluster load balancer."
+ },
+ "ResourceReference": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The fully qualified Azure resource id."
+ }
+ },
+ "description": "A reference to an Azure resource."
+ },
+ "ContainerServiceSshConfiguration": {
+ "type": "object",
+ "properties": {
+ "publicKeys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ContainerServiceSshPublicKey"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified."
+ }
+ },
+ "description": "SSH configuration for Linux-based VMs running on Azure.",
+ "required": [
+ "publicKeys"
+ ]
+ },
+ "ContainerServiceSshPublicKey": {
+ "type": "object",
+ "properties": {
+ "keyData": {
+ "type": "string",
+ "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers."
+ }
+ },
+ "required": [
+ "keyData"
+ ],
+ "description": "Contains information about SSH certificate public key data."
+ },
+ "ManagedClusterListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedCluster"
+ },
+ "description": "The list of managed clusters."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed cluster results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Managed Clusters operation."
+ },
+ "ManagedCluster": {
+ "type": "object",
+ "properties": {
+ "sku": {
+ "$ref": "#/definitions/ManagedClusterSKU",
+ "description": "The managed cluster SKU."
+ },
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the Virtual Machine."
+ },
+ "identity": {
+ "$ref": "#/definitions/ManagedClusterIdentity",
+ "description": "The identity of the managed cluster, if configured."
+ },
+ "properties": {
+ "description": "Properties of a managed cluster.",
+ "$ref": "#/definitions/ManagedClusterProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "Managed cluster."
+ },
+ "ManagedClusterProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The current provisioning state."
+ },
+ "powerState": {
+ "$ref": "#/definitions/PowerState",
+ "description": "The Power State of the cluster.",
+ "readOnly": true
+ },
+ "maxAgentPools": {
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32",
+ "description": "The max number of agent pools for the managed cluster."
+ },
+ "kubernetesVersion": {
+ "type": "string",
+ "title": "The version of Kubernetes specified by the user.",
+ "description": "Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details."
+ },
+ "currentKubernetesVersion": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The version of Kubernetes the Managed Cluster is running.",
+ "description": "If kubernetesVersion was a fully specified version , this field will be exactly equal to it. If kubernetesVersion was , this field will contain the full version being used."
+ },
+ "dnsPrefix": {
+ "type": "string",
+ "title": "The DNS prefix of the Managed Cluster.",
+ "description": "This cannot be updated once the Managed Cluster has been created."
+ },
+ "fqdnSubdomain": {
+ "type": "string",
+ "title": "The FQDN subdomain of the private cluster with custom private dns zone.",
+ "description": "This cannot be updated once the Managed Cluster has been created."
+ },
+ "fqdn": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The FQDN of the master pool."
+ },
+ "privateFQDN": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The FQDN of private cluster."
+ },
+ "azurePortalFQDN": {
+ "readOnly": true,
+ "type": "string",
+ "title": "The special FQDN used by the Azure Portal to access the Managed Cluster. This FQDN is for use only by the Azure Portal and should not be used by other clients.",
+ "description": "The Azure Portal requires certain Cross-Origin Resource Sharing (CORS) headers to be sent in some responses, which Kubernetes APIServer doesn't handle by default. This special FQDN supports CORS, allowing the Azure Portal to function properly."
+ },
+ "agentPoolProfiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterAgentPoolProfile"
+ },
+ "x-ms-identifiers": [],
+ "description": "The agent pool properties."
+ },
+ "linuxProfile": {
+ "$ref": "#/definitions/ContainerServiceLinuxProfile",
+ "description": "The profile for Linux VMs in the Managed Cluster."
+ },
+ "windowsProfile": {
+ "$ref": "#/definitions/ManagedClusterWindowsProfile",
+ "description": "The profile for Windows VMs in the Managed Cluster."
+ },
+ "servicePrincipalProfile": {
+ "$ref": "#/definitions/ManagedClusterServicePrincipalProfile",
+ "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs."
+ },
+ "addonProfiles": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/ManagedClusterAddonProfile"
+ },
+ "description": "The profile of managed cluster add-on."
+ },
+ "podIdentityProfile": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProfile",
+ "title": "The pod identity profile of the Managed Cluster.",
+ "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on AAD pod identity integration."
+ },
+ "oidcIssuerProfile": {
+ "$ref": "#/definitions/ManagedClusterOIDCIssuerProfile",
+ "description": "The OIDC issuer profile of the Managed Cluster."
+ },
+ "nodeResourceGroup": {
+ "type": "string",
+ "description": "The name of the resource group containing agent pool nodes."
+ },
+ "enableRBAC": {
+ "type": "boolean",
+ "description": "Whether to enable Kubernetes Role-Based Access Control."
+ },
+ "supportPlan": {
+ "$ref": "#/definitions/KubernetesSupportPlan",
+ "description": "The support plan for the Managed Cluster. If unspecified, the default is 'KubernetesOfficial'."
+ },
+ "enablePodSecurityPolicy": {
+ "type": "boolean",
+ "description": "(DEPRECATED) Whether to enable Kubernetes pod security policy (preview). PodSecurityPolicy was deprecated in Kubernetes v1.21, and removed from Kubernetes in v1.25. Learn more at https://aka.ms/k8s/psp and https://aka.ms/aks/psp."
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/ContainerServiceNetworkProfile",
+ "description": "The network configuration profile."
+ },
+ "aadProfile": {
+ "$ref": "#/definitions/ManagedClusterAADProfile",
+ "description": "The Azure Active Directory configuration."
+ },
+ "autoUpgradeProfile": {
+ "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile",
+ "description": "The auto upgrade configuration."
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/ClusterUpgradeSettings",
+ "description": "Settings for upgrading a cluster."
+ },
+ "autoScalerProfile": {
+ "type": "object",
+ "properties": {
+ "balance-similar-node-groups": {
+ "type": "string",
+ "title": "Detects similar node pools and balances the number of nodes between them.",
+ "description": "Valid values are 'true' and 'false'"
+ },
+ "expander": {
+ "type": "string",
+ "enum": [
+ "least-waste",
+ "most-pods",
+ "priority",
+ "random"
+ ],
+ "x-ms-enum": {
+ "name": "expander",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "least-waste",
+ "description": "Selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up. This is useful when you have different classes of nodes, for example, high CPU or high memory nodes, and only want to expand those when there are pending pods that need a lot of those resources."
+ },
+ {
+ "value": "most-pods",
+ "description": "Selects the node group that would be able to schedule the most pods when scaling up. This is useful when you are using nodeSelector to make sure certain pods land on certain nodes. Note that this won't cause the autoscaler to select bigger nodes vs. smaller, as it can add multiple smaller nodes at once."
+ },
+ {
+ "value": "priority",
+ "description": "Selects the node group that has the highest priority assigned by the user. It's configuration is described in more details [here](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/expander/priority/readme.md)."
+ },
+ {
+ "value": "random",
+ "description": "Used when you don't have a particular need for the node groups to scale differently."
+ }
+ ]
+ },
+ "title": "The expander to use when scaling up",
+ "description": "If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information."
+ },
+ "max-empty-bulk-delete": {
+ "type": "string",
+ "title": "The maximum number of empty nodes that can be deleted at the same time. This must be a positive integer.",
+ "description": "The default is 10."
+ },
+ "max-graceful-termination-sec": {
+ "type": "string",
+ "title": "The maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node.",
+ "description": "The default is 600."
+ },
+ "max-node-provision-time": {
+ "type": "string",
+ "title": "The maximum time the autoscaler waits for a node to be provisioned.",
+ "description": "The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "max-total-unready-percentage": {
+ "type": "string",
+ "title": "The maximum percentage of unready nodes in the cluster. After this percentage is exceeded, cluster autoscaler halts operations.",
+ "description": "The default is 45. The maximum is 100 and the minimum is 0."
+ },
+ "new-pod-scale-up-delay": {
+ "type": "string",
+ "title": "Ignore unscheduled pods before they're a certain age.",
+ "description": "For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc)."
+ },
+ "ok-total-unready-count": {
+ "type": "string",
+ "title": "The number of allowed unready nodes, irrespective of max-total-unready-percentage.",
+ "description": "This must be an integer. The default is 3."
+ },
+ "scan-interval": {
+ "type": "string",
+ "title": "How often cluster is reevaluated for scale up or down.",
+ "description": "The default is '10'. Values must be an integer number of seconds."
+ },
+ "scale-down-delay-after-add": {
+ "type": "string",
+ "title": "How long after scale up that scale down evaluation resumes",
+ "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-delay-after-delete": {
+ "type": "string",
+ "title": "How long after node deletion that scale down evaluation resumes.",
+ "description": "The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-delay-after-failure": {
+ "type": "string",
+ "title": "How long after scale down failure that scale down evaluation resumes.",
+ "description": "The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-unneeded-time": {
+ "type": "string",
+ "title": "How long a node should be unneeded before it is eligible for scale down.",
+ "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-unready-time": {
+ "type": "string",
+ "title": "How long an unready node should be unneeded before it is eligible for scale down",
+ "description": "The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported."
+ },
+ "scale-down-utilization-threshold": {
+ "type": "string",
+ "title": "Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down.",
+ "description": "The default is '0.5'."
+ },
+ "skip-nodes-with-local-storage": {
+ "type": "string",
+ "title": "If cluster autoscaler will skip deleting nodes with pods with local storage, for example, EmptyDir or HostPath.",
+ "description": "The default is true."
+ },
+ "skip-nodes-with-system-pods": {
+ "type": "string",
+ "title": "If cluster autoscaler will skip deleting nodes with pods from kube-system (except for DaemonSet or mirror pods)",
+ "description": "The default is true."
+ }
+ },
+ "description": "Parameters to be applied to the cluster-autoscaler when enabled"
+ },
+ "apiServerAccessProfile": {
+ "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile",
+ "description": "The access profile for managed cluster API server."
+ },
+ "diskEncryptionSetID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/diskEncryptionSets"
+ }
+ ]
+ },
+ "title": "The Resource ID of the disk encryption set to use for enabling encryption at rest.",
+ "description": "This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'"
+ },
+ "identityProfile": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/UserAssignedIdentity"
+ },
+ "description": "Identities associated with the cluster."
+ },
+ "privateLinkResources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ },
+ "description": "Private link resources associated with the cluster."
+ },
+ "disableLocalAccounts": {
+ "type": "boolean",
+ "title": "If local accounts should be disabled on the Managed Cluster.",
+ "description": "If set to true, getting static credentials will be disabled for this cluster. This must only be used on Managed Clusters that are AAD enabled. For more details see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview)."
+ },
+ "httpProxyConfig": {
+ "$ref": "#/definitions/ManagedClusterHTTPProxyConfig",
+ "description": "Configurations for provisioning the cluster with HTTP proxy servers."
+ },
+ "securityProfile": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfile",
+ "description": "Security profile for the managed cluster."
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/ManagedClusterStorageProfile",
+ "description": "Storage profile for the managed cluster."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ },
+ "title": "PublicNetworkAccess of the managedCluster",
+ "description": "Allow or deny public network access for AKS"
+ },
+ "workloadAutoScalerProfile": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfile"
+ },
+ "azureMonitorProfile": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfile"
+ }
+ },
+ "description": "Properties of the managed cluster."
+ },
+ "PowerState": {
+ "type": "object",
+ "description": "Describes the Power State of the cluster",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "Tells whether the cluster is Running or Stopped",
+ "enum": [
+ "Running",
+ "Stopped"
+ ],
+ "x-ms-enum": {
+ "name": "code",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Running",
+ "description": "The cluster is running."
+ },
+ {
+ "value": "Stopped",
+ "description": "The cluster is stopped."
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ManagedClusterAPIServerAccessProfile": {
+ "type": "object",
+ "properties": {
+ "authorizedIPRanges": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "title": "The IP ranges authorized to access the Kubernetes API server.",
+ "description": "IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges)."
+ },
+ "enablePrivateCluster": {
+ "type": "boolean",
+ "title": "Whether to create the cluster as a private cluster or not.",
+ "description": "For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters)."
+ },
+ "privateDNSZone": {
+ "type": "string",
+ "title": "The private DNS zone mode for the cluster.",
+ "description": "The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'."
+ },
+ "enablePrivateClusterPublicFQDN": {
+ "type": "boolean",
+ "description": "Whether to create additional public FQDN for private cluster or not."
+ },
+ "disableRunCommand": {
+ "type": "boolean",
+ "description": "Whether to disable run command for the cluster or not."
+ }
+ },
+ "description": "Access profile for managed cluster API server."
+ },
+ "ManagedClusterIdentity": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal id of the system assigned identity which is used by master components."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant id of the system assigned identity which is used by master components."
+ },
+ "type": {
+ "type": "string",
+ "title": "The type of identity used for the managed cluster.",
+ "description": "For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).",
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "SystemAssigned",
+ "description": "Use an implicitly created system assigned managed identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the system assigned managed identity to manipulate Azure resources."
+ },
+ {
+ "value": "UserAssigned",
+ "description": "Use a user-specified identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the specified user assigned managed identity to manipulate Azure resources."
+ },
+ {
+ "value": "None",
+ "description": "Do not use a managed identity for the Managed Cluster, service principal will be used instead."
+ }
+ ]
+ }
+ },
+ "delegatedResources": {
+ "$ref": "../../../../../../common-types/resource-management/v4/managedidentitywithdelegation.json#/definitions/DelegatedResources",
+ "description": "The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only."
+ },
+ "userAssignedIdentities": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "object",
+ "x-ms-client-name": "ManagedServiceIdentityUserAssignedIdentitiesValue",
+ "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."
+ }
+ }
+ },
+ "title": "The user identity associated with the managed cluster. This identity will be used in control plane. Only one user assigned identity is allowed.",
+ "description": "The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."
+ }
+ },
+ "description": "Identity for the managed cluster."
+ },
+ "UserAssignedIdentity": {
+ "type": "object",
+ "properties": {
+ "resourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.ManagedIdentity/userAssignedIdentities"
+ }
+ ]
+ },
+ "description": "The resource ID of the user assigned identity."
+ },
+ "clientId": {
+ "type": "string",
+ "description": "The client ID of the user assigned identity."
+ },
+ "objectId": {
+ "type": "string",
+ "description": "The object ID of the user assigned identity."
+ }
+ },
+ "description": "Details about a user assigned identity."
+ },
+ "ManagedClusterAccessProfile": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "AccessProfile of a managed cluster.",
+ "$ref": "#/definitions/AccessProfile",
+ "x-ms-client-flatten": true
+ }
+ },
+ "description": "Managed cluster Access Profile.",
+ "x-ms-azure-resource": false
+ },
+ "AccessProfile": {
+ "type": "object",
+ "properties": {
+ "kubeConfig": {
+ "type": "string",
+ "format": "byte",
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "Profile for enabling a user to access a managed cluster."
+ },
+ "ManagedClusterPoolUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "name": {
+ "type": "string",
+ "description": "The Agent Pool name."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "upgrades": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether the Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of orchestrator types and versions available for upgrade."
+ }
+ },
+ "required": [
+ "kubernetesVersion",
+ "osType"
+ ],
+ "description": "The list of available upgrade versions."
+ },
+ "ManagedClusterUpgradeProfileProperties": {
+ "type": "object",
+ "properties": {
+ "controlPlaneProfile": {
+ "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile",
+ "description": "The list of available upgrade versions for the control plane."
+ },
+ "agentPoolProfiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of available upgrade versions for agent pools."
+ }
+ },
+ "required": [
+ "controlPlaneProfile",
+ "agentPoolProfiles"
+ ],
+ "description": "Control plane and agent pool upgrade profiles."
+ },
+ "ManagedClusterAutoUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "upgradeChannel": {
+ "type": "string",
+ "enum": [
+ "rapid",
+ "stable",
+ "patch",
+ "node-image",
+ "none"
+ ],
+ "x-ms-enum": {
+ "name": "upgradeChannel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "rapid",
+ "description": "Automatically upgrade the cluster to the latest supported patch release on the latest supported minor version. In cases where the cluster is at a version of Kubernetes that is at an N-2 minor version where N is the latest supported minor version, the cluster first upgrades to the latest supported patch version on N-1 minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster first is upgraded to 1.18.6, then is upgraded to 1.19.1."
+ },
+ {
+ "value": "stable",
+ "description": "Automatically upgrade the cluster to the latest supported patch release on minor version N-1, where N is the latest supported minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.18.6."
+ },
+ {
+ "value": "patch",
+ "description": "Automatically upgrade the cluster to the latest supported patch version when it becomes available while keeping the minor version the same. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.17.9."
+ },
+ {
+ "value": "node-image",
+ "description": "Automatically upgrade the node image to the latest version available. Consider using nodeOSUpgradeChannel instead as that allows you to configure node OS patching separate from Kubernetes version patching"
+ },
+ {
+ "value": "none",
+ "description": "Disables auto-upgrades and keeps the cluster at its current version of Kubernetes."
+ }
+ ]
+ },
+ "title": "The upgrade channel for auto upgrade. The default is 'none'.",
+ "description": "For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel)."
+ },
+ "nodeOSUpgradeChannel": {
+ "type": "string",
+ "enum": [
+ "Unmanaged",
+ "None",
+ "NodeImage"
+ ],
+ "x-ms-enum": {
+ "name": "nodeOSUpgradeChannel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "None",
+ "description": "No attempt to update your machines OS will be made either by OS or by rolling VHDs. This means you are responsible for your security updates"
+ },
+ {
+ "value": "Unmanaged",
+ "description": "OS updates will be applied automatically through the OS built-in patching infrastructure. Newly scaled in machines will be unpatched initially and will be patched at some point by the OS's infrastructure. Behavior of this option depends on the OS in question. Ubuntu and Mariner apply security patches through unattended upgrade roughly once a day around 06:00 UTC. Windows does not apply security patches automatically and so for them this option is equivalent to None till further notice"
+ },
+ {
+ "value": "NodeImage",
+ "description": "AKS will update the nodes with a newly patched VHD containing security fixes and bugfixes on a weekly cadence. With the VHD update machines will be rolling reimaged to that VHD following maintenance windows and surge settings. No extra VHD cost is incurred when choosing this option as AKS hosts the images."
+ }
+ ]
+ },
+ "title": "Node OS Upgrade Channel",
+ "description": "Manner in which the OS on your nodes is updated. The default is NodeImage."
+ }
+ },
+ "description": "Auto upgrade profile for a managed cluster."
+ },
+ "UpgradeOverrideSettings": {
+ "type": "object",
+ "properties": {
+ "forceUpgrade": {
+ "type": "boolean",
+ "description": "Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution."
+ },
+ "until": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect."
+ }
+ },
+ "description": "Settings for overrides when upgrading a cluster."
+ },
+ "ClusterUpgradeSettings": {
+ "type": "object",
+ "properties": {
+ "overrideSettings": {
+ "$ref": "#/definitions/UpgradeOverrideSettings",
+ "description": "Settings for overrides."
+ }
+ },
+ "description": "Settings for upgrading a cluster."
+ },
+ "ManagedClusterAADProfile": {
+ "type": "object",
+ "properties": {
+ "managed": {
+ "type": "boolean",
+ "description": "Whether to enable managed AAD."
+ },
+ "enableAzureRBAC": {
+ "type": "boolean",
+ "description": "Whether to enable Azure RBAC for Kubernetes authorization."
+ },
+ "adminGroupObjectIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of AAD group object IDs that will have admin role of the cluster."
+ },
+ "clientAppID": {
+ "type": "string",
+ "description": "(DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "serverAppID": {
+ "type": "string",
+ "description": "(DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "serverAppSecret": {
+ "type": "string",
+ "description": "(DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy."
+ },
+ "tenantID": {
+ "type": "string",
+ "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription."
+ }
+ },
+ "title": "AADProfile specifies attributes for Azure Active Directory integration.",
+ "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)."
+ },
+ "ManagedClusterAddonProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the add-on is enabled or not."
+ },
+ "config": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Key-value pairs for configuring an add-on."
+ },
+ "identity": {
+ "readOnly": true,
+ "description": "Information of user assigned identity used by this add-on.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/UserAssignedIdentity"
+ }
+ ]
+ }
+ },
+ "required": [
+ "enabled"
+ ],
+ "description": "A Kubernetes add-on profile for a managed cluster."
+ },
+ "ManagedClusterPodIdentity": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the pod identity."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the pod identity."
+ },
+ "bindingSelector": {
+ "type": "string",
+ "description": "The binding selector to use for the AzureIdentityBinding resource."
+ },
+ "identity": {
+ "$ref": "#/definitions/UserAssignedIdentity",
+ "description": "The user assigned identity details."
+ },
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state of the pod identity.",
+ "enum": [
+ "Assigned",
+ "Canceled",
+ "Deleting",
+ "Failed",
+ "Succeeded",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterPodIdentityProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "provisioningInfo": {
+ "type": "object",
+ "readOnly": true,
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProvisioningError",
+ "description": "Pod identity assignment error (if any)."
+ }
+ }
+ }
+ },
+ "required": [
+ "name",
+ "namespace",
+ "identity"
+ ],
+ "description": "Details about the pod identity assigned to the Managed Cluster."
+ },
+ "ManagedClusterPodIdentityProvisioningError": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityProvisioningErrorBody",
+ "description": "Details about the error."
+ }
+ },
+ "description": "An error response from the pod identity provisioning."
+ },
+ "ManagedClusterPodIdentityProvisioningErrorBody": {
+ "type": "object",
+ "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/ManagedClusterPodIdentityProvisioningErrorBody"
+ },
+ "x-ms-identifiers": [],
+ "description": "A list of additional details about the error."
+ }
+ },
+ "description": "An error response from the pod identity provisioning."
+ },
+ "ManagedClusterPodIdentityException": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the pod identity exception."
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the pod identity exception."
+ },
+ "podLabels": {
+ "type": "object",
+ "description": "The pod labels to match.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "name",
+ "namespace",
+ "podLabels"
+ ],
+ "title": "A pod identity exception, which allows pods with certain labels to access the Azure Instance Metadata Service (IMDS) endpoint without being intercepted by the node-managed identity (NMI) server.",
+ "description": "See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details."
+ },
+ "ManagedClusterPodIdentityProfile": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the pod identity addon is enabled."
+ },
+ "allowNetworkPluginKubenet": {
+ "type": "boolean",
+ "title": "Whether pod identity is allowed to run on clusters with Kubenet networking.",
+ "description": "Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information."
+ },
+ "userAssignedIdentities": {
+ "description": "The pod identities to use in the cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPodIdentity"
+ },
+ "x-ms-identifiers": []
+ },
+ "userAssignedIdentityExceptions": {
+ "description": "The pod identity exceptions to allow.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedClusterPodIdentityException"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "title": "The pod identity profile of the Managed Cluster.",
+ "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration."
+ },
+ "ManagedClusterOIDCIssuerProfile": {
+ "type": "object",
+ "properties": {
+ "issuerURL": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The OIDC issuer url of the Managed Cluster."
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether the OIDC issuer is enabled."
+ }
+ },
+ "description": "The OIDC issuer profile of the Managed Cluster."
+ },
+ "ManagedClusterUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the upgrade profile."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the upgrade profile."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the upgrade profile."
+ },
+ "properties": {
+ "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties",
+ "description": "The properties of the upgrade profile.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available upgrades for compute pools."
+ },
+ "AgentPoolUpgradeProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the agent pool upgrade profile."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the agent pool upgrade profile."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the agent pool upgrade profile."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolUpgradeProfileProperties",
+ "description": "The properties of the agent pool upgrade profile.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available upgrades for an agent pool."
+ },
+ "AgentPoolUpgradeProfileProperties": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "osType": {
+ "$ref": "#/definitions/OSType"
+ },
+ "upgrades": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether the Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of orchestrator types and versions available for upgrade."
+ },
+ "latestNodeImageVersion": {
+ "type": "string",
+ "description": "The latest AKS supported node image version."
+ }
+ },
+ "required": [
+ "kubernetesVersion",
+ "osType"
+ ],
+ "description": "The list of available upgrade versions."
+ },
+ "AgentPoolAvailableVersions": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the agent pool version list."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the agent pool version list."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Type of the agent pool version list."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolAvailableVersionsProperties",
+ "description": "Properties of agent pool available versions.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The list of available versions for an agent pool."
+ },
+ "AgentPoolAvailableVersionsProperties": {
+ "type": "object",
+ "properties": {
+ "agentPoolVersions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "default": {
+ "type": "boolean",
+ "description": "Whether this version is the default agent pool version."
+ },
+ "kubernetesVersion": {
+ "type": "string",
+ "description": "The Kubernetes version (major.minor.patch)."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether Kubernetes version is currently in preview."
+ }
+ }
+ },
+ "x-ms-identifiers": [],
+ "description": "List of versions available for agent pool."
+ }
+ },
+ "description": "The list of available agent pool versions."
+ },
+ "OSType": {
+ "type": "string",
+ "default": "Linux",
+ "enum": [
+ "Linux",
+ "Windows"
+ ],
+ "x-ms-enum": {
+ "name": "OSType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Linux",
+ "description": "Use Linux."
+ },
+ {
+ "value": "Windows",
+ "description": "Use Windows."
+ }
+ ]
+ },
+ "description": "The operating system type. The default is Linux."
+ },
+ "OSSKU": {
+ "type": "string",
+ "enum": [
+ "Ubuntu",
+ "CBLMariner",
+ "AzureLinux",
+ "Windows2019",
+ "Windows2022"
+ ],
+ "x-ms-enum": {
+ "name": "OSSKU",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Ubuntu",
+ "description": "Use Ubuntu as the OS for node images."
+ },
+ {
+ "value": "AzureLinux",
+ "description": "Use AzureLinux as the OS for node images. Azure Linux is a container-optimized Linux distro built by Microsoft, visit https://aka.ms/azurelinux for more information."
+ },
+ {
+ "value": "CBLMariner",
+ "description": "Deprecated OSSKU. Microsoft recommends that new deployments choose 'AzureLinux' instead."
+ },
+ {
+ "value": "Windows2019",
+ "description": "Use Windows2019 as the OS for node images. Unsupported for system node pools. Windows2019 only supports Windows2019 containers; it cannot run Windows2022 containers and vice versa."
+ },
+ {
+ "value": "Windows2022",
+ "description": "Use Windows2022 as the OS for node images. Unsupported for system node pools. Windows2022 only supports Windows2022 containers; it cannot run Windows2019 containers and vice versa."
+ }
+ ]
+ },
+ "description": "Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows."
+ },
+ "ScaleSetPriority": {
+ "type": "string",
+ "default": "Regular",
+ "enum": [
+ "Spot",
+ "Regular"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleSetPriority",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Spot",
+ "description": "Spot priority VMs will be used. There is no SLA for spot nodes. See [spot on AKS](https://docs.microsoft.com/azure/aks/spot-node-pool) for more information."
+ },
+ {
+ "value": "Regular",
+ "description": "Regular VMs will be used."
+ }
+ ]
+ },
+ "description": "The Virtual Machine Scale Set priority."
+ },
+ "ScaleSetEvictionPolicy": {
+ "type": "string",
+ "default": "Delete",
+ "enum": [
+ "Delete",
+ "Deallocate"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleSetEvictionPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Delete",
+ "description": "Nodes in the underlying Scale Set of the node pool are deleted when they're evicted."
+ },
+ {
+ "value": "Deallocate",
+ "description": "Nodes in the underlying Scale Set of the node pool are set to the stopped-deallocated state upon eviction. Nodes in the stopped-deallocated state count against your compute quota and can cause issues with cluster scaling or upgrading."
+ }
+ ]
+ },
+ "title": "The Virtual Machine Scale Set eviction policy.",
+ "description": "The eviction policy specifies what to do with the VM when it is evicted. The default is Delete. For more information about eviction see [spot VMs](https://docs.microsoft.com/azure/virtual-machines/spot-vms)"
+ },
+ "SpotMaxPrice": {
+ "type": "number",
+ "default": -1,
+ "title": "The max price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.",
+ "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)"
+ },
+ "ScaleDownMode": {
+ "type": "string",
+ "enum": [
+ "Delete",
+ "Deallocate"
+ ],
+ "x-ms-enum": {
+ "name": "ScaleDownMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Delete",
+ "description": "Create new instances during scale up and remove instances during scale down."
+ },
+ {
+ "value": "Deallocate",
+ "description": "Attempt to start deallocated instances (if they exist) during scale up and deallocate instances during scale down."
+ }
+ ]
+ },
+ "description": "Describes how VMs are added to or removed from Agent Pools. See [billing states](https://docs.microsoft.com/azure/virtual-machines/states-billing)."
+ },
+ "ProximityPlacementGroupID": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Compute/proximityPlacementGroups"
+ }
+ ]
+ },
+ "description": "The ID for Proximity Placement Group."
+ },
+ "CredentialResults": {
+ "type": "object",
+ "properties": {
+ "kubeconfigs": {
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/CredentialResult"
+ },
+ "x-ms-identifiers": [],
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "The list credential result response."
+ },
+ "CredentialResult": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The name of the credential."
+ },
+ "value": {
+ "type": "string",
+ "format": "byte",
+ "readOnly": true,
+ "description": "Base64-encoded Kubernetes configuration file."
+ }
+ },
+ "description": "The credential result response."
+ },
+ "CloudError": {
+ "type": "object",
+ "x-ms-external": true,
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/CloudErrorBody",
+ "description": "Details about the error."
+ }
+ },
+ "description": "An error response from the Container service."
+ },
+ "CloudErrorBody": {
+ "type": "object",
+ "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": [],
+ "description": "A list of additional details about the error."
+ }
+ },
+ "description": "An error response from the Container service."
+ },
+ "ManagedClusterSKU": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of a managed cluster SKU.",
+ "enum": [
+ "Base"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterSKUName",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Base",
+ "description": "Base option for the AKS control plane."
+ }
+ ]
+ }
+ },
+ "tier": {
+ "type": "string",
+ "title": "The tier of a managed cluster SKU.",
+ "description": "If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details.",
+ "enum": [
+ "Standard",
+ "Free",
+ "Premium"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedClusterSKUTier",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Premium",
+ "description": "Cluster has premium capabilities in addition to all of the capabilities included in 'Standard'. Premium enables selection of LongTermSupport (aka.ms/aks/lts) for certain Kubernetes versions."
+ },
+ {
+ "value": "Standard",
+ "description": "Recommended for mission-critical and production workloads. Includes Kubernetes control plane autoscaling, workload-intensive testing, and up to 5,000 nodes per cluster. Guarantees 99.95% availability of the Kubernetes API server endpoint for clusters that use Availability Zones and 99.9% of availability for clusters that don't use Availability Zones."
+ },
+ {
+ "value": "Free",
+ "description": "The cluster management is free, but charged for VM, storage, and networking usage. Best for experimenting, learning, simple testing, or workloads with fewer than 10 nodes. Not recommended for production use cases."
+ }
+ ]
+ }
+ }
+ },
+ "description": "The SKU of a Managed Cluster."
+ },
+ "PrivateEndpointConnectionListResult": {
+ "type": "object",
+ "description": "A list of private endpoint connections",
+ "properties": {
+ "value": {
+ "description": "The collection value.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "description": "A private endpoint connection",
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the private endpoint connection."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the private endpoint connection.",
+ "externalDocs": {
+ "url": "https://aka.ms/search-naming-rules"
+ }
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type."
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "description": "The properties of a private endpoint connection.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "PrivateEndpointConnectionProperties": {
+ "type": "object",
+ "description": "Properties of a private endpoint connection.",
+ "properties": {
+ "provisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Canceled",
+ "Creating",
+ "Deleting",
+ "Failed",
+ "Succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The resource of private endpoint."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ }
+ },
+ "required": [
+ "privateLinkServiceConnectionState"
+ ]
+ },
+ "PrivateEndpoint": {
+ "type": "object",
+ "description": "Private endpoint which a connection belongs to.",
+ "properties": {
+ "id": {
+ "description": "The resource ID of the private endpoint",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "description": "The state of a private link service connection.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "type": "string",
+ "description": "The private link service connection status.",
+ "x-ms-enum": {
+ "name": "ConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "type": "string",
+ "description": "The private link service connection description."
+ }
+ }
+ },
+ "PrivateLinkResourcesListResult": {
+ "type": "object",
+ "description": "A list of private link resources",
+ "properties": {
+ "value": {
+ "description": "The collection value.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ }
+ }
+ },
+ "PrivateLinkResource": {
+ "description": "A private link resource",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the private link resource."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the private link resource.",
+ "externalDocs": {
+ "url": "https://aka.ms/search-naming-rules"
+ }
+ },
+ "type": {
+ "type": "string",
+ "description": "The resource type."
+ },
+ "groupId": {
+ "type": "string",
+ "description": "The group ID of the resource."
+ },
+ "requiredMembers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The RequiredMembers of the resource"
+ },
+ "privateLinkServiceID": {
+ "readOnly": true,
+ "type": "string",
+ "format": "arm-id",
+ "description": "The private link service ID of the resource, this field is exposed only to NRP internally."
+ }
+ }
+ },
+ "OSDiskType": {
+ "type": "string",
+ "enum": [
+ "Managed",
+ "Ephemeral"
+ ],
+ "x-ms-enum": {
+ "name": "OSDiskType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Managed",
+ "description": "Azure replicates the operating system disk for a virtual machine to Azure storage to avoid data loss should the VM need to be relocated to another host. Since containers aren't designed to have local state persisted, this behavior offers limited value while providing some drawbacks, including slower node provisioning and higher read/write latency."
+ },
+ {
+ "value": "Ephemeral",
+ "description": "Ephemeral OS disks are stored only on the host machine, just like a temporary disk. This provides lower read/write latency, along with faster node scaling and cluster upgrades."
+ }
+ ]
+ },
+ "title": "The OS disk type to be used for machines in the agent pool.",
+ "description": "The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os)."
+ },
+ "KubeletDiskType": {
+ "type": "string",
+ "enum": [
+ "OS",
+ "Temporary"
+ ],
+ "x-ms-enum": {
+ "name": "KubeletDiskType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "OS",
+ "description": "Kubelet will use the OS disk for its data."
+ },
+ {
+ "value": "Temporary",
+ "description": "Kubelet will use the temporary disk for its data."
+ }
+ ]
+ },
+ "description": "Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage."
+ },
+ "WorkloadRuntime": {
+ "type": "string",
+ "enum": [
+ "OCIContainer",
+ "WasmWasi"
+ ],
+ "x-ms-enum": {
+ "name": "WorkloadRuntime",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "OCIContainer",
+ "description": "Nodes will use Kubelet to run standard OCI container workloads."
+ },
+ {
+ "value": "WasmWasi",
+ "description": "Nodes will use Krustlet to run WASM workloads using the WASI provider (Preview)."
+ }
+ ]
+ },
+ "description": "Determines the type of workload a node can run."
+ },
+ "KubeletConfig": {
+ "title": "Kubelet configurations of agent nodes.",
+ "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.",
+ "type": "object",
+ "properties": {
+ "cpuManagerPolicy": {
+ "type": "string",
+ "title": "The CPU Manager policy to use.",
+ "description": "The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'."
+ },
+ "cpuCfsQuota": {
+ "type": "boolean",
+ "title": "If CPU CFS quota enforcement is enabled for containers that specify CPU limits.",
+ "description": "The default is true."
+ },
+ "cpuCfsQuotaPeriod": {
+ "type": "string",
+ "title": "The CPU CFS quota period value.",
+ "description": "The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'."
+ },
+ "imageGcHighThreshold": {
+ "type": "integer",
+ "format": "int32",
+ "title": "The percent of disk usage after which image garbage collection is always run.",
+ "description": "To disable image garbage collection, set to 100. The default is 85%"
+ },
+ "imageGcLowThreshold": {
+ "type": "integer",
+ "format": "int32",
+ "title": "The percent of disk usage before which image garbage collection is never run.",
+ "description": "This cannot be set higher than imageGcHighThreshold. The default is 80%"
+ },
+ "topologyManagerPolicy": {
+ "type": "string",
+ "title": "The Topology Manager policy to use.",
+ "description": "For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'."
+ },
+ "allowedUnsafeSysctls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`)."
+ },
+ "failSwapOn": {
+ "type": "boolean",
+ "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node."
+ },
+ "containerLogMaxSizeMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated."
+ },
+ "containerLogMaxFiles": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2.",
+ "minimum": 2
+ },
+ "podMaxPids": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The maximum number of processes per pod."
+ }
+ }
+ },
+ "LinuxOSConfig": {
+ "title": "OS configurations of Linux agent nodes.",
+ "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.",
+ "type": "object",
+ "properties": {
+ "sysctls": {
+ "$ref": "#/definitions/SysctlConfig",
+ "description": "Sysctl settings for Linux agent nodes."
+ },
+ "transparentHugePageEnabled": {
+ "type": "string",
+ "title": "Whether transparent hugepages are enabled.",
+ "description": "Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)."
+ },
+ "transparentHugePageDefrag": {
+ "type": "string",
+ "title": "Whether the kernel should make aggressive use of memory compaction to make more hugepages available.",
+ "description": "Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)."
+ },
+ "swapFileSizeMB": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The size in MB of a swap file that will be created on each node."
+ }
+ }
+ },
+ "SysctlConfig": {
+ "description": "Sysctl settings for Linux agent nodes.",
+ "type": "object",
+ "properties": {
+ "netCoreSomaxconn": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.somaxconn."
+ },
+ "netCoreNetdevMaxBacklog": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.netdev_max_backlog."
+ },
+ "netCoreRmemDefault": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.rmem_default."
+ },
+ "netCoreRmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.rmem_max."
+ },
+ "netCoreWmemDefault": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.wmem_default."
+ },
+ "netCoreWmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.wmem_max."
+ },
+ "netCoreOptmemMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.core.optmem_max."
+ },
+ "netIpv4TcpMaxSynBacklog": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog."
+ },
+ "netIpv4TcpMaxTwBuckets": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets."
+ },
+ "netIpv4TcpFinTimeout": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_fin_timeout."
+ },
+ "netIpv4TcpKeepaliveTime": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_time."
+ },
+ "netIpv4TcpKeepaliveProbes": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_probes."
+ },
+ "netIpv4TcpkeepaliveIntvl": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 10,
+ "maximum": 90,
+ "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl."
+ },
+ "netIpv4TcpTwReuse": {
+ "type": "boolean",
+ "description": "Sysctl setting net.ipv4.tcp_tw_reuse."
+ },
+ "netIpv4IpLocalPortRange": {
+ "type": "string",
+ "description": "Sysctl setting net.ipv4.ip_local_port_range."
+ },
+ "netIpv4NeighDefaultGcThresh1": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1."
+ },
+ "netIpv4NeighDefaultGcThresh2": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2."
+ },
+ "netIpv4NeighDefaultGcThresh3": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3."
+ },
+ "netNetfilterNfConntrackMax": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 131072,
+ "maximum": 2097152,
+ "description": "Sysctl setting net.netfilter.nf_conntrack_max."
+ },
+ "netNetfilterNfConntrackBuckets": {
+ "type": "integer",
+ "format": "int32",
+ "minimum": 65536,
+ "maximum": 524288,
+ "description": "Sysctl setting net.netfilter.nf_conntrack_buckets."
+ },
+ "fsInotifyMaxUserWatches": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.inotify.max_user_watches."
+ },
+ "fsFileMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.file-max."
+ },
+ "fsAioMaxNr": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.aio-max-nr."
+ },
+ "fsNrOpen": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting fs.nr_open."
+ },
+ "kernelThreadsMax": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting kernel.threads-max."
+ },
+ "vmMaxMapCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.max_map_count."
+ },
+ "vmSwappiness": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.swappiness."
+ },
+ "vmVfsCachePressure": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Sysctl setting vm.vfs_cache_pressure."
+ }
+ }
+ },
+ "ManagedClusterHTTPProxyConfig": {
+ "description": "Cluster HTTP proxy configuration.",
+ "type": "object",
+ "properties": {
+ "httpProxy": {
+ "type": "string",
+ "description": "The HTTP proxy server endpoint to use."
+ },
+ "httpsProxy": {
+ "type": "string",
+ "description": "The HTTPS proxy server endpoint to use."
+ },
+ "noProxy": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The endpoints that should not go through proxy."
+ },
+ "trustedCa": {
+ "type": "string",
+ "description": "Alternative CA cert to use for connecting to proxy servers."
+ }
+ }
+ },
+ "GPUInstanceProfile": {
+ "type": "string",
+ "enum": [
+ "MIG1g",
+ "MIG2g",
+ "MIG3g",
+ "MIG4g",
+ "MIG7g"
+ ],
+ "x-ms-enum": {
+ "name": "GPUInstanceProfile ",
+ "modelAsString": true
+ },
+ "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU."
+ },
+ "ExtendedLocationType": {
+ "type": "string",
+ "description": "The type of extendedLocation.",
+ "enum": [
+ "EdgeZone"
+ ],
+ "x-ms-enum": {
+ "name": "ExtendedLocationTypes",
+ "modelAsString": true
+ }
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "description": "The complex type of the extended location.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the extended location."
+ },
+ "type": {
+ "$ref": "#/definitions/ExtendedLocationType",
+ "description": "The type of the extended location."
+ }
+ }
+ },
+ "OSOptionProperty": {
+ "type": "object",
+ "properties": {
+ "os-type": {
+ "type": "string",
+ "description": "The OS type."
+ },
+ "enable-fips-image": {
+ "type": "boolean",
+ "description": "Whether the image is FIPS-enabled."
+ }
+ },
+ "required": [
+ "os-type",
+ "enable-fips-image"
+ ],
+ "description": "OS option property."
+ },
+ "OSOptionPropertyList": {
+ "type": "object",
+ "properties": {
+ "osOptionPropertyList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSOptionProperty"
+ },
+ "x-ms-identifiers": [],
+ "description": "The list of OS options."
+ }
+ },
+ "required": [
+ "osOptionPropertyList"
+ ],
+ "description": "The list of OS option properties."
+ },
+ "OSOptionProfile": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The ID of the OS option resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the OS option resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the OS option resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/OSOptionPropertyList",
+ "description": "The list of OS options.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "The OS option profile."
+ },
+ "EndpointDependency": {
+ "description": "A domain name that AKS agent nodes are reaching at.",
+ "type": "object",
+ "properties": {
+ "domainName": {
+ "description": "The domain name of the dependency.",
+ "type": "string"
+ },
+ "endpointDetails": {
+ "description": "The Ports and Protocols used when connecting to domainName.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointDetail"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "EndpointDetail": {
+ "description": "connect information from the AKS agent nodes to a single endpoint.",
+ "type": "object",
+ "properties": {
+ "ipAddress": {
+ "description": "An IP Address that Domain Name currently resolves to.",
+ "type": "string"
+ },
+ "port": {
+ "format": "int32",
+ "description": "The port an endpoint is connected to.",
+ "type": "integer"
+ },
+ "protocol": {
+ "description": "The protocol used for connection",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the detail",
+ "type": "string"
+ }
+ }
+ },
+ "OutboundEnvironmentEndpoint": {
+ "description": "Egress endpoints which AKS agent nodes connect to for common purpose.",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "The category of endpoints accessed by the AKS agent node, e.g. azure-resource-management, apiserver, etc.",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "The endpoints that AKS agent nodes connect to",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointDependency"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "OutboundEnvironmentEndpointCollection": {
+ "description": "Collection of OutboundEnvironmentEndpoint",
+ "required": [
+ "value"
+ ],
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Collection of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OutboundEnvironmentEndpoint"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedClusterSecurityProfile": {
+ "type": "object",
+ "properties": {
+ "defender": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileDefender",
+ "description": "Microsoft Defender settings for the security profile."
+ },
+ "azureKeyVaultKms": {
+ "$ref": "#/definitions/AzureKeyVaultKms",
+ "description": "Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile."
+ },
+ "workloadIdentity": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileWorkloadIdentity",
+ "description": "Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details."
+ },
+ "imageCleaner": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileImageCleaner",
+ "description": "Image Cleaner settings for the security profile."
+ }
+ },
+ "description": "Security profile for the container service cluster."
+ },
+ "AzureKeyVaultKms": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Azure Key Vault key management service. The default is false."
+ },
+ "keyId": {
+ "type": "string",
+ "description": "Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty."
+ },
+ "keyVaultNetworkAccess": {
+ "type": "string",
+ "enum": [
+ "Public",
+ "Private"
+ ],
+ "default": "Public",
+ "x-ms-enum": {
+ "name": "KeyVaultNetworkAccessTypes",
+ "modelAsString": true
+ },
+ "title": "Network access of the key vault",
+ "description": "Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`."
+ },
+ "keyVaultResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ ]
+ },
+ "description": "Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty."
+ }
+ },
+ "description": "Azure Key Vault key management service settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileWorkloadIdentity": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable workload identity."
+ }
+ },
+ "description": "Workload identity settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileImageCleaner": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Image Cleaner on AKS cluster."
+ },
+ "intervalHours": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Image Cleaner scanning interval in hours."
+ }
+ },
+ "description": "Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile."
+ },
+ "ManagedClusterStorageProfile": {
+ "type": "object",
+ "properties": {
+ "diskCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileDiskCSIDriver",
+ "description": "AzureDisk CSI Driver settings for the storage profile."
+ },
+ "fileCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileFileCSIDriver",
+ "description": "AzureFile CSI Driver settings for the storage profile."
+ },
+ "snapshotController": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileSnapshotController",
+ "description": "Snapshot Controller settings for the storage profile."
+ },
+ "blobCSIDriver": {
+ "$ref": "#/definitions/ManagedClusterStorageProfileBlobCSIDriver",
+ "description": "AzureBlob CSI Driver settings for the storage profile."
+ }
+ },
+ "description": "Storage profile for the container service cluster."
+ },
+ "ManagedClusterSecurityProfileDefender": {
+ "type": "object",
+ "properties": {
+ "logAnalyticsWorkspaceResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.OperationalInsights/workspaces"
+ }
+ ]
+ },
+ "description": "Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty."
+ },
+ "securityMonitoring": {
+ "$ref": "#/definitions/ManagedClusterSecurityProfileDefenderSecurityMonitoring",
+ "description": "Microsoft Defender threat detection for Cloud settings for the security profile."
+ }
+ },
+ "description": "Microsoft Defender settings for the security profile."
+ },
+ "ManagedClusterSecurityProfileDefenderSecurityMonitoring": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Defender threat detection"
+ }
+ },
+ "description": "Microsoft Defender settings for the security profile threat detection."
+ },
+ "ManagedClusterStorageProfileDiskCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureDisk CSI Driver. The default value is true."
+ }
+ },
+ "description": "AzureDisk CSI Driver settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileFileCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureFile CSI Driver. The default value is true."
+ }
+ },
+ "description": "AzureFile CSI Driver settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileSnapshotController": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable Snapshot Controller. The default value is true."
+ }
+ },
+ "description": "Snapshot Controller settings for the storage profile."
+ },
+ "ManagedClusterStorageProfileBlobCSIDriver": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable AzureBlob CSI Driver. The default value is false."
+ }
+ },
+ "description": "AzureBlob CSI Driver settings for the storage profile."
+ },
+ "CreationData": {
+ "description": "Data used when creating a target resource from a source resource.",
+ "type": "object",
+ "properties": {
+ "sourceResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "This is the ARM ID of the source object to be used to create the target object."
+ }
+ }
+ },
+ "SnapshotListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "description": "The list of snapshots."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of snapshot results.",
+ "readOnly": true
+ }
+ },
+ "description": "The response from the List Snapshots operation."
+ },
+ "Snapshot": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "Properties of a snapshot.",
+ "$ref": "#/definitions/SnapshotProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "description": "A node pool snapshot resource."
+ },
+ "SnapshotProperties": {
+ "type": "object",
+ "properties": {
+ "creationData": {
+ "$ref": "#/definitions/CreationData",
+ "description": "CreationData to be used to specify the source agent pool resource ID to create this snapshot."
+ },
+ "snapshotType": {
+ "$ref": "#/definitions/SnapshotType"
+ },
+ "kubernetesVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of Kubernetes."
+ },
+ "nodeImageVersion": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The version of node image."
+ },
+ "osType": {
+ "readOnly": true,
+ "$ref": "#/definitions/OSType"
+ },
+ "osSku": {
+ "readOnly": true,
+ "$ref": "#/definitions/OSSKU"
+ },
+ "vmSize": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The size of the VM."
+ },
+ "enableFIPS": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Whether to use a FIPS-enabled OS."
+ }
+ },
+ "description": "Properties used to configure a node pool snapshot."
+ },
+ "SnapshotType": {
+ "type": "string",
+ "default": "NodePool",
+ "enum": [
+ "NodePool"
+ ],
+ "x-ms-enum": {
+ "name": "SnapshotType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "NodePool",
+ "description": "The snapshot is a snapshot of a node pool."
+ }
+ ]
+ },
+ "description": "The type of a snapshot. The default is NodePool."
+ },
+ "ManagedClusterWorkloadAutoScalerProfile": {
+ "type": "object",
+ "description": "Workload Auto-scaler profile for the managed cluster.",
+ "properties": {
+ "keda": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfileKeda"
+ },
+ "verticalPodAutoscaler": {
+ "$ref": "#/definitions/ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler"
+ }
+ }
+ },
+ "ManagedClusterWorkloadAutoScalerProfileKeda": {
+ "type": "object",
+ "description": "KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable KEDA."
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler": {
+ "type": "object",
+ "description": "VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable VPA. Default value is false.",
+ "default": false
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "ManagedClusterAzureMonitorProfile": {
+ "type": "object",
+ "description": "Azure Monitor addon profiles for monitoring the managed cluster.",
+ "properties": {
+ "metrics": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfileMetrics"
+ }
+ }
+ },
+ "ManagedClusterAzureMonitorProfileKubeStateMetrics": {
+ "type": "object",
+ "description": "Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details.",
+ "properties": {
+ "metricLabelsAllowlist": {
+ "type": "string",
+ "description": "Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels."
+ },
+ "metricAnnotationsAllowList": {
+ "type": "string",
+ "description": "Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels."
+ }
+ }
+ },
+ "ManagedClusterAzureMonitorProfileMetrics": {
+ "type": "object",
+ "description": "Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview.",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling."
+ },
+ "kubeStateMetrics": {
+ "$ref": "#/definitions/ManagedClusterAzureMonitorProfileKubeStateMetrics"
+ }
+ },
+ "required": [
+ "enabled"
+ ]
+ },
+ "KubernetesSupportPlan": {
+ "type": "string",
+ "description": "Different support tiers for AKS managed clusters",
+ "enum": [
+ "KubernetesOfficial",
+ "AKSLongTermSupport"
+ ],
+ "x-ms-enum": {
+ "name": "KubernetesSupportPlan",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "KubernetesOfficial",
+ "description": "Support for the version is the same as for the open source Kubernetes offering. Official Kubernetes open source community support versions for 1 year after release."
+ },
+ {
+ "value": "AKSLongTermSupport",
+ "description": "Support for the version extended past the KubernetesOfficial support of 1 year. AKS continues to patch CVEs for another 1 year, for a total of 2 years of support."
+ }
+ ]
+ }
+ },
+ "KubernetesVersionCapabilities": {
+ "type": "object",
+ "description": "Capabilities on this Kubernetes version.",
+ "properties": {
+ "supportPlan": {
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/KubernetesSupportPlan"
+ }
+ }
+ }
+ },
+ "KubernetesPatchVersion": {
+ "type": "object",
+ "description": "Kubernetes patch version profile",
+ "properties": {
+ "upgrades": {
+ "type": "array",
+ "description": "Possible upgrade path for given patch version",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "KubernetesVersion": {
+ "type": "object",
+ "description": "Kubernetes version profile for given major.minor release.",
+ "properties": {
+ "version": {
+ "type": "string",
+ "description": "major.minor version of Kubernetes release"
+ },
+ "capabilities": {
+ "$ref": "#/definitions/KubernetesVersionCapabilities",
+ "description": "Capabilities on this Kubernetes version."
+ },
+ "isPreview": {
+ "type": "boolean",
+ "description": "Whether this version is in preview mode."
+ },
+ "patchVersions": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/KubernetesPatchVersion"
+ },
+ "description": "Patch versions of Kubernetes release"
+ }
+ }
+ },
+ "KubernetesVersionListResult": {
+ "type": "object",
+ "description": "Hold values properties, which is array of KubernetesVersion",
+ "properties": {
+ "values": {
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/KubernetesVersion"
+ },
+ "description": "Array of AKS supported Kubernetes versions."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ResourceNameParameter": {
+ "name": "resourceName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$",
+ "description": "The name of the managed cluster resource.",
+ "x-ms-parameter-location": "method"
+ },
+ "ResourceTypeParameter": {
+ "name": "resource-type",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "The resource type for which the OS options needs to be returned",
+ "x-ms-parameter-location": "method"
+ },
+ "ServerFqdnParameter": {
+ "name": "server-fqdn",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "description": "server fqdn type for credentials to be returned",
+ "x-ms-parameter-location": "method"
+ },
+ "CredentialFormatParameter": {
+ "name": "format",
+ "in": "query",
+ "required": false,
+ "type": "string",
+ "enum": [
+ "exec",
+ "azure"
+ ],
+ "x-ms-enum": {
+ "name": "format",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "azure",
+ "description": "Return azure auth-provider kubeconfig. This format is deprecated in v1.22 and will be fully removed in v1.26. See: https://aka.ms/k8s/changes-1-26."
+ },
+ {
+ "value": "exec",
+ "description": "Return exec format kubeconfig. This format requires kubelogin binary in the path."
+ }
+ ]
+ },
+ "description": "Only apply to AAD clusters, specifies the format of returned kubeconfig. Format 'azure' will return azure auth-provider kubeconfig; format 'exec' will return exec format kubeconfig, which requires kubelogin binary in the path.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2022-09-02-preview/fleets.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2022-09-02-preview/fleets.json
index c3bc21e4e854..21c43ef5790f 100644
--- a/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2022-09-02-preview/fleets.json
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2022-09-02-preview/fleets.json
@@ -52,10 +52,10 @@
"paths": {
"/providers/Microsoft.ContainerService/operations": {
"get": {
+ "operationId": "Operations_List",
"tags": [
"Operations"
],
- "operationId": "Operations_List",
"description": "List the operations for the provider",
"parameters": [
{
@@ -76,22 +76,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"List the available operations.": {
"$ref": "./examples/Operation_List.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/fleets": {
"get": {
+ "operationId": "Fleets_ListBySubscription",
"tags": [
"Fleets"
],
- "operationId": "Fleets_ListBySubscription",
"description": "Lists fleets in the specified subscription.",
"parameters": [
{
@@ -115,22 +115,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the Fleet resources in a subscription.": {
"$ref": "./examples/Fleets_ListBySub.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets": {
"get": {
+ "operationId": "Fleets_ListByResourceGroup",
"tags": [
"Fleets"
],
- "operationId": "Fleets_ListByResourceGroup",
"description": "Lists fleets in the specified subscription and resource group.",
"parameters": [
{
@@ -157,22 +157,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the Fleet resources in a resource group.": {
"$ref": "./examples/Fleets_ListByResourceGroup.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}": {
"get": {
+ "operationId": "Fleets_Get",
"tags": [
"Fleets"
],
- "operationId": "Fleets_Get",
"description": "Gets a Fleet.",
"parameters": [
{
@@ -187,12 +187,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -216,10 +216,10 @@
}
},
"put": {
+ "operationId": "Fleets_CreateOrUpdate",
"tags": [
"Fleets"
],
- "operationId": "Fleets_CreateOrUpdate",
"description": "Creates or updates a Fleet.",
"parameters": [
{
@@ -234,34 +234,34 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "If-None-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if no entity matches this string.",
- "x-ms-client-name": "ifNoneMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifNoneMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "Resource create parameters.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Fleet"
}
@@ -269,22 +269,22 @@
],
"responses": {
"200": {
- "description": "ARM operation completed successfully.",
+ "description": "Resource 'Fleet' update operation succeeded",
"schema": {
"$ref": "#/definitions/Fleet"
}
},
"201": {
- "description": "ARM create operation completed successfully.",
+ "description": "Resource 'Fleet' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Fleet"
+ },
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
}
- },
- "schema": {
- "$ref": "#/definitions/Fleet"
}
},
"default": {
@@ -305,10 +305,10 @@
"x-ms-long-running-operation": true
},
"patch": {
+ "operationId": "Fleets_Update",
"tags": [
"Fleets"
],
- "operationId": "Fleets_Update",
"description": "Update a Fleet",
"parameters": [
{
@@ -323,26 +323,26 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "properties",
"in": "body",
- "required": true,
"description": "The resource properties to be updated.",
+ "required": true,
"schema": {
"$ref": "#/definitions/FleetPatch"
}
@@ -369,10 +369,10 @@
}
},
"delete": {
+ "operationId": "Fleets_Delete",
"tags": [
"Fleets"
],
- "operationId": "Fleets_Delete",
"description": "Delete a Fleet",
"parameters": [
{
@@ -387,20 +387,20 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -411,13 +411,13 @@
"description": "Resource deletion accepted.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -444,10 +444,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/listCredentials": {
"post": {
+ "operationId": "Fleets_ListCredentials",
"tags": [
"Fleets"
],
- "operationId": "Fleets_ListCredentials",
"description": "Lists the user credentials of a Fleet.",
"parameters": [
{
@@ -462,12 +462,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -493,10 +493,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/members": {
"get": {
+ "operationId": "FleetMembers_ListByFleet",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_ListByFleet",
"description": "List FleetMember resources by Fleet",
"parameters": [
{
@@ -511,12 +511,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -533,22 +533,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the members of a Fleet.": {
"$ref": "./examples/FleetMembers_List.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/members/{fleetMemberName}": {
"get": {
+ "operationId": "FleetMembers_Get",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Get",
"description": "Get a FleetMember",
"parameters": [
{
@@ -563,22 +563,22 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -602,10 +602,10 @@
}
},
"put": {
+ "operationId": "FleetMembers_Create",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Create",
"description": "Create a FleetMember",
"parameters": [
{
@@ -620,44 +620,44 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "If-None-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if no entity matches this string.",
- "x-ms-client-name": "ifNoneMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifNoneMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "Resource create parameters.",
+ "required": true,
"schema": {
"$ref": "#/definitions/FleetMember"
}
@@ -665,22 +665,22 @@
],
"responses": {
"200": {
- "description": "ARM operation completed successfully.",
+ "description": "Resource 'FleetMember' update operation succeeded",
"schema": {
"$ref": "#/definitions/FleetMember"
}
},
"201": {
- "description": "ARM create operation completed successfully.",
+ "description": "Resource 'FleetMember' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/FleetMember"
+ },
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
}
- },
- "schema": {
- "$ref": "#/definitions/FleetMember"
}
},
"default": {
@@ -701,10 +701,10 @@
"x-ms-long-running-operation": true
},
"delete": {
+ "operationId": "FleetMembers_Delete",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Delete",
"description": "Delete a FleetMember",
"parameters": [
{
@@ -719,30 +719,30 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -753,13 +753,13 @@
"description": "Resource deletion accepted.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -788,8 +788,8 @@
"definitions": {
"ClusterResourceId": {
"type": "string",
- "description": "A type definition that refers the id to an ARM resource.",
"format": "arm-id",
+ "description": "A type definition that refers the id to an ARM resource.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -800,6 +800,7 @@
},
"Fleet": {
"type": "object",
+ "description": "The Fleet resource.",
"properties": {
"properties": {
"$ref": "#/definitions/FleetProperties",
@@ -816,7 +817,6 @@
"readOnly": true
}
},
- "description": "The Fleet resource.",
"allOf": [
{
"$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
@@ -825,6 +825,7 @@
},
"FleetCredentialResult": {
"type": "object",
+ "description": "One credential result item.",
"properties": {
"name": {
"type": "string",
@@ -837,36 +838,35 @@
"description": "Base64-encoded Kubernetes configuration file.",
"readOnly": true
}
- },
- "description": "One credential result item."
+ }
},
"FleetCredentialResults": {
"type": "object",
+ "description": "The Credential results response.",
"properties": {
"kubeconfigs": {
"type": "array",
+ "description": "Array of base64-encoded Kubernetes configuration files.",
"items": {
"$ref": "#/definitions/FleetCredentialResult"
},
+ "readOnly": true,
"x-ms-identifiers": [
"name"
- ],
- "description": "Array of base64-encoded Kubernetes configuration files.",
- "x-typespec-name": "FleetCredentialResult[]",
- "readOnly": true
+ ]
}
- },
- "description": "The Credential results response."
+ }
},
"FleetHubProfile": {
"type": "object",
+ "description": "The FleetHubProfile configures the fleet hub.",
"properties": {
"dnsPrefix": {
"type": "string",
"description": "DNS prefix used to create the FQDN for the Fleet hub.",
- "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9-]{0,52}[a-zA-Z0-9]$",
"minLength": 1,
"maxLength": 54,
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9-]{0,52}[a-zA-Z0-9]$",
"x-ms-mutability": [
"read",
"create"
@@ -882,34 +882,32 @@
"description": "The Kubernetes version of the Fleet hub.",
"readOnly": true
}
- },
- "description": "The FleetHubProfile configures the fleet hub."
+ }
},
"FleetListResult": {
"type": "object",
+ "description": "The response of a Fleet list operation.",
"properties": {
"value": {
"type": "array",
+ "description": "The Fleet items on this page",
"items": {
"$ref": "#/definitions/Fleet"
- },
- "description": "The Fleet items on this page",
- "x-typespec-name": "Fleet[]"
+ }
},
"nextLink": {
"type": "string",
"format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
+ "description": "The link to the next page of items"
}
},
- "description": "The response of a Fleet list operation.",
"required": [
"value"
]
},
"FleetMember": {
"type": "object",
+ "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"properties": {
"properties": {
"$ref": "#/definitions/FleetMemberProperties",
@@ -926,7 +924,6 @@
"readOnly": true
}
},
- "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"allOf": [
{
"$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
@@ -935,29 +932,28 @@
},
"FleetMemberListResult": {
"type": "object",
+ "description": "The response of a FleetMember list operation.",
"properties": {
"value": {
"type": "array",
+ "description": "The FleetMember items on this page",
"items": {
"$ref": "#/definitions/FleetMember"
- },
- "description": "The FleetMember items on this page",
- "x-typespec-name": "FleetMember[]"
+ }
},
"nextLink": {
"type": "string",
"format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
+ "description": "The link to the next page of items"
}
},
- "description": "The response of a FleetMember list operation.",
"required": [
"value"
]
},
"FleetMemberProperties": {
"type": "object",
+ "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"properties": {
"clusterResourceId": {
"$ref": "#/definitions/ClusterResourceId",
@@ -973,7 +969,6 @@
"readOnly": true
}
},
- "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"required": [
"clusterResourceId"
]
@@ -1025,20 +1020,20 @@
},
"FleetPatch": {
"type": "object",
+ "description": "Properties of a Fleet that can be patched.",
"properties": {
"tags": {
"type": "object",
+ "description": "Resource tags.",
"additionalProperties": {
"type": "string"
- },
- "description": "Resource tags.",
- "x-typespec-name": "Record"
+ }
}
- },
- "description": "Properties of a Fleet that can be patched."
+ }
},
"FleetProperties": {
"type": "object",
+ "description": "Fleet properties.",
"properties": {
"provisioningState": {
"$ref": "#/definitions/FleetProvisioningState",
@@ -1049,8 +1044,7 @@
"$ref": "#/definitions/FleetHubProfile",
"description": "The FleetHubProfile configures the Fleet's hub."
}
- },
- "description": "Fleet properties."
+ }
},
"FleetProvisioningState": {
"type": "string",
diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2023-03-15-preview/fleets.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2023-03-15-preview/fleets.json
index 68413576709a..d14d3d59f4e0 100644
--- a/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2023-03-15-preview/fleets.json
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/fleet/preview/2023-03-15-preview/fleets.json
@@ -55,10 +55,10 @@
"paths": {
"/providers/Microsoft.ContainerService/operations": {
"get": {
+ "operationId": "Operations_List",
"tags": [
"Operations"
],
- "operationId": "Operations_List",
"description": "List the operations for the provider",
"parameters": [
{
@@ -79,22 +79,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"List the operations for the provider.": {
"$ref": "./examples/Operations_List.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/fleets": {
"get": {
+ "operationId": "Fleets_ListBySubscription",
"tags": [
"Fleets"
],
- "operationId": "Fleets_ListBySubscription",
"description": "Lists fleets in the specified subscription.",
"parameters": [
{
@@ -118,22 +118,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the Fleet resources in a subscription.": {
"$ref": "./examples/Fleets_ListBySub.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets": {
"get": {
+ "operationId": "Fleets_ListByResourceGroup",
"tags": [
"Fleets"
],
- "operationId": "Fleets_ListByResourceGroup",
"description": "Lists fleets in the specified subscription and resource group.",
"parameters": [
{
@@ -160,22 +160,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the Fleet resources in a resource group.": {
"$ref": "./examples/Fleets_ListByResourceGroup.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}": {
"get": {
+ "operationId": "Fleets_Get",
"tags": [
"Fleets"
],
- "operationId": "Fleets_Get",
"description": "Gets a Fleet.",
"parameters": [
{
@@ -190,12 +190,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -219,10 +219,10 @@
}
},
"put": {
+ "operationId": "Fleets_CreateOrUpdate",
"tags": [
"Fleets"
],
- "operationId": "Fleets_CreateOrUpdate",
"description": "Creates or updates a Fleet.",
"parameters": [
{
@@ -237,34 +237,34 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "If-None-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if no entity matches this string.",
- "x-ms-client-name": "ifNoneMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifNoneMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "Resource create parameters.",
+ "required": true,
"schema": {
"$ref": "#/definitions/Fleet"
}
@@ -272,22 +272,22 @@
],
"responses": {
"200": {
- "description": "ARM operation completed successfully.",
+ "description": "Resource 'Fleet' update operation succeeded",
"schema": {
"$ref": "#/definitions/Fleet"
}
},
"201": {
- "description": "ARM create operation completed successfully.",
+ "description": "Resource 'Fleet' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Fleet"
+ },
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
}
- },
- "schema": {
- "$ref": "#/definitions/Fleet"
}
},
"default": {
@@ -308,10 +308,10 @@
"x-ms-long-running-operation": true
},
"patch": {
+ "operationId": "Fleets_Update",
"tags": [
"Fleets"
],
- "operationId": "Fleets_Update",
"description": "Update a Fleet",
"parameters": [
{
@@ -326,26 +326,26 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "properties",
"in": "body",
- "required": true,
"description": "The resource properties to be updated.",
+ "required": true,
"schema": {
"$ref": "#/definitions/FleetPatch"
}
@@ -372,10 +372,10 @@
}
},
"delete": {
+ "operationId": "Fleets_Delete",
"tags": [
"Fleets"
],
- "operationId": "Fleets_Delete",
"description": "Delete a Fleet",
"parameters": [
{
@@ -390,20 +390,20 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -414,13 +414,13 @@
"description": "Resource deletion accepted.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -447,10 +447,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/listCredentials": {
"post": {
+ "operationId": "Fleets_ListCredentials",
"tags": [
"Fleets"
],
- "operationId": "Fleets_ListCredentials",
"description": "Lists the user credentials of a Fleet.",
"parameters": [
{
@@ -465,12 +465,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -496,10 +496,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/members": {
"get": {
+ "operationId": "FleetMembers_ListByFleet",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_ListByFleet",
"description": "List FleetMember resources by Fleet",
"parameters": [
{
@@ -514,12 +514,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -536,22 +536,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the members of a Fleet.": {
"$ref": "./examples/FleetMembers_ListByFleet.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/members/{fleetMemberName}": {
"get": {
+ "operationId": "FleetMembers_Get",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Get",
"description": "Get a FleetMember",
"parameters": [
{
@@ -566,22 +566,22 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -605,10 +605,10 @@
}
},
"put": {
+ "operationId": "FleetMembers_Create",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Create",
"description": "Create a FleetMember",
"parameters": [
{
@@ -623,44 +623,44 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "If-None-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if no entity matches this string.",
- "x-ms-client-name": "ifNoneMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifNoneMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "Resource create parameters.",
+ "required": true,
"schema": {
"$ref": "#/definitions/FleetMember"
}
@@ -668,22 +668,22 @@
],
"responses": {
"200": {
- "description": "ARM operation completed successfully.",
+ "description": "Resource 'FleetMember' update operation succeeded",
"schema": {
"$ref": "#/definitions/FleetMember"
}
},
"201": {
- "description": "ARM create operation completed successfully.",
+ "description": "Resource 'FleetMember' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/FleetMember"
+ },
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
}
- },
- "schema": {
- "$ref": "#/definitions/FleetMember"
}
},
"default": {
@@ -704,10 +704,10 @@
"x-ms-long-running-operation": true
},
"patch": {
+ "operationId": "FleetMembers_Update",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Update",
"description": "Update a FleetMember",
"parameters": [
{
@@ -722,36 +722,36 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "properties",
"in": "body",
- "required": true,
"description": "The resource properties to be updated.",
+ "required": true,
"schema": {
"$ref": "#/definitions/FleetMemberUpdate"
}
@@ -778,10 +778,10 @@
}
},
"delete": {
+ "operationId": "FleetMembers_Delete",
"tags": [
"FleetMembers"
],
- "operationId": "FleetMembers_Delete",
"description": "Delete a FleetMember",
"parameters": [
{
@@ -796,30 +796,30 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "fleetMemberName",
"in": "path",
- "required": true,
"description": "The name of the Fleet member resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -830,13 +830,13 @@
"description": "Resource deletion accepted.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -863,10 +863,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/updateRuns": {
"get": {
+ "operationId": "UpdateRuns_ListByFleet",
"tags": [
"UpdateRuns"
],
- "operationId": "UpdateRuns_ListByFleet",
"description": "List UpdateRun resources by Fleet",
"parameters": [
{
@@ -881,12 +881,12 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -903,22 +903,22 @@
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Lists the UpdateRun resources by fleet.": {
"$ref": "./examples/UpdateRuns_ListByFleet.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/updateRuns/{updateRunName}": {
"get": {
+ "operationId": "UpdateRuns_Get",
"tags": [
"UpdateRuns"
],
- "operationId": "UpdateRuns_Get",
"description": "Get a UpdateRun",
"parameters": [
{
@@ -933,22 +933,22 @@
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "updateRunName",
"in": "path",
- "required": true,
"description": "The name of the UpdateRun resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -972,10 +972,10 @@
}
},
"put": {
+ "operationId": "UpdateRuns_CreateOrUpdate",
"tags": [
"UpdateRuns"
],
- "operationId": "UpdateRuns_CreateOrUpdate",
"description": "Create a UpdateRun",
"parameters": [
{
@@ -990,44 +990,44 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "If-None-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if no entity matches this string.",
- "x-ms-client-name": "ifNoneMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifNoneMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "updateRunName",
"in": "path",
- "required": true,
"description": "The name of the UpdateRun resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "Resource create parameters.",
+ "required": true,
"schema": {
"$ref": "#/definitions/UpdateRun"
}
@@ -1035,22 +1035,22 @@
],
"responses": {
"200": {
- "description": "ARM operation completed successfully.",
+ "description": "Resource 'UpdateRun' update operation succeeded",
"schema": {
"$ref": "#/definitions/UpdateRun"
}
},
"201": {
- "description": "ARM create operation completed successfully.",
+ "description": "Resource 'UpdateRun' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/UpdateRun"
+ },
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
}
- },
- "schema": {
- "$ref": "#/definitions/UpdateRun"
}
},
"default": {
@@ -1071,10 +1071,10 @@
"x-ms-long-running-operation": true
},
"delete": {
+ "operationId": "UpdateRuns_Delete",
"tags": [
"UpdateRuns"
],
- "operationId": "UpdateRuns_Delete",
"description": "Delete a UpdateRun",
"parameters": [
{
@@ -1089,30 +1089,30 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "updateRunName",
"in": "path",
- "required": true,
"description": "The name of the UpdateRun resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -1123,13 +1123,13 @@
"description": "The request has been accepted for processing, but processing has not yet completed.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -1156,10 +1156,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/updateRuns/{updateRunName}/start": {
"post": {
+ "operationId": "UpdateRuns_Start",
"tags": [
"UpdateRuns"
],
- "operationId": "UpdateRuns_Start",
"description": "Starts an UpdateRun.",
"parameters": [
{
@@ -1174,30 +1174,30 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "updateRunName",
"in": "path",
- "required": true,
"description": "The name of the UpdateRun resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -1211,13 +1211,13 @@
"description": "The request has been accepted for processing, but processing has not yet completed.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -1241,10 +1241,10 @@
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}/updateRuns/{updateRunName}/stop": {
"post": {
+ "operationId": "UpdateRuns_Stop",
"tags": [
"UpdateRuns"
],
- "operationId": "UpdateRuns_Stop",
"description": "Stops an UpdateRun.",
"parameters": [
{
@@ -1259,30 +1259,30 @@
{
"name": "If-Match",
"in": "header",
- "required": false,
"description": "The request should only proceed if an entity matches this string.",
- "x-ms-client-name": "ifMatch",
- "type": "string"
+ "required": false,
+ "type": "string",
+ "x-ms-client-name": "ifMatch"
},
{
"name": "fleetName",
"in": "path",
- "required": true,
"description": "The name of the Fleet resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 63
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
{
"name": "updateRunName",
"in": "path",
- "required": true,
"description": "The name of the UpdateRun resource.",
+ "required": true,
"type": "string",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
],
"responses": {
@@ -1296,13 +1296,13 @@
"description": "The request has been accepted for processing, but processing has not yet completed.",
"headers": {
"Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
"type": "integer",
- "format": "int32"
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
},
"location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
}
}
},
@@ -1328,8 +1328,8 @@
"definitions": {
"ClusterResourceId": {
"type": "string",
- "description": "A type definition that refers the id to an ARM resource.",
"format": "arm-id",
+ "description": "A type definition that refers the id to an ARM resource.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1340,6 +1340,7 @@
},
"Fleet": {
"type": "object",
+ "description": "The Fleet resource.",
"properties": {
"properties": {
"$ref": "#/definitions/FleetProperties",
@@ -1356,7 +1357,6 @@
"readOnly": true
}
},
- "description": "The Fleet resource.",
"allOf": [
{
"$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
@@ -1365,6 +1365,7 @@
},
"FleetCredentialResult": {
"type": "object",
+ "description": "One credential result item.",
"properties": {
"name": {
"type": "string",
@@ -1377,36 +1378,35 @@
"description": "Base64-encoded Kubernetes configuration file.",
"readOnly": true
}
- },
- "description": "One credential result item."
+ }
},
"FleetCredentialResults": {
"type": "object",
+ "description": "The Credential results response.",
"properties": {
"kubeconfigs": {
"type": "array",
+ "description": "Array of base64-encoded Kubernetes configuration files.",
"items": {
"$ref": "#/definitions/FleetCredentialResult"
},
+ "readOnly": true,
"x-ms-identifiers": [
"name"
- ],
- "description": "Array of base64-encoded Kubernetes configuration files.",
- "x-typespec-name": "FleetCredentialResult[]",
- "readOnly": true
+ ]
}
- },
- "description": "The Credential results response."
+ }
},
"FleetHubProfile": {
"type": "object",
+ "description": "The FleetHubProfile configures the fleet hub.",
"properties": {
"dnsPrefix": {
"type": "string",
"description": "DNS prefix used to create the FQDN for the Fleet hub.",
- "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9-]{0,52}[a-zA-Z0-9]$",
"minLength": 1,
"maxLength": 54,
+ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9-]{0,52}[a-zA-Z0-9]$",
"x-ms-mutability": [
"read",
"create"
@@ -1422,34 +1422,32 @@
"description": "The Kubernetes version of the Fleet hub.",
"readOnly": true
}
- },
- "description": "The FleetHubProfile configures the fleet hub."
+ }
},
"FleetListResult": {
"type": "object",
+ "description": "The response of a Fleet list operation.",
"properties": {
"value": {
"type": "array",
+ "description": "The Fleet items on this page",
"items": {
"$ref": "#/definitions/Fleet"
- },
- "description": "The Fleet items on this page",
- "x-typespec-name": "Fleet[]"
+ }
},
"nextLink": {
"type": "string",
"format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
+ "description": "The link to the next page of items"
}
},
- "description": "The response of a Fleet list operation.",
"required": [
"value"
]
},
"FleetMember": {
"type": "object",
+ "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"properties": {
"properties": {
"$ref": "#/definitions/FleetMemberProperties",
@@ -1466,7 +1464,6 @@
"readOnly": true
}
},
- "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"allOf": [
{
"$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
@@ -1475,29 +1472,28 @@
},
"FleetMemberListResult": {
"type": "object",
+ "description": "The response of a FleetMember list operation.",
"properties": {
"value": {
"type": "array",
+ "description": "The FleetMember items on this page",
"items": {
"$ref": "#/definitions/FleetMember"
- },
- "description": "The FleetMember items on this page",
- "x-typespec-name": "FleetMember[]"
+ }
},
"nextLink": {
"type": "string",
"format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
+ "description": "The link to the next page of items"
}
},
- "description": "The response of a FleetMember list operation.",
"required": [
"value"
]
},
"FleetMemberProperties": {
"type": "object",
+ "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"properties": {
"clusterResourceId": {
"$ref": "#/definitions/ClusterResourceId",
@@ -1510,9 +1506,9 @@
"group": {
"type": "string",
"description": "The group this member belongs to for multi-cluster update management.",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
"provisioningState": {
"$ref": "#/definitions/FleetMemberProvisioningState",
@@ -1520,7 +1516,6 @@
"readOnly": true
}
},
- "description": "A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure.",
"required": [
"clusterResourceId"
]
@@ -1572,43 +1567,43 @@
},
"FleetMemberUpdate": {
"type": "object",
+ "description": "The type used for update operations of the FleetMember.",
"properties": {
"properties": {
"$ref": "#/definitions/FleetMemberUpdateProperties",
"x-ms-client-flatten": true
}
- },
- "description": "The type used for update operations of the FleetMember."
+ }
},
"FleetMemberUpdateProperties": {
"type": "object",
+ "description": "The updatable properties of the FleetMember.",
"properties": {
"group": {
"type": "string",
"description": "The group this member belongs to for multi-cluster update management.",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
- },
- "description": "The updatable properties of the FleetMember."
+ }
},
"FleetPatch": {
"type": "object",
+ "description": "Properties of a Fleet that can be patched.",
"properties": {
"tags": {
"type": "object",
+ "description": "Resource tags.",
"additionalProperties": {
"type": "string"
- },
- "description": "Resource tags.",
- "x-typespec-name": "Record"
+ }
}
- },
- "description": "Properties of a Fleet that can be patched."
+ }
},
"FleetProperties": {
"type": "object",
+ "description": "Fleet properties.",
"properties": {
"provisioningState": {
"$ref": "#/definitions/FleetProvisioningState",
@@ -1619,8 +1614,7 @@
"$ref": "#/definitions/FleetHubProfile",
"description": "The FleetHubProfile configures the Fleet's hub."
}
- },
- "description": "Fleet properties."
+ }
},
"FleetProvisioningState": {
"type": "string",
@@ -1672,19 +1666,20 @@
},
"ManagedClusterUpdate": {
"type": "object",
+ "description": "The update to be applied to the ManagedClusters.",
"properties": {
"upgrade": {
"$ref": "#/definitions/ManagedClusterUpgradeSpec",
"description": "The upgrade to apply to the ManagedClusters."
}
},
- "description": "The update to be applied to the ManagedClusters.",
"required": [
"upgrade"
]
},
"ManagedClusterUpgradeSpec": {
"type": "object",
+ "description": "The upgrade to apply to a ManagedCluster.",
"properties": {
"type": {
"$ref": "#/definitions/ManagedClusterUpgradeType",
@@ -1695,7 +1690,6 @@
"description": "The Kubernetes version to upgrade the member clusters to."
}
},
- "description": "The upgrade to apply to a ManagedCluster.",
"required": [
"type"
]
@@ -1726,6 +1720,7 @@
},
"MemberUpdateStatus": {
"type": "object",
+ "description": "The status of a member update operation.",
"properties": {
"status": {
"$ref": "#/definitions/UpdateStatus",
@@ -1747,27 +1742,27 @@
"description": "The operation resource id of the latest attempt to perform the operation.",
"readOnly": true
}
- },
- "description": "The status of a member update operation."
+ }
},
"UpdateGroup": {
"type": "object",
+ "description": "A group to be updated.",
"properties": {
"name": {
"type": "string",
"description": "The name of the Fleet member group to update. \nIt should match the name of an existing FleetMember group.\nA group can only appear once across all UpdateStages in the UpdateRun.",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
}
},
- "description": "A group to be updated.",
"required": [
"name"
]
},
"UpdateGroupStatus": {
"type": "object",
+ "description": "The status of a UpdateGroup.",
"properties": {
"status": {
"$ref": "#/definitions/UpdateStatus",
@@ -1781,21 +1776,20 @@
},
"members": {
"type": "array",
+ "description": "The list of member this UpdateGroup updates.",
"items": {
"$ref": "#/definitions/MemberUpdateStatus"
},
+ "readOnly": true,
"x-ms-identifiers": [
"name"
- ],
- "description": "The list of member this UpdateGroup updates.",
- "x-typespec-name": "MemberUpdateStatus[]",
- "readOnly": true
+ ]
}
- },
- "description": "The status of a UpdateGroup."
+ }
},
"UpdateRun": {
"type": "object",
+ "description": "An UpdateRun is a multi-stage process to perform update operations across members of a Fleet.",
"properties": {
"properties": {
"$ref": "#/definitions/UpdateRunProperties",
@@ -1812,7 +1806,6 @@
"readOnly": true
}
},
- "description": "An UpdateRun is a multi-stage process to perform update operations across members of a Fleet.",
"allOf": [
{
"$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
@@ -1821,29 +1814,28 @@
},
"UpdateRunListResult": {
"type": "object",
+ "description": "The response of a UpdateRun list operation.",
"properties": {
"value": {
"type": "array",
+ "description": "The UpdateRun items on this page",
"items": {
"$ref": "#/definitions/UpdateRun"
- },
- "description": "The UpdateRun items on this page",
- "x-typespec-name": "UpdateRun[]"
+ }
},
"nextLink": {
"type": "string",
"format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
+ "description": "The link to the next page of items"
}
},
- "description": "The response of a UpdateRun list operation.",
"required": [
"value"
]
},
"UpdateRunProperties": {
"type": "object",
+ "description": "The properties of the UpdateRun.",
"properties": {
"provisioningState": {
"$ref": "#/definitions/UpdateRunProvisioningState",
@@ -1864,7 +1856,6 @@
"readOnly": true
}
},
- "description": "The properties of the UpdateRun.",
"required": [
"managedClusterUpdate"
]
@@ -1901,6 +1892,7 @@
},
"UpdateRunStatus": {
"type": "object",
+ "description": "The status of a UpdateRun.",
"properties": {
"status": {
"$ref": "#/definitions/UpdateStatus",
@@ -1909,59 +1901,56 @@
},
"stages": {
"type": "array",
+ "description": "The stages composing an update run. Stages are run sequentially withing an UpdateRun.",
"items": {
"$ref": "#/definitions/UpdateStageStatus"
},
+ "readOnly": true,
"x-ms-identifiers": [
"name"
- ],
- "description": "The stages composing an update run. Stages are run sequentially withing an UpdateRun.",
- "x-typespec-name": "UpdateStageStatus[]",
- "readOnly": true
+ ]
}
- },
- "description": "The status of a UpdateRun."
+ }
},
"UpdateRunStrategy": {
"type": "object",
+ "description": "The UpdateRunStrategy configures the sequence of Stages and Groups in which the clusters will be updated.",
"properties": {
"stages": {
"type": "array",
+ "description": "The list of stages that compose this update run.",
"items": {
"$ref": "#/definitions/UpdateStage"
},
"x-ms-identifiers": [
"name"
- ],
- "description": "The list of stages that compose this update run.",
- "x-typespec-name": "UpdateStage[]"
+ ]
}
},
- "description": "The UpdateRunStrategy configures the sequence of Stages and Groups in which the clusters will be updated.",
"required": [
"stages"
]
},
"UpdateStage": {
"type": "object",
+ "description": "Contains the groups to be updated by an UpdateRun.\nUpdate order:\n- Sequential between stages: Stages run sequentially. The previous stage must complete before the next one starts.\n- Parallel within a stage: Groups within a stage run in parallel.\n- Sequential within a group: Clusters within a group are updated sequentially.",
"properties": {
"name": {
"type": "string",
"description": "The name of the stage. Must be unique within the UpdateRun.",
- "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"minLength": 1,
- "maxLength": 50
+ "maxLength": 50,
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
},
"groups": {
"type": "array",
+ "description": "A list of group names that compose the stage.\nThe groups will be updated in parallel. Each group name can only appear once in the UpdateRun.",
"items": {
"$ref": "#/definitions/UpdateGroup"
},
"x-ms-identifiers": [
"name"
- ],
- "description": "A list of group names that compose the stage.\nThe groups will be updated in parallel. Each group name can only appear once in the UpdateRun.",
- "x-typespec-name": "UpdateGroup[]"
+ ]
},
"afterStageWaitInSeconds": {
"type": "integer",
@@ -1969,13 +1958,13 @@
"description": "The time in seconds to wait at the end of this stage before starting the next one. Defaults to 0 seconds if unspecified."
}
},
- "description": "Contains the groups to be updated by an UpdateRun.\nUpdate order:\n- Sequential between stages: Stages run sequentially. The previous stage must complete before the next one starts.\n- Parallel within a stage: Groups within a stage run in parallel.\n- Sequential within a group: Clusters within a group are updated sequentially.",
"required": [
"name"
]
},
"UpdateStageStatus": {
"type": "object",
+ "description": "The status of a UpdateStage.",
"properties": {
"status": {
"$ref": "#/definitions/UpdateStatus",
@@ -1989,23 +1978,21 @@
},
"groups": {
"type": "array",
+ "description": "The list of groups to be updated as part of this UpdateStage.",
"items": {
"$ref": "#/definitions/UpdateGroupStatus"
},
+ "readOnly": true,
"x-ms-identifiers": [
"name"
- ],
- "description": "The list of groups to be updated as part of this UpdateStage.",
- "x-typespec-name": "UpdateGroupStatus[]",
- "readOnly": true
+ ]
},
"afterStageWaitStatus": {
"$ref": "#/definitions/WaitStatus",
"description": "The status of the wait period configured on the UpdateStage.",
"readOnly": true
}
- },
- "description": "The status of a UpdateStage."
+ }
},
"UpdateState": {
"type": "string",
@@ -2025,6 +2012,7 @@
},
"UpdateStatus": {
"type": "object",
+ "description": "The status for an operation or group of operations.",
"properties": {
"startTime": {
"type": "string",
@@ -2048,11 +2036,11 @@
"description": "The error details when a failure is encountered.",
"readOnly": true
}
- },
- "description": "The status for an operation or group of operations."
+ }
},
"WaitStatus": {
"type": "object",
+ "description": "The status of the wait duration.",
"properties": {
"status": {
"$ref": "#/definitions/UpdateStatus",
@@ -2065,8 +2053,7 @@
"description": "The wait duration configured in seconds.",
"readOnly": true
}
- },
- "description": "The status of the wait duration."
+ }
}
},
"parameters": {}
diff --git a/specification/containerstorage/ContainerStorage.Management/README.md b/specification/containerstorage/ContainerStorage.Management/README.md
new file mode 100644
index 000000000000..d83db4cc26d2
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/README.md
@@ -0,0 +1,70 @@
+# Azure Container Storage Resource Provider TypeSpec and Swagger Specification
+
+The TypeSpec and generated API specification for the Azure Container Storage Resource Provider.
+
+## Development Environment
+
+0. Change directory into the `src\Swagger\Microsoft.ContainerStorage\ContainerStorage.Management\` directory.
+
+1. Install Node.js 16 LTS and ensure you are able to run the npm command in a command prompt:
+
+ ```console
+ npm --version
+ ```
+
+2. Install Azure DevOps Auth helper for npm to pull the libraries from the secured feed
+
+ ```console
+ npm install -g vsts-npm-auth
+ vsts-npm-auth -config .npmrc
+ ```
+
+3. Install TypeSpec compiler and libraries:
+
+ ```console
+ npm install -g @typespec/compiler
+ ```
+
+4. (Optional) Install the TypeSpec extension for your editor of choice:
+
+ - Visual Studio Code
+
+ ``` console
+ tsp code install
+ ```
+
+ - Visual Studio
+
+ ``` console
+ tsp vs install
+ ```
+
+5. Install node package dependencies:
+
+ ```console
+ tsp install
+ ```
+
+6. Compile TypeSpec to Swagger. This will update the files in the directory `.\resource-manager\Microsoft.ContainerStorage\preview\\`:
+
+ ```console
+ tsp compile src\Swagger\Microsoft.ContainerStorage\ContainerStorage.Management
+ ```
+
+7. To re-generate examples, download and install the [OAV
+ tool](https://github.com/Azure/oav) and run it: note: This directory is taken
+ from [azure-rest-api-specs](https://github.com/Azure/azure-rest-api-specs),
+ and the following commands should be run from there.
+
+ ```console
+ npm install -g oav@latest
+ oav generate-examples
+ # example
+ oav generate-examples src\Swagger\Microsoft.ContainerStorage\resource-manager\Microsoft.ContainerStorage\preview\2023-07-01-preview\containerstorage.json
+ ```
+
+## Testing and Viewing API as an Interface
+
+1. Visit the official [Swagger Editor](https://editor.swagger.io/).
+
+2. Copy the generated Swagger from `containerstorage.json` and paste it into the editor.
\ No newline at end of file
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Operations_List.json b/specification/containerstorage/ContainerStorage.Management/examples/Operations_List.json
new file mode 100644
index 000000000000..7d3686bd1631
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Operations_List.json
@@ -0,0 +1,28 @@
+{
+ "title": "Operations_List",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ContainerStorage/Volumes/Get",
+ "isDataAction": true,
+ "display": {
+ "provider": "Microsoft Container Storage",
+ "resource": "Operation",
+ "operation": "Get Operation",
+ "description": "Gets the status of an asynchronous operation"
+ },
+ "origin": "user",
+ "actionType": "Internal"
+ }
+ ],
+ "nextLink": "http://nextlink.contoso.com"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Operations_List_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Operations_List_MaximumSet_Gen.json
deleted file mode 100644
index e53c3a0372b3..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Operations_List_MaximumSet_Gen.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "title": "Operations_List_MaximumSet_Gen",
- "operationId": "Operations_List",
- "parameters": {
- "api-version": "2023-03-01-preview"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "owtamtreuhzeozjyrtuzzzy",
- "isDataAction": true,
- "display": {
- "provider": "qbrtf",
- "resource": "lfvgfkoojojdmh",
- "operation": "hvhshxzzfqahja",
- "description": "ahsrxzaeoioiwywbzljjpyrrw"
- },
- "origin": "user",
- "actionType": "Internal"
- }
- ],
- "nextLink": "tgimrrxavadttwluarmurs"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Operations_List_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Operations_List_MinimumSet_Gen.json
deleted file mode 100644
index 89c6cd2706db..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Operations_List_MinimumSet_Gen.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "title": "Operations_List_MinimumSet_Gen",
- "operationId": "Operations_List",
- "parameters": {
- "api-version": "2023-03-01-preview"
- },
- "responses": {
- "200": {
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_AzureDisk.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_AzureDisk.json
new file mode 100644
index 000000000000..1183bd9ac3dd
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_AzureDisk.json
@@ -0,0 +1,205 @@
+{
+ "title": "Pools_CreateOrUpdate_AzureDisk",
+ "operationId": "Pools_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {}
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_ElasticSan.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_ElasticSan.json
new file mode 100644
index 000000000000..146393decfe8
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_ElasticSan.json
@@ -0,0 +1,193 @@
+{
+ "title": "Pools_CreateOrUpdate_ElasticSan",
+ "operationId": "Pools_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {}
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_Ephemeral.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_Ephemeral.json
new file mode 100644
index 000000000000..8dde161cb6f0
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_Ephemeral.json
@@ -0,0 +1,163 @@
+{
+ "title": "Pools_CreateOrUpdate_Ephemeral",
+ "operationId": "Pools_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_MaximumSet_Gen.json
deleted file mode 100644
index da8c653a6e8f..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_MaximumSet_Gen.json
+++ /dev/null
@@ -1,161 +0,0 @@
-{
- "title": "Pools_CreateOrUpdate_MaximumSet_Gen",
- "operationId": "Pools_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-EXNI2WK48",
- "resource": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct"
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_MinimumSet_Gen.json
deleted file mode 100644
index 7cc22949265c..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_CreateOrUpdate_MinimumSet_Gen.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
- "title": "Pools_CreateOrUpdate_MinimumSet_Gen",
- "operationId": "Pools_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "J873cXX1w3sIX",
- "resource": {
- "location": "jdfanwoyiigytvanvct"
- }
- },
- "responses": {
- "200": {
- "body": {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete.json
new file mode 100644
index 000000000000..275f44fdbbee
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete.json
@@ -0,0 +1,18 @@
+{
+ "title": "Pools_Delete",
+ "operationId": "Pools_Delete",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete_MaximumSet_Gen.json
deleted file mode 100644
index 3e62b608d59d..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete_MaximumSet_Gen.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "title": "Pools_Delete_MaximumSet_Gen",
- "operationId": "Pools_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "u0E5"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete_MinimumSet_Gen.json
deleted file mode 100644
index 8172451478e1..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Delete_MinimumSet_Gen.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "title": "Pools_Delete_MinimumSet_Gen",
- "operationId": "Pools_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "HOL3KPOM7242-P-I--KH9E43"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_AzureDisk.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_AzureDisk.json
new file mode 100644
index 000000000000..a6bdd67fa345
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_AzureDisk.json
@@ -0,0 +1,85 @@
+{
+ "title": "Pools_Get_AzureDisk",
+ "operationId": "Pools_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_ElasticSan.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_ElasticSan.json
new file mode 100644
index 000000000000..5ca01027d194
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_ElasticSan.json
@@ -0,0 +1,79 @@
+{
+ "title": "Pools_Get_ElasticSan",
+ "operationId": "Pools_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_Ephemeral.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_Ephemeral.json
new file mode 100644
index 000000000000..2302de06b726
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_Ephemeral.json
@@ -0,0 +1,69 @@
+{
+ "title": "Pools_Get_Ephemeral",
+ "operationId": "Pools_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_MaximumSet_Gen.json
deleted file mode 100644
index 93954f9702f4..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_MaximumSet_Gen.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Pools_Get_MaximumSet_Gen",
- "operationId": "Pools_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "ht5ZGIN6x25loiC"
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_MinimumSet_Gen.json
deleted file mode 100644
index 674b4aa1db3e..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Get_MinimumSet_Gen.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "title": "Pools_Get_MinimumSet_Gen",
- "operationId": "Pools_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "V9-7SH6R6I"
- },
- "responses": {
- "200": {
- "body": {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_AzureDisk.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_AzureDisk.json
new file mode 100644
index 000000000000..f0cf491bff69
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_AzureDisk.json
@@ -0,0 +1,89 @@
+{
+ "title": "Pools_ListByResourceGroup_AzureDisk",
+ "operationId": "Pools_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_ElasticSan.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_ElasticSan.json
new file mode 100644
index 000000000000..2caf6097b23f
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_ElasticSan.json
@@ -0,0 +1,83 @@
+{
+ "title": "Pools_ListByResourceGroup_ElasticSan",
+ "operationId": "Pools_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_Ephemeral.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_Ephemeral.json
new file mode 100644
index 000000000000..f6964689b940
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_Ephemeral.json
@@ -0,0 +1,73 @@
+{
+ "title": "Pools_ListByResourceGroup_Ephemeral",
+ "operationId": "Pools_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_MaximumSet_Gen.json
deleted file mode 100644
index 23f8069b33d7..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_MaximumSet_Gen.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "title": "Pools_ListByResourceGroup_MaximumSet_Gen",
- "operationId": "Pools_ListByResourceGroup",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/agz"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_MinimumSet_Gen.json
deleted file mode 100644
index cf40c1732333..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListByResourceGroup_MinimumSet_Gen.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "title": "Pools_ListByResourceGroup_MinimumSet_Gen",
- "operationId": "Pools_ListByResourceGroup",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_AzureDisk.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_AzureDisk.json
new file mode 100644
index 000000000000..77355ad0b4b7
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_AzureDisk.json
@@ -0,0 +1,88 @@
+{
+ "title": "Pools_ListBySubscription_AzureDisk",
+ "operationId": "Pools_ListBySubscription",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_ElasticSan.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_ElasticSan.json
new file mode 100644
index 000000000000..d60e1be2c0ad
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_ElasticSan.json
@@ -0,0 +1,82 @@
+{
+ "title": "Pools_ListBySubscription_ElasticSan",
+ "operationId": "Pools_ListBySubscription",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_Ephemeral.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_Ephemeral.json
new file mode 100644
index 000000000000..f9770f5d499c
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_Ephemeral.json
@@ -0,0 +1,72 @@
+{
+ "title": "Pools_ListBySubscription_Ephemeral",
+ "operationId": "Pools_ListBySubscription",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_MaximumSet_Gen.json
deleted file mode 100644
index 942af39b73eb..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_MaximumSet_Gen.json
+++ /dev/null
@@ -1,68 +0,0 @@
-{
- "title": "Pools_ListBySubscription_MaximumSet_Gen",
- "operationId": "Pools_ListBySubscription",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/agz"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_MinimumSet_Gen.json
deleted file mode 100644
index 6e9b0d02391f..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_ListBySubscription_MinimumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "Pools_ListBySubscription_MinimumSet_Gen",
- "operationId": "Pools_ListBySubscription",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_AzureDisk.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_AzureDisk.json
new file mode 100644
index 000000000000..d0b19f06a1a6
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_AzureDisk.json
@@ -0,0 +1,114 @@
+{
+ "title": "Pools_Update_AzureDisk",
+ "operationId": "Pools_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "properties": {
+ "tags": {
+ "key7124": "value7124"
+ },
+ "properties": {
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {}
+ },
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_ElasticSan.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_ElasticSan.json
new file mode 100644
index 000000000000..5cceffbef8ae
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_ElasticSan.json
@@ -0,0 +1,108 @@
+{
+ "title": "Pools_Update_ElasticSan",
+ "operationId": "Pools_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "properties": {
+ "tags": {
+ "key7124": "value7124"
+ },
+ "properties": {
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {}
+ },
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_Ephemeral.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_Ephemeral.json
new file mode 100644
index 000000000000..76d4716247c3
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_Ephemeral.json
@@ -0,0 +1,100 @@
+{
+ "title": "Pools_Update_Ephemeral",
+ "operationId": "Pools_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "properties": {
+ "tags": {
+ "key7124": "value7124"
+ },
+ "properties": {
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3
+ }
+ },
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_MaximumSet_Gen.json
deleted file mode 100644
index 7c18742fa7c4..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_MaximumSet_Gen.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
- "title": "Pools_Update_MaximumSet_Gen",
- "operationId": "Pools_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "Y-PF",
- "properties": {
- "tags": {
- "key7084": "iptnkecjrxqvxsrdytkdkpkmb"
- },
- "properties": {
- "poolType": 26,
- "zones": [
- "puufhsusjhvxxqww"
- ],
- "poolCapacityGiB": 12,
- "assignments": [
- "wmagvstbeupzrzfzioso"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "yfjqysccjrjyiylgfkwhe"
- ],
- "disks": [
- "vkkxfajasnwnynjrjtpluipqnizjy"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "uukitjcvismzmxhr",
- "resourceGroup": "myerdtpqquqjsejb",
- "volumeGroup": "vtxfikamxvskohdi"
- }
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "puufhsusjhvxxqww"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "wmagvstbeupzrzfzioso"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "yfjqysccjrjyiylgfkwhe"
- ],
- "disks": [
- "vkkxfajasnwnynjrjtpluipqnizjy"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "uukitjcvismzmxhr",
- "resourceGroup": "myerdtpqquqjsejb",
- "volumeGroup": "vtxfikamxvskohdi"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_MinimumSet_Gen.json
deleted file mode 100644
index 7ddaaad611b4..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Pools_Update_MinimumSet_Gen.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "title": "Pools_Update_MinimumSet_Gen",
- "operationId": "Pools_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "Q996I753P5F5",
- "properties": {}
- },
- "responses": {
- "200": {
- "body": {
- "location": "jdfanwoyiigytvanvct"
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_CreateOrUpdate.json b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_CreateOrUpdate.json
new file mode 100644
index 000000000000..1e7d7b459e50
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_CreateOrUpdate.json
@@ -0,0 +1,72 @@
+{
+ "title": "Snapshots_CreateOrUpdate",
+ "operationId": "Snapshots_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "snapshotName": "test-snapshot",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_Delete.json b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_Delete.json
new file mode 100644
index 000000000000..6a517d277df0
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_Delete.json
@@ -0,0 +1,19 @@
+{
+ "title": "Snapshots_Delete",
+ "operationId": "Snapshots_Delete",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "snapshotName": "test-snapshot"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_Get.json b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_Get.json
new file mode 100644
index 000000000000..b31bb7d87c7d
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_Get.json
@@ -0,0 +1,36 @@
+{
+ "title": "Snapshots_Get",
+ "operationId": "Snapshots_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "snapshotName": "test-snapshot"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_ListByPool.json b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_ListByPool.json
new file mode 100644
index 000000000000..76ed8930f6ae
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Snapshots_ListByPool.json
@@ -0,0 +1,40 @@
+{
+ "title": "Snapshots_ListByPool",
+ "operationId": "Snapshots_ListByPool",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json
deleted file mode 100644
index b128c88a1c6b..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "title": "VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-1Jk-",
- "volumeSnapshotName": "XBOVLQ-UDJ2n5kod886SN",
- "resource": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json
deleted file mode 100644
index 99f07b5eef4e..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "title": "VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "E-sfxFA3nN-FcID851Rq-Q3u",
- "volumeSnapshotName": "CjG-k-K4nWgGVV3VL-jT-5",
- "resource": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Delete_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Delete_MaximumSet_Gen.json
deleted file mode 100644
index 206dd595910b..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Delete_MaximumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "VolumeSnapshots_Delete_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-5-35-2U2E-CSe9",
- "volumeSnapshotName": "CB-C-4X2EX-O2V-772h-6K"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Delete_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Delete_MinimumSet_Gen.json
deleted file mode 100644
index b7820acd076b..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Delete_MinimumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "VolumeSnapshots_Delete_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "CE2Gd-F5Qhn62C-dFQMNs",
- "volumeSnapshotName": "8-YF-X-38TN4kHcjy"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Get_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Get_MaximumSet_Gen.json
deleted file mode 100644
index a590b5877c5a..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Get_MaximumSet_Gen.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "title": "VolumeSnapshots_Get_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "3S1S67z-KE-50",
- "volumeSnapshotName": "dg0-7-W2F-6S7V5Rp"
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Get_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Get_MinimumSet_Gen.json
deleted file mode 100644
index 36f5b85a896f..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Get_MinimumSet_Gen.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "title": "VolumeSnapshots_Get_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "ORF7-4iM",
- "volumeSnapshotName": "U43AU9-"
- },
- "responses": {
- "200": {
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json
deleted file mode 100644
index 2fa27d2e19ee..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "title": "VolumeSnapshots_ListByPool_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "67lG-rcl6-2Y57-i-5m"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json
deleted file mode 100644
index c54cb25e5809..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "title": "VolumeSnapshots_ListByPool_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "992M7a117-M2---l623E8"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Update_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Update_MaximumSet_Gen.json
deleted file mode 100644
index dff1a86c6ab2..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Update_MaximumSet_Gen.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "VolumeSnapshots_Update_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "q--0-FXNOU",
- "volumeSnapshotName": "KP7A-",
- "properties": {
- "properties": {
- "source": "pwgidsdrmnfv",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "lxarajxhe"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "lxarajxhe"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Update_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Update_MinimumSet_Gen.json
deleted file mode 100644
index babc9f61de2d..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/VolumeSnapshots_Update_MinimumSet_Gen.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "title": "VolumeSnapshots_Update_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "kd2Zk6-IlA7B54LjVU",
- "volumeSnapshotName": "HVQX-F5-3-2t-YEJ",
- "properties": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate.json
new file mode 100644
index 000000000000..7b0d34b84e65
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate.json
@@ -0,0 +1,95 @@
+{
+ "title": "Volumes_CreateOrUpdate",
+ "operationId": "Volumes_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user2",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "vyojfxtqmhxrdbmq",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json
deleted file mode 100644
index 30473334b607..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json
+++ /dev/null
@@ -1,84 +0,0 @@
-{
- "title": "Volumes_CreateOrUpdate_MaximumSet_Gen",
- "operationId": "Volumes_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "L-7Vr5xE3",
- "volumeName": "y4borPc1GHLej48W3",
- "resource": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json
deleted file mode 100644
index 8fc2234cdcd4..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "title": "Volumes_CreateOrUpdate_MinimumSet_Gen",
- "operationId": "Volumes_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-3-0",
- "volumeName": "q-r6KY54UA6G5TPSTL83",
- "resource": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete.json
new file mode 100644
index 000000000000..4c681af48901
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete.json
@@ -0,0 +1,19 @@
+{
+ "title": "Volumes_Delete",
+ "operationId": "Volumes_Delete",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete_MaximumSet_Gen.json
deleted file mode 100644
index 10e11a79badb..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete_MaximumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "Volumes_Delete_MaximumSet_Gen",
- "operationId": "Volumes_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "PtV22-U-SY3zstj5",
- "volumeName": "mm9Sj-3"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete_MinimumSet_Gen.json
deleted file mode 100644
index 7b2ac7125812..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Delete_MinimumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "Volumes_Delete_MinimumSet_Gen",
- "operationId": "Volumes_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "2O4W",
- "volumeName": "563---P1-R"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get.json
new file mode 100644
index 000000000000..2b40410e7fd7
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get.json
@@ -0,0 +1,46 @@
+{
+ "title": "Volumes_Get",
+ "operationId": "Volumes_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get_MaximumSet_Gen.json
deleted file mode 100644
index 1c01e849757c..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get_MaximumSet_Gen.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "title": "Volumes_Get_MaximumSet_Gen",
- "operationId": "Volumes_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "Y3U--n-tTd-6Kw5f",
- "volumeName": "4-8-qQ-n271-"
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get_MinimumSet_Gen.json
deleted file mode 100644
index e2839c28b331..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Get_MinimumSet_Gen.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "title": "Volumes_Get_MinimumSet_Gen",
- "operationId": "Volumes_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "7o-47nN4H4F1",
- "volumeName": "27RG-gCepP4"
- },
- "responses": {
- "200": {
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool.json
new file mode 100644
index 000000000000..bf58df418ed3
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool.json
@@ -0,0 +1,50 @@
+{
+ "title": "Volumes_ListByPool",
+ "operationId": "Volumes_ListByPool",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool_MaximumSet_Gen.json
deleted file mode 100644
index 7487d67b53a9..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool_MaximumSet_Gen.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "title": "Volumes_ListByPool_MaximumSet_Gen",
- "operationId": "Volumes_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "2-47N73-6-rr28og"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool_MinimumSet_Gen.json
deleted file mode 100644
index ea5fd01f8bea..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_ListByPool_MinimumSet_Gen.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "title": "Volumes_ListByPool_MinimumSet_Gen",
- "operationId": "Volumes_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "22J6--48-c8-3F4XQ-u63ko5"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update.json
new file mode 100644
index 000000000000..1d801b4df88f
--- /dev/null
+++ b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update.json
@@ -0,0 +1,59 @@
+{
+ "title": "Volumes_Update",
+ "operationId": "Volumes_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume",
+ "properties": {
+ "properties": {
+ "labels": {
+ "key6684": "ssgphiygc"
+ },
+ "capacityGiB": 61986
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update_MaximumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update_MaximumSet_Gen.json
deleted file mode 100644
index 198259734aea..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update_MaximumSet_Gen.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Volumes_Update_MaximumSet_Gen",
- "operationId": "Volumes_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "THTW6Q-MdHA-uGSHBNW3-8c",
- "volumeName": "95c1b7n6v36-dU-",
- "properties": {
- "properties": {
- "labels": {
- "key1348": "rykxllqddzkapmyyatmcsjstsyq"
- },
- "capacityGiB": 22,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "oyqneisrwfzqkoiqrxz"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "oyqneisrwfzqkoiqrxz"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update_MinimumSet_Gen.json b/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update_MinimumSet_Gen.json
deleted file mode 100644
index b70f14484ca3..000000000000
--- a/specification/containerstorage/ContainerStorage.Management/examples/Volumes_Update_MinimumSet_Gen.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "title": "Volumes_Update_MinimumSet_Gen",
- "operationId": "Volumes_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "44NPG8P2DT-DH73S8",
- "volumeName": "7eHg-KG-4X-YLrHc-80-4-m",
- "properties": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/ContainerStorage.Management/main.tsp b/specification/containerstorage/ContainerStorage.Management/main.tsp
index 5c96967501e9..cc9b7f285169 100644
--- a/specification/containerstorage/ContainerStorage.Management/main.tsp
+++ b/specification/containerstorage/ContainerStorage.Management/main.tsp
@@ -14,7 +14,7 @@ using Azure.ResourceManager.Foundations;
@armProviderNamespace
@service({
title: "Azure-ContainerStorageRP",
- version: "2023-03-01-preview",
+ version: "2023-07-01-preview",
})
@doc("Azure Container Storage Resource Provider API.")
@useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1)
@@ -27,7 +27,9 @@ interface Operations extends Azure.ResourceManager.Operations {}
@doc("Pool resource")
model Pool is TrackedResource {
@doc("Pool Object")
- @pattern("^[a-zA-Z0-9-]{3,24}$")
+ @minLength(3)
+ @maxLength(253)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$")
@key("poolName")
@path
@segment("pools")
@@ -36,216 +38,174 @@ model Pool is TrackedResource {
@doc("Pool Properties")
model PoolProperties {
- // @doc("Sku of Pool")
- // sku: Sku;
-
- @visibility("read")
@doc("The status of the last operation.")
+ @visibility("read")
provisioningState?: ProvisioningState;
- @doc("Type of the Pool: ephemeral, disk, managed, or elasticsan.")
- poolType: PoolType;
+ @doc("The operational status of the resource")
+ @visibility("read")
+ status?: ResourceOperationalStatus;
+ @visibility("read", "create")
+ @maxItems(3)
@doc("List of availability zones that resources can be created in.")
- zones: string[];
+ zones?: Zone[];
- @doc("Initial capacity of the pool in GiB.")
- poolCapacityGiB: int64;
- // @doc("List of boolean feature-flags, e.g. pool/volume auto-expansion, reclaim policy.")
- // features?: Record;
+ @doc("Resources represent the resources the pool should have.")
+ resources?: Resources;
+ @doc("Type of the Pool: ephemeralDisk, azureDisk, or elasticsan.")
+ poolType: PoolType;
- @doc("List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For portable there can be many.")
- assignments: string[];
- // Don't include in preview
- // @doc("Type of encryption. Allowed values: EncryptionAtRestWithPlatformKey.")
- // encryption: EncryptionType;
+ @doc("ReclaimPolicy defines what happens to the backend storage when StoragePool is deleted")
+ @visibility("read", "create")
+ reclaimPolicy?: ReclaimPolicy;
+ @doc("List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For ElasticSAN there can be many.")
+ assignments?: Assignment[];
+}
- @doc("Ephemeral Pool Properties")
- ephemeralPoolProperties?: EphemeralPoolProperties;
- // @doc("Managed Pool Properties")
- // managedPoolProperties?: ManagedPoolProperties;
+@doc("Availability Zones")
+enum Zone {
+ @doc("First availability zone.")
+ Zone1: "1",
+ @doc("Second availability zone.")
+ Zone2: "2",
- @doc("Disk Pool Properties")
- diskPoolProperties?: DiskPoolProperties;
+ @doc("Third availability zone.")
+ Zone3: "3",
+}
- @doc("Elastic San Pool Properties")
- elasticSanPoolProperties: ElasticSanPoolProperties;
+@doc("Resource Requests for the pool.")
+model Resources {
+ @doc("Requests for capacity for the pool.")
+ requests?: Requests;
}
-@doc("Ephemeral Pool Properties")
-model EphemeralPoolProperties {
- // Post preview
- // @doc("The number of data copies. Default 3.")
- // replicas?: int64 = 3;
+@doc("Requests for capacity for the pool.")
+model Requests {
+ @doc("Requested capacity of the pool in GiB.")
+ @minValue(1024)
+ @maxValue(65536)
+ storage?: int64 = 1024;
+}
- @doc("Template name or KV pairs containing disk selection criteria, e.g. model=\"Microsoft NVMe Direct Disk\" to match all Lsv2 NVMe disks.")
- diskSelector: string[];
+@doc("Type of the Pool: ephemeralDisk, azureDisk, or elasticsan")
+model PoolType {
+ @doc("Disk Pool Properties")
+ azureDisk?: AzureDisk;
- @doc("Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).")
- disks: string[];
+ @doc("Elastic San Pool Properties")
+ elasticSan?: ElasticSan;
- @doc("Consent to format the local disks.")
- diskFormat?: boolean = false;
+ @doc("Ephemeral Pool Properties")
+ ephemeralDisk?: EphemeralDisk;
}
-@doc("Managed Pool Properties")
-model ManagedPoolProperties {}
+@doc("Reclaim policy")
+enum ReclaimPolicy {
+ @doc("Delete resource")
+ Delete,
-@doc("Elastic San Pool Properties")
-model ElasticSanPoolProperties {
- @doc("Name of an existing SAN.")
- sanName: string;
+ @doc("Retain resource")
+ Retain,
+}
- @doc("Resource group of an existing SAN.")
- resourceGroup: string;
+@doc("Model for disk for that pool is using")
+model Disk {
+ @doc("ID is the disk identifier visible to the OS. It is typically the WWN or disk ID in formats such as eui.e8238fa6bf530001001b448b45263379 or 0x5002cf6cbc5dd460")
+ id: string;
- @doc("Volume group of an existing SAN.")
- volumeGroup: string;
+ @doc("Reference is the location of the disk in an external system.")
+ reference: string;
}
-@doc("Disk Pool Properties")
-model DiskPoolProperties {
- // Don't include in preview
- // @doc("Name of the CSI provisioner, e.g. disk.csi.azure.com")
- // csiProvisioner?: string;
-
- @doc("List of KV pairs to set in StorageClass to configure CSI driver.")
- csiParams?: Record;
- // @doc("Initial capacity of disks. Application volumes must fit within single disks.")
- // diskCapacityRequest: int64;
+@doc("Properties shared between azureDisk and elasticSan")
+model ProvisionedPoolProperties {
+ @visibility("read")
+ @doc("Managed resource group for the pool.")
+ resourceGroup?: string;
+ @visibility("read", "create")
+ @doc("Sku name")
+ skuName?: SkuType;
- @doc("Maximum capacity of the volumes in GiB the user intends to create. Default 512.")
- maxVolumeCapacityGiB?: int64 = 512;
+ @doc("Encryption specifies the encryption configuration for the Azure Disk pool")
+ @visibility("read", "create")
+ encryption?: Encryption;
+}
+@doc("Properties shared between the azureDisk and ephemeralDisk")
+model DiskPoolProperties {
@doc("Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).")
- disks?: string[];
+ disks?: Disk[];
}
-@doc("Sku definition")
-model Sku {
- @doc("Sku name")
- name: SkuName;
-
- @doc("Sku Account Tier")
- tier: AccountTier;
+@doc("Azure Disk Pool Properties")
+model AzureDisk {
+ ...ProvisionedPoolProperties;
+ ...DiskPoolProperties;
}
-/** Sku Name enum type */
-enum SkuName {
- /** Invalid Sku */
- Invalid,
- /** Premium_LRS Sku */
+@doc("SKU of the underlying managed disk")
+enum AzureDiskSkuName {
+ @doc("Premium_LRS SKU")
Premium_LRS,
- /** Premium_ZRS Sku */
- Premium_ZRS,
-}
-/** Account Tier */
-enum AccountTier {
- /** Invalid Account Tier */
- Invalid,
- /** Standard Tier */
- Standard,
- /** Premium Tier */
- Premium,
- /** Ultra Tier */
- Ultra,
-}
+ @doc("Standard_LRS SKU")
+ Standard_LRS,
-@doc("Network Rule Set definition")
-model NetworkRuleSet {
- @doc("Default action")
- defaultAction: Action;
+ @doc("StandardSSD_LRS SKU")
+ StandardSSD_LRS,
- @doc("Virtual network rules")
- virtualNetworkRules: VirtualNetworkRule[];
-}
+ @doc("UltraSSD_LRS SKU")
+ UltraSSD_LRS,
-@doc("Virtual Network Rule definition")
-model VirtualNetworkRule {
- @doc("Action of rule")
- action?: Action = Action.Allow;
+ @doc("Premium_ZRS SKU")
+ Premium_ZRS,
- @doc("Id of rule")
- id: string;
-}
+ @doc("PremiumV2_LRS SKU")
+ PremiumV2_LRS,
-/** Action Enum */
-enum Action {
- /** Deny Action */
- Deny,
- /** Allow Action */
- Allow,
+ @doc("StandardSSD_ZRS SKU")
+ StandardSSD_ZRS,
}
-/** Protocol Type */
-enum ProtocolType {
- /** No Protocol */
- None,
- /** iSCSI protocol */
- iSCSI,
-}
+@doc("Encryption key properties for the pool.")
+model Encryption {
+ @doc("The name of the key vault key.")
+ keyName: string;
-/** Encryption Type */
-enum EncryptionType {
- /** Encryption at rest with platform key */
- EncryptionAtRestWithPlatformKey,
-}
+ @doc("The URI of the key vault.")
+ keyVaultUri: string;
-/** Pool Type */
-enum PoolType {
- /** Ephemeral Pool */
- Ephemeral: 1,
- /** Disk Pool */
- Disk: 2,
- /** Managed Pool */
- Managed: 3,
- /** ElasticSan Pool */
- ElasticSan: 4,
+ ...ManagedServiceIdentity;
}
-/** Volume binding mode */
-enum VolumeBindingMode {
- /** Immediate binding */
- Immediate,
- /** Wait for customer to bind */
- WaitFirstForCustomer,
+@doc("Elastic San Pool Properties")
+model ElasticSan {
+ ...ProvisionedPoolProperties;
}
-@doc("Disk Properties Model")
-model DiskProperties {
- @doc("Reference to Managed Disk")
- resourceId: string;
-
- @doc("Manufacturer Disk ID")
- wwn: string;
-
- @doc("Capacity of disk in GiB")
- capacityGiB: int64;
-
- @doc("Type of disk")
- diskType: DiskType;
-
- @doc("SKU or Manufacturer type/name")
- displayName: string;
-
- @doc("Name of the node disk is attached on")
- nodeName: string;
+/** Sku Name enum type */
+@doc("ElasticSAN SKUs")
+enum ElasticSanSkuName {
+ @doc("Premium_LRS SKU")
+ Premium_LRS,
- @doc("Used to import SSD to discover WWN")
- devicePath: string;
+ @doc("Premium_ZRS SKU")
+ Premium_ZRS,
}
-/** Disk Type */
-enum DiskType {
- /** Local Disk Type */
- Local,
- /** Managed Disk Type */
- Managed,
+@doc("Ephemeral Disk Pool Properties")
+model EphemeralDisk {
+ @doc("The number of data copies. Default 3.")
+ @minValue(1)
+ @maxValue(3)
+ replicas?: int64 = 3;
+
+ ...DiskPoolProperties;
}
@doc("Provisioning state of the resource.")
@@ -266,6 +226,27 @@ enum ProvisioningState {
Accepted,
}
+@doc("Status of the resource")
+model ResourceOperationalStatus {
+ @doc("state of the resource")
+ state: ResourceOperationStatusState;
+
+ @doc("Reason for state.")
+ message?: string;
+}
+
+@doc("State of the resource.")
+enum ResourceOperationStatusState {
+ @doc("The resource is pending.")
+ Pending,
+
+ @doc("The resource is available.")
+ Available,
+
+ @doc("The resource is unavailable.")
+ Unavailable,
+}
+
// END POOL
// START VOLUME
@@ -273,7 +254,9 @@ enum ProvisioningState {
@parentResource(Pool)
model Volume is ProxyResource {
@doc("Volume Resource")
- @pattern("^[a-zA-Z0-9-]{3,24}$")
+ @minLength(3)
+ @maxLength(253)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$")
@key("volumeName")
@path
@segment("volumes")
@@ -285,85 +268,41 @@ model VolumeProperties {
@visibility("read")
@doc("The status of the last operation.")
provisioningState?: ProvisioningState;
- // Will not have features enabled by these flags for preview
- // @doc("List of boolean feature-flags, e.g. pool/volume auto-expansion, reclaim policy.")
- // features?: Record;
+ @doc("The status of the resource.")
+ @visibility("read")
+ status?: ResourceOperationalStatus;
@doc("String KV pairs indicating labels")
labels: Record;
@doc("Requested capacity in GiB")
+ @maxValue(65536)
+ @minValue(1)
capacityGiB: int64;
- @doc("Indicates how the volume should be attached")
- volumeMode: VolumeMode;
- // Set default to RWO in RP and pass it through
- // @doc("Indicates how the volume can be accessed")
- // accessMode: AccessMode;
-
- // Don't support replication for preview
- // @doc("Number of replicas")
- // replicas: int64;
-
-
- @doc("Reclaim Policy, Delete or Retain")
- reclaimPolicy: ReclaimPolicy;
-
- @doc("List of string mount options")
- mountOptions: string[];
-
- // Don't support for preview
- // @doc("Placement properties")
- // placementProperties: PlacementProperties;
-}
-
-/** Storage volume mode */
-enum VolumeMode {
- /** FileSystem volume mode */
- Filesystem,
- /** Raw volume mode */
- Raw,
-}
-
-/** Access mode */
-enum AccessMode {
- /** Read Write Once */
- ReadWriteOnce,
- /** Read Only Many */
- ReadOnlyMany,
- /** Read Write Many */
- ReadWriteMany,
- /** Shared Read Write Once Pod */
- ReadWriteOncePod,
+ @visibility("read")
+ @doc("Properties of the volume")
+ volumeType?: VolumeType;
}
-/** Reclaim Policy */
-enum ReclaimPolicy {
- /** Delete resource */
- Delete,
- /** Retain resource */
- Retain,
+@doc("Properties of the volume")
+model VolumeType {
+ @visibility("read")
+ @doc("Properties of the ElasticSAN iSCSI target")
+ elasticSan?: ElasticSanVolumeProperties;
}
-@doc("Placement Properties Model")
-model PlacementProperties {
- @doc("Affinity label selector")
- affinityLabelSelector: string;
-
- @doc("Anti affinity label selector")
- antiAffinityLabelSelector: string;
+@doc("Properties of the ElasticSAN iSCSI target")
+model ElasticSanVolumeProperties {
+ @doc("iSCSI Target IQN (iSCSI Qualified Name); example: \"iqn.2005-03.org.iscsi:server\"")
+ targetIqn: string;
- @doc("When unsatisfiable")
- whenUnsatisfiable: WhenUnsatisfiable;
-}
+ @doc("iSCSI Target Portal Host Name")
+ targetPortalHostname: string;
-/** When request unsatisfiable */
-enum WhenUnsatisfiable {
- /** Do not schedule */
- DoNotSchedule,
- /** Schedule anyway */
- ScheduleAnyway,
+ @doc("iSCSI Target Portal Port")
+ targetPortalPort: int32;
}
// END VOLUME
@@ -371,45 +310,94 @@ enum WhenUnsatisfiable {
// START VOLUME SNAPSHOT
@parentResource(Pool)
-model VolumeSnapshot is ProxyResource {
+model Snapshot is ProxyResource {
@doc("Volume Snapshot Resource")
- @pattern("^[a-zA-Z0-9-]{3,24}$")
- @key("volumeSnapshotName")
+ @minLength(3)
+ @maxLength(253)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$")
+ @key("snapshotName")
@path
- @segment("volumeSnapshots")
+ @segment("snapshots")
name: string;
}
@doc("Volume Snapshot Properties")
-model VolumeSnapshotProperties {
+model SnapshotProperties {
@visibility("read")
@doc("The status of the last operation.")
provisioningState?: ProvisioningState;
- // Don't include in preview
- // @doc("List of boolean feature-flags, e.g. pool/volume auto-expansion, reclaim policy.")
- // features?: Record;
+ @doc("The status of the resource.")
+ @visibility("read")
+ status?: ResourceOperationalStatus;
@doc("Reference to the source volume")
+ @minLength(3)
+ @maxLength(253)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$")
+ @visibility("read", "create")
source: string;
+}
+
+// END VOLUME SNAPSHOT
- @doc("Indicates how the volumes created from the snapshot should be attached")
- volumeMode: VolumeMode;
+// START ASSIGNMENT
- @doc("Reclaim Policy, Delete or Retain")
- reclaimPolicy: ReclaimPolicy;
+@doc("Status of the assignment resource")
+model AssignmentStatus {
+ @doc("State of the assignment resource")
+ state: AssignmentStatusState;
- @doc("List of string mount options")
- mountOptions: string[];
+ @doc("Reason for the status")
+ message?: string;
}
-// END VOLUME SNAPSHOT
+@doc("Status of the assignment resource")
+enum AssignmentStatusState {
+ @doc("The assignment of the pool to the resource is in progress")
+ Assigning,
+
+ @doc("The assignment to the pool was successful.")
+ Assigned,
+
+ @doc("The pool is being unassigned.")
+ Unassigning,
+
+ @doc("The operation of assigning or unassigning the pool failed.")
+ Failed,
+}
+
+scalar AssignmentId
+ extends Azure.ResourceManager.ResourceIdentifier<[
+ {
+ type: "Microsoft.ContainerService/managedClusters",
+ }
+ ]>;
+
+@doc("Assignment Properties")
+model Assignment {
+ @visibility("read")
+ @doc("Indicates if the assignment is in a usable state")
+ status?: AssignmentStatus;
+
+ @visibility("read", "create")
+ @doc("Resource id for the assigned resource")
+ id: AssignmentId;
+}
+
+// END ASSIGNMENT
@armResourceOperations
interface Pools {
get is ArmResourceRead;
- createOrUpdate is ArmResourceCreateOrUpdateAsync;
- delete is ArmResourceDeleteAsync;
+ @extension(
+ "x-ms-long-running-operation-options",
+ {
+ `final-state-via`: "location",
+ }
+ )
+ createOrUpdate is ArmResourceCreateOrUpdate2Async;
+ delete is ArmResourceDelete2Async;
update is ArmResourcePatchAsync;
listByResourceGroup is ArmResourceListByParent;
listBySubscription is ArmListBySubscription;
@@ -418,24 +406,78 @@ interface Pools {
@armResourceOperations
interface Volumes {
get is ArmResourceRead;
- createOrUpdate is ArmResourceCreateOrUpdateAsync;
- delete is ArmResourceDeleteAsync;
+ @extension(
+ "x-ms-long-running-operation-options",
+ {
+ `final-state-via`: "location",
+ }
+ )
+ createOrUpdate is ArmResourceCreateOrUpdate2Async;
+ delete is ArmResourceDelete2Async;
update is ArmResourcePatchAsync;
- listByResourceGroup is ArmResourceListByParent;
+ listByPool is ArmResourceListByParent;
}
@armResourceOperations
-interface VolumeSnapshots {
- get is ArmResourceRead;
- createOrUpdate is ArmResourceCreateOrUpdateAsync;
- delete is ArmResourceDeleteAsync;
-
+interface Snapshots {
+ get is ArmResourceRead;
@extension(
"x-ms-long-running-operation-options",
{
- `final-state-via`: "azure-async-operation",
+ `final-state-via`: "location",
}
)
- update is ArmResourcePatchAsync;
- listByResourceGroup is ArmResourceListByParent;
+ createOrUpdate is ArmResourceCreateOrUpdate2Async;
+ delete is ArmResourceDelete2Async;
+ listByPool is ArmResourceListByParent;
}
+
+/** Compliant create or update template */
+/**
+ * A long-running resource CreateOrUpdate (PUT)
+ * @template TResource the resource being patched
+ * @template TBaseParameters Optional. Allows overriding the operation parameters
+ */
+#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation-outside-interface" "This is a valid template"
+@autoRoute
+@doc("Create a {name}", TResource)
+@extension("x-ms-long-running-operation", true)
+@extension(
+ "x-ms-long-running-operation-options",
+ {
+ `final-state-via`: "azure-async-operation",
+ }
+)
+@armResourceCreateOrUpdate(TResource)
+@put
+op ArmResourceCreateOrUpdate2Async<
+ TResource extends Azure.ResourceManager.Foundations.ArmResource,
+ TBaseParameters = Azure.ResourceManager.Foundations.BaseParameters
+>(
+ ...ResourceInstanceParameters,
+
+ @doc("Resource create parameters.")
+ @body
+ resource: TResource,
+): ArmUpdatedResponse | ArmCreatedResponse | ErrorResponse;
+
+@doc("ARM update operation completed successfully")
+model ArmUpdatedResponse
+ is ArmResponse;
+
+/** Compliant create or update template */
+/**
+/**
+ * @dev Delete a resource asynchronously. DEPRECATED: Use ArmResourceDeleteWithoutOkAsync instead
+ * @template TResource The resource being deleted
+ * @template TBaseParameters Optional. Allows overriding the parameters for the operation
+ */
+#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation-outside-interface" "This is a valid template"
+op ArmResourceDelete2Async<
+ TResource extends ArmResource,
+ TBaseParameters = BaseParameters
+> is ArmResourceDeleteAsyncBase<
+ TResource,
+ ArmDeleteAcceptedLroResponse | ArmDeletedNoContentResponse,
+ TBaseParameters
+>;
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/containerstorage.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/containerstorage.json
deleted file mode 100644
index 47e943df07a7..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/containerstorage.json
+++ /dev/null
@@ -1,2196 +0,0 @@
-{
- "swagger": "2.0",
- "info": {
- "title": "Azure-ContainerStorageRP",
- "version": "2023-03-01-preview",
- "description": "Azure Container Storage Resource Provider 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": "Operations"
- },
- {
- "name": "Pools"
- },
- {
- "name": "Volumes"
- },
- {
- "name": "VolumeSnapshots"
- }
- ],
- "paths": {
- "/providers/Microsoft.ContainerStorage/operations": {
- "get": {
- "tags": [
- "Operations"
- ],
- "operationId": "Operations_List",
- "description": "List the operations for the provider",
- "parameters": [
- {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "ARM 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-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "Operations_List_MaximumSet_Gen": {
- "$ref": "./examples/Operations_List_MaximumSet_Gen.json"
- },
- "Operations_List_MinimumSet_Gen": {
- "$ref": "./examples/Operations_List_MinimumSet_Gen.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerStorage/pools": {
- "get": {
- "tags": [
- "Pools"
- ],
- "operationId": "Pools_ListBySubscription",
- "description": "List Pool 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": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/PoolListResult"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "Pools_ListBySubscription_MaximumSet_Gen": {
- "$ref": "./examples/Pools_ListBySubscription_MaximumSet_Gen.json"
- },
- "Pools_ListBySubscription_MinimumSet_Gen": {
- "$ref": "./examples/Pools_ListBySubscription_MinimumSet_Gen.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools": {
- "get": {
- "tags": [
- "Pools"
- ],
- "operationId": "Pools_ListByResourceGroup",
- "description": "List Pool 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": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/PoolListResult"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "Pools_ListByResourceGroup_MaximumSet_Gen": {
- "$ref": "./examples/Pools_ListByResourceGroup_MaximumSet_Gen.json"
- },
- "Pools_ListByResourceGroup_MinimumSet_Gen": {
- "$ref": "./examples/Pools_ListByResourceGroup_MinimumSet_Gen.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}": {
- "get": {
- "tags": [
- "Pools"
- ],
- "operationId": "Pools_Get",
- "description": "Get a Pool",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/Pool"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Pools_Get_MaximumSet_Gen": {
- "$ref": "./examples/Pools_Get_MaximumSet_Gen.json"
- },
- "Pools_Get_MinimumSet_Gen": {
- "$ref": "./examples/Pools_Get_MinimumSet_Gen.json"
- }
- }
- },
- "put": {
- "tags": [
- "Pools"
- ],
- "operationId": "Pools_CreateOrUpdate",
- "description": "Create a Pool",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "resource",
- "in": "body",
- "required": true,
- "description": "Resource create parameters.",
- "schema": {
- "$ref": "#/definitions/Pool"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/Pool"
- }
- },
- "201": {
- "description": "ARM create operation completed successfully.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- }
- },
- "schema": {
- "$ref": "#/definitions/Pool"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Pools_CreateOrUpdate_MaximumSet_Gen": {
- "$ref": "./examples/Pools_CreateOrUpdate_MaximumSet_Gen.json"
- },
- "Pools_CreateOrUpdate_MinimumSet_Gen": {
- "$ref": "./examples/Pools_CreateOrUpdate_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "azure-async-operation"
- },
- "x-ms-long-running-operation": true
- },
- "delete": {
- "tags": [
- "Pools"
- ],
- "operationId": "Pools_Delete",
- "description": "Delete a Pool",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "Resource deleted successfully."
- },
- "202": {
- "description": "Resource deletion accepted.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- },
- "Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
- }
- }
- },
- "204": {
- "description": "Resource deleted successfully."
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Pools_Delete_MaximumSet_Gen": {
- "$ref": "./examples/Pools_Delete_MaximumSet_Gen.json"
- },
- "Pools_Delete_MinimumSet_Gen": {
- "$ref": "./examples/Pools_Delete_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
- "x-ms-long-running-operation": true
- },
- "patch": {
- "tags": [
- "Pools"
- ],
- "operationId": "Pools_Update",
- "description": "Update a Pool",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "properties",
- "in": "body",
- "required": true,
- "description": "The resource properties to be updated.",
- "schema": {
- "$ref": "#/definitions/PoolUpdate"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/Pool"
- }
- },
- "202": {
- "description": "Resource update request accepted.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- },
- "Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
- }
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Pools_Update_MaximumSet_Gen": {
- "$ref": "./examples/Pools_Update_MaximumSet_Gen.json"
- },
- "Pools_Update_MinimumSet_Gen": {
- "$ref": "./examples/Pools_Update_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
- "x-ms-long-running-operation": true
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/volumes": {
- "get": {
- "tags": [
- "Volumes"
- ],
- "operationId": "Volumes_ListByPool",
- "description": "List Volume resources by Pool",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/VolumeListResult"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "Volumes_ListByPool_MaximumSet_Gen": {
- "$ref": "./examples/Volumes_ListByPool_MaximumSet_Gen.json"
- },
- "Volumes_ListByPool_MinimumSet_Gen": {
- "$ref": "./examples/Volumes_ListByPool_MinimumSet_Gen.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/volumes/{volumeName}": {
- "get": {
- "tags": [
- "Volumes"
- ],
- "operationId": "Volumes_Get",
- "description": "Get a Volume",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeName",
- "in": "path",
- "required": true,
- "description": "Volume Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/Volume"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Volumes_Get_MaximumSet_Gen": {
- "$ref": "./examples/Volumes_Get_MaximumSet_Gen.json"
- },
- "Volumes_Get_MinimumSet_Gen": {
- "$ref": "./examples/Volumes_Get_MinimumSet_Gen.json"
- }
- }
- },
- "put": {
- "tags": [
- "Volumes"
- ],
- "operationId": "Volumes_CreateOrUpdate",
- "description": "Create a Volume",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeName",
- "in": "path",
- "required": true,
- "description": "Volume Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "resource",
- "in": "body",
- "required": true,
- "description": "Resource create parameters.",
- "schema": {
- "$ref": "#/definitions/Volume"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/Volume"
- }
- },
- "201": {
- "description": "ARM create operation completed successfully.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- }
- },
- "schema": {
- "$ref": "#/definitions/Volume"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Volumes_CreateOrUpdate_MaximumSet_Gen": {
- "$ref": "./examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json"
- },
- "Volumes_CreateOrUpdate_MinimumSet_Gen": {
- "$ref": "./examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "azure-async-operation"
- },
- "x-ms-long-running-operation": true
- },
- "delete": {
- "tags": [
- "Volumes"
- ],
- "operationId": "Volumes_Delete",
- "description": "Delete a Volume",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeName",
- "in": "path",
- "required": true,
- "description": "Volume Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "Resource deleted successfully."
- },
- "202": {
- "description": "Resource deletion accepted.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- },
- "Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
- }
- }
- },
- "204": {
- "description": "Resource deleted successfully."
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Volumes_Delete_MaximumSet_Gen": {
- "$ref": "./examples/Volumes_Delete_MaximumSet_Gen.json"
- },
- "Volumes_Delete_MinimumSet_Gen": {
- "$ref": "./examples/Volumes_Delete_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
- "x-ms-long-running-operation": true
- },
- "patch": {
- "tags": [
- "Volumes"
- ],
- "operationId": "Volumes_Update",
- "description": "Update a Volume",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeName",
- "in": "path",
- "required": true,
- "description": "Volume Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "properties",
- "in": "body",
- "required": true,
- "description": "The resource properties to be updated.",
- "schema": {
- "$ref": "#/definitions/VolumeUpdate"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/Volume"
- }
- },
- "202": {
- "description": "Resource update request accepted.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- },
- "Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
- }
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Volumes_Update_MaximumSet_Gen": {
- "$ref": "./examples/Volumes_Update_MaximumSet_Gen.json"
- },
- "Volumes_Update_MinimumSet_Gen": {
- "$ref": "./examples/Volumes_Update_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
- "x-ms-long-running-operation": true
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/volumeSnapshots": {
- "get": {
- "tags": [
- "VolumeSnapshots"
- ],
- "operationId": "VolumeSnapshots_ListByPool",
- "description": "List VolumeSnapshot resources by Pool",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/VolumeSnapshotListResult"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "VolumeSnapshots_ListByPool_MaximumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json"
- },
- "VolumeSnapshots_ListByPool_MinimumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/volumeSnapshots/{volumeSnapshotName}": {
- "get": {
- "tags": [
- "VolumeSnapshots"
- ],
- "operationId": "VolumeSnapshots_Get",
- "description": "Get a VolumeSnapshot",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeSnapshotName",
- "in": "path",
- "required": true,
- "description": "Volume Snapshot Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/VolumeSnapshot"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "VolumeSnapshots_Get_MaximumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_Get_MaximumSet_Gen.json"
- },
- "VolumeSnapshots_Get_MinimumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_Get_MinimumSet_Gen.json"
- }
- }
- },
- "put": {
- "tags": [
- "VolumeSnapshots"
- ],
- "operationId": "VolumeSnapshots_CreateOrUpdate",
- "description": "Create a VolumeSnapshot",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeSnapshotName",
- "in": "path",
- "required": true,
- "description": "Volume Snapshot Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "resource",
- "in": "body",
- "required": true,
- "description": "Resource create parameters.",
- "schema": {
- "$ref": "#/definitions/VolumeSnapshot"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/VolumeSnapshot"
- }
- },
- "201": {
- "description": "ARM create operation completed successfully.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- }
- },
- "schema": {
- "$ref": "#/definitions/VolumeSnapshot"
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json"
- },
- "VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "azure-async-operation"
- },
- "x-ms-long-running-operation": true
- },
- "delete": {
- "tags": [
- "VolumeSnapshots"
- ],
- "operationId": "VolumeSnapshots_Delete",
- "description": "Delete a VolumeSnapshot",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeSnapshotName",
- "in": "path",
- "required": true,
- "description": "Volume Snapshot Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- }
- ],
- "responses": {
- "200": {
- "description": "Resource deleted successfully."
- },
- "202": {
- "description": "Resource deletion accepted.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- },
- "Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
- }
- }
- },
- "204": {
- "description": "Resource deleted successfully."
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "VolumeSnapshots_Delete_MaximumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_Delete_MaximumSet_Gen.json"
- },
- "VolumeSnapshots_Delete_MinimumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_Delete_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "location"
- },
- "x-ms-long-running-operation": true
- },
- "patch": {
- "tags": [
- "VolumeSnapshots"
- ],
- "operationId": "VolumeSnapshots_Update",
- "description": "Update a VolumeSnapshot",
- "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": "poolName",
- "in": "path",
- "required": true,
- "description": "Pool Object",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "volumeSnapshotName",
- "in": "path",
- "required": true,
- "description": "Volume Snapshot Resource",
- "type": "string",
- "pattern": "^[a-zA-Z0-9-]{3,24}$"
- },
- {
- "name": "properties",
- "in": "body",
- "required": true,
- "description": "The resource properties to be updated.",
- "schema": {
- "$ref": "#/definitions/VolumeSnapshotUpdate"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "ARM operation completed successfully.",
- "schema": {
- "$ref": "#/definitions/VolumeSnapshot"
- }
- },
- "202": {
- "description": "Resource update request accepted.",
- "headers": {
- "Retry-After": {
- "description": "The Retry-After header can indicate how long the client should wait before polling the operation status.",
- "type": "integer",
- "format": "int32"
- },
- "Location": {
- "description": "The Location header contains the URL where the status of the long running operation can be checked.",
- "type": "string"
- }
- }
- },
- "default": {
- "description": "An unexpected error response.",
- "schema": {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
- }
- }
- },
- "x-ms-examples": {
- "VolumeSnapshots_Update_MaximumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_Update_MaximumSet_Gen.json"
- },
- "VolumeSnapshots_Update_MinimumSet_Gen": {
- "$ref": "./examples/VolumeSnapshots_Update_MinimumSet_Gen.json"
- }
- },
- "x-ms-long-running-operation-options": {
- "final-state-via": "azure-async-operation"
- },
- "x-ms-long-running-operation": true
- }
- }
- },
- "definitions": {
- "AccessMode": {
- "type": "string",
- "description": "Access mode",
- "enum": [
- "ReadWriteOnce",
- "ReadOnlyMany",
- "ReadWriteMany",
- "ReadWriteOncePod"
- ],
- "x-ms-enum": {
- "name": "AccessMode",
- "modelAsString": true,
- "values": [
- {
- "name": "ReadWriteOnce",
- "value": "ReadWriteOnce",
- "description": "Read Write Once"
- },
- {
- "name": "ReadOnlyMany",
- "value": "ReadOnlyMany",
- "description": "Read Only Many"
- },
- {
- "name": "ReadWriteMany",
- "value": "ReadWriteMany",
- "description": "Read Write Many"
- },
- {
- "name": "ReadWriteOncePod",
- "value": "ReadWriteOncePod",
- "description": "Shared Read Write Once Pod"
- }
- ]
- }
- },
- "AccountTier": {
- "type": "string",
- "description": "Account Tier",
- "enum": [
- "Invalid",
- "Standard",
- "Premium",
- "Ultra"
- ],
- "x-ms-enum": {
- "name": "AccountTier",
- "modelAsString": true,
- "values": [
- {
- "name": "Invalid",
- "value": "Invalid",
- "description": "Invalid Account Tier"
- },
- {
- "name": "Standard",
- "value": "Standard",
- "description": "Standard Tier"
- },
- {
- "name": "Premium",
- "value": "Premium",
- "description": "Premium Tier"
- },
- {
- "name": "Ultra",
- "value": "Ultra",
- "description": "Ultra Tier"
- }
- ]
- }
- },
- "Action": {
- "type": "string",
- "description": "Action Enum",
- "enum": [
- "Deny",
- "Allow"
- ],
- "x-ms-enum": {
- "name": "Action",
- "modelAsString": true,
- "values": [
- {
- "name": "Deny",
- "value": "Deny",
- "description": "Deny Action"
- },
- {
- "name": "Allow",
- "value": "Allow",
- "description": "Allow Action"
- }
- ]
- }
- },
- "DiskPoolProperties": {
- "type": "object",
- "properties": {
- "csiParams": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "List of KV pairs to set in StorageClass to configure CSI driver.",
- "x-typespec-name": "Record"
- },
- "maxVolumeCapacityGiB": {
- "type": "integer",
- "format": "int64",
- "description": "Maximum capacity of the volumes in GiB the user intends to create. Default 512.",
- "default": 512
- },
- "disks": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
- "x-typespec-name": "string[]"
- }
- },
- "description": "Disk Pool Properties"
- },
- "DiskProperties": {
- "type": "object",
- "properties": {
- "resourceId": {
- "type": "string",
- "description": "Reference to Managed Disk"
- },
- "wwn": {
- "type": "string",
- "description": "Manufacturer Disk ID"
- },
- "capacityGiB": {
- "type": "integer",
- "format": "int64",
- "description": "Capacity of disk in GiB"
- },
- "diskType": {
- "$ref": "#/definitions/DiskType",
- "description": "Type of disk"
- },
- "displayName": {
- "type": "string",
- "description": "SKU or Manufacturer type/name"
- },
- "nodeName": {
- "type": "string",
- "description": "Name of the node disk is attached on"
- },
- "devicePath": {
- "type": "string",
- "description": "Used to import SSD to discover WWN"
- }
- },
- "description": "Disk Properties Model",
- "required": [
- "resourceId",
- "wwn",
- "capacityGiB",
- "diskType",
- "displayName",
- "nodeName",
- "devicePath"
- ]
- },
- "DiskType": {
- "type": "string",
- "description": "Disk Type",
- "enum": [
- "Local",
- "Managed"
- ],
- "x-ms-enum": {
- "name": "DiskType",
- "modelAsString": true,
- "values": [
- {
- "name": "Local",
- "value": "Local",
- "description": "Local Disk Type"
- },
- {
- "name": "Managed",
- "value": "Managed",
- "description": "Managed Disk Type"
- }
- ]
- }
- },
- "ElasticSanPoolProperties": {
- "type": "object",
- "properties": {
- "sanName": {
- "type": "string",
- "description": "Name of an existing SAN."
- },
- "resourceGroup": {
- "type": "string",
- "description": "Resource group of an existing SAN."
- },
- "volumeGroup": {
- "type": "string",
- "description": "Volume group of an existing SAN."
- }
- },
- "description": "Elastic San Pool Properties",
- "required": [
- "sanName",
- "resourceGroup",
- "volumeGroup"
- ]
- },
- "ElasticSanPoolPropertiesUpdate": {
- "type": "object",
- "properties": {
- "sanName": {
- "type": "string",
- "description": "Name of an existing SAN."
- },
- "resourceGroup": {
- "type": "string",
- "description": "Resource group of an existing SAN."
- },
- "volumeGroup": {
- "type": "string",
- "description": "Volume group of an existing SAN."
- }
- },
- "description": "Elastic San Pool Properties"
- },
- "EncryptionType": {
- "type": "string",
- "description": "Encryption Type",
- "enum": [
- "EncryptionAtRestWithPlatformKey"
- ],
- "x-ms-enum": {
- "name": "EncryptionType",
- "modelAsString": true,
- "values": [
- {
- "name": "EncryptionAtRestWithPlatformKey",
- "value": "EncryptionAtRestWithPlatformKey",
- "description": "Encryption at rest with platform key"
- }
- ]
- }
- },
- "EphemeralPoolProperties": {
- "type": "object",
- "properties": {
- "diskSelector": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Template name or KV pairs containing disk selection criteria, e.g. model=\"Microsoft NVMe Direct Disk\" to match all Lsv2 NVMe disks.",
- "x-typespec-name": "string[]"
- },
- "disks": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
- "x-typespec-name": "string[]"
- },
- "diskFormat": {
- "type": "boolean",
- "description": "Consent to format the local disks.",
- "default": false
- }
- },
- "description": "Ephemeral Pool Properties",
- "required": [
- "diskSelector",
- "disks"
- ]
- },
- "EphemeralPoolPropertiesUpdate": {
- "type": "object",
- "properties": {
- "diskSelector": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Template name or KV pairs containing disk selection criteria, e.g. model=\"Microsoft NVMe Direct Disk\" to match all Lsv2 NVMe disks.",
- "x-typespec-name": "string[]"
- },
- "disks": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
- "x-typespec-name": "string[]"
- },
- "diskFormat": {
- "type": "boolean",
- "description": "Consent to format the local disks.",
- "default": false
- }
- },
- "description": "Ephemeral Pool Properties"
- },
- "ManagedPoolProperties": {
- "type": "object",
- "properties": {},
- "description": "Managed Pool Properties"
- },
- "NetworkRuleSet": {
- "type": "object",
- "properties": {
- "defaultAction": {
- "$ref": "#/definitions/Action",
- "description": "Default action"
- },
- "virtualNetworkRules": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/VirtualNetworkRule"
- },
- "description": "Virtual network rules",
- "x-typespec-name": "VirtualNetworkRule[]"
- }
- },
- "description": "Network Rule Set definition",
- "required": [
- "defaultAction",
- "virtualNetworkRules"
- ]
- },
- "PlacementProperties": {
- "type": "object",
- "properties": {
- "affinityLabelSelector": {
- "type": "string",
- "description": "Affinity label selector"
- },
- "antiAffinityLabelSelector": {
- "type": "string",
- "description": "Anti affinity label selector"
- },
- "whenUnsatisfiable": {
- "$ref": "#/definitions/WhenUnsatisfiable",
- "description": "When unsatisfiable"
- }
- },
- "description": "Placement Properties Model",
- "required": [
- "affinityLabelSelector",
- "antiAffinityLabelSelector",
- "whenUnsatisfiable"
- ]
- },
- "Pool": {
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "#/definitions/PoolProperties",
- "description": "The resource-specific properties for this resource.",
- "x-ms-client-flatten": true,
- "x-ms-mutability": [
- "read",
- "create"
- ]
- }
- },
- "description": "Pool resource",
- "allOf": [
- {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
- }
- ]
- },
- "PoolListResult": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Pool"
- },
- "description": "The Pool items on this page",
- "x-typespec-name": "Pool[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "The response of a Pool list operation.",
- "required": [
- "value"
- ]
- },
- "PoolProperties": {
- "type": "object",
- "properties": {
- "provisioningState": {
- "$ref": "#/definitions/ProvisioningState",
- "description": "The status of the last operation.",
- "readOnly": true
- },
- "poolType": {
- "$ref": "#/definitions/PoolType",
- "description": "Type of the Pool: ephemeral, disk, managed, or elasticsan."
- },
- "zones": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of availability zones that resources can be created in.",
- "x-typespec-name": "string[]"
- },
- "poolCapacityGiB": {
- "type": "integer",
- "format": "int64",
- "description": "Initial capacity of the pool in GiB."
- },
- "assignments": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For portable there can be many.",
- "x-typespec-name": "string[]"
- },
- "ephemeralPoolProperties": {
- "$ref": "#/definitions/EphemeralPoolProperties",
- "description": "Ephemeral Pool Properties"
- },
- "diskPoolProperties": {
- "$ref": "#/definitions/DiskPoolProperties",
- "description": "Disk Pool Properties"
- },
- "elasticSanPoolProperties": {
- "$ref": "#/definitions/ElasticSanPoolProperties",
- "description": "Elastic San Pool Properties"
- }
- },
- "description": "Pool Properties",
- "required": [
- "poolType",
- "zones",
- "poolCapacityGiB",
- "assignments",
- "elasticSanPoolProperties"
- ]
- },
- "PoolType": {
- "type": "number",
- "description": "Pool Type",
- "enum": [
- 1,
- 2,
- 3,
- 4
- ],
- "x-ms-enum": {
- "name": "PoolType",
- "modelAsString": true,
- "values": [
- {
- "name": "Ephemeral",
- "value": 1,
- "description": "Ephemeral Pool"
- },
- {
- "name": "Disk",
- "value": 2,
- "description": "Disk Pool"
- },
- {
- "name": "Managed",
- "value": 3,
- "description": "Managed Pool"
- },
- {
- "name": "ElasticSan",
- "value": 4,
- "description": "ElasticSan Pool"
- }
- ]
- }
- },
- "PoolUpdate": {
- "type": "object",
- "properties": {
- "tags": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "Resource tags.",
- "x-typespec-name": "Record"
- },
- "properties": {
- "$ref": "#/definitions/PoolUpdateProperties",
- "x-ms-client-flatten": true
- }
- },
- "description": "The type used for update operations of the Pool."
- },
- "PoolUpdateProperties": {
- "type": "object",
- "properties": {
- "poolType": {
- "$ref": "#/definitions/PoolType",
- "description": "Type of the Pool: ephemeral, disk, managed, or elasticsan."
- },
- "zones": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of availability zones that resources can be created in.",
- "x-typespec-name": "string[]"
- },
- "poolCapacityGiB": {
- "type": "integer",
- "format": "int64",
- "description": "Initial capacity of the pool in GiB."
- },
- "assignments": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For portable there can be many.",
- "x-typespec-name": "string[]"
- },
- "ephemeralPoolProperties": {
- "$ref": "#/definitions/EphemeralPoolPropertiesUpdate",
- "description": "Ephemeral Pool Properties"
- },
- "diskPoolProperties": {
- "$ref": "#/definitions/DiskPoolProperties",
- "description": "Disk Pool Properties"
- },
- "elasticSanPoolProperties": {
- "$ref": "#/definitions/ElasticSanPoolPropertiesUpdate",
- "description": "Elastic San Pool Properties"
- }
- },
- "description": "The updatable properties of the Pool."
- },
- "ProtocolType": {
- "type": "string",
- "description": "Protocol Type",
- "enum": [
- "None",
- "iSCSI"
- ],
- "x-ms-enum": {
- "name": "ProtocolType",
- "modelAsString": true,
- "values": [
- {
- "name": "None",
- "value": "None",
- "description": "No Protocol"
- },
- {
- "name": "iSCSI",
- "value": "iSCSI",
- "description": "iSCSI protocol"
- }
- ]
- }
- },
- "ProvisioningState": {
- "type": "string",
- "description": "Provisioning state of the resource.",
- "enum": [
- "Succeeded",
- "Failed",
- "Canceled",
- "Provisioning",
- "Updating",
- "Deleting",
- "Accepted"
- ],
- "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": "Provisioning",
- "value": "Provisioning",
- "description": "The resource is being provisioned"
- },
- {
- "name": "Updating",
- "value": "Updating",
- "description": "The resource is updating"
- },
- {
- "name": "Deleting",
- "value": "Deleting",
- "description": "The resource is being deleted"
- },
- {
- "name": "Accepted",
- "value": "Accepted",
- "description": "The resource create request has been accepted"
- }
- ]
- }
- },
- "ReclaimPolicy": {
- "type": "string",
- "description": "Reclaim Policy",
- "enum": [
- "Delete",
- "Retain"
- ],
- "x-ms-enum": {
- "name": "ReclaimPolicy",
- "modelAsString": true,
- "values": [
- {
- "name": "Delete",
- "value": "Delete",
- "description": "Delete resource"
- },
- {
- "name": "Retain",
- "value": "Retain",
- "description": "Retain resource"
- }
- ]
- }
- },
- "Sku": {
- "type": "object",
- "properties": {
- "name": {
- "$ref": "#/definitions/SkuName",
- "description": "Sku name"
- },
- "tier": {
- "$ref": "#/definitions/AccountTier",
- "description": "Sku Account Tier"
- }
- },
- "description": "Sku definition",
- "required": [
- "name",
- "tier"
- ]
- },
- "SkuName": {
- "type": "string",
- "description": "Sku Name enum type",
- "enum": [
- "Invalid",
- "Premium_LRS",
- "Premium_ZRS"
- ],
- "x-ms-enum": {
- "name": "SkuName",
- "modelAsString": true,
- "values": [
- {
- "name": "Invalid",
- "value": "Invalid",
- "description": "Invalid Sku"
- },
- {
- "name": "Premium_LRS",
- "value": "Premium_LRS",
- "description": "Premium_LRS Sku"
- },
- {
- "name": "Premium_ZRS",
- "value": "Premium_ZRS",
- "description": "Premium_ZRS Sku"
- }
- ]
- }
- },
- "VirtualNetworkRule": {
- "type": "object",
- "properties": {
- "action": {
- "$ref": "#/definitions/Action",
- "description": "Action of rule",
- "default": "Allow"
- },
- "id": {
- "type": "string",
- "description": "Id of rule"
- }
- },
- "description": "Virtual Network Rule definition",
- "required": [
- "id"
- ]
- },
- "Volume": {
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "#/definitions/VolumeProperties",
- "description": "The resource-specific properties for this resource.",
- "x-ms-client-flatten": true,
- "x-ms-mutability": [
- "read",
- "create"
- ]
- }
- },
- "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
- "allOf": [
- {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
- }
- ]
- },
- "VolumeBindingMode": {
- "type": "string",
- "description": "Volume binding mode",
- "enum": [
- "Immediate",
- "WaitFirstForCustomer"
- ],
- "x-ms-enum": {
- "name": "VolumeBindingMode",
- "modelAsString": true,
- "values": [
- {
- "name": "Immediate",
- "value": "Immediate",
- "description": "Immediate binding"
- },
- {
- "name": "WaitFirstForCustomer",
- "value": "WaitFirstForCustomer",
- "description": "Wait for customer to bind"
- }
- ]
- }
- },
- "VolumeListResult": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Volume"
- },
- "description": "The Volume items on this page",
- "x-typespec-name": "Volume[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "The response of a Volume list operation.",
- "required": [
- "value"
- ]
- },
- "VolumeMode": {
- "type": "string",
- "description": "Storage volume mode",
- "enum": [
- "Filesystem",
- "Raw"
- ],
- "x-ms-enum": {
- "name": "VolumeMode",
- "modelAsString": true,
- "values": [
- {
- "name": "Filesystem",
- "value": "Filesystem",
- "description": "FileSystem volume mode"
- },
- {
- "name": "Raw",
- "value": "Raw",
- "description": "Raw volume mode"
- }
- ]
- }
- },
- "VolumeProperties": {
- "type": "object",
- "properties": {
- "provisioningState": {
- "$ref": "#/definitions/ProvisioningState",
- "description": "The status of the last operation.",
- "readOnly": true
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "String KV pairs indicating labels",
- "x-typespec-name": "Record"
- },
- "capacityGiB": {
- "type": "integer",
- "format": "int64",
- "description": "Requested capacity in GiB"
- },
- "volumeMode": {
- "$ref": "#/definitions/VolumeMode",
- "description": "Indicates how the volume should be attached"
- },
- "reclaimPolicy": {
- "$ref": "#/definitions/ReclaimPolicy",
- "description": "Reclaim Policy, Delete or Retain"
- },
- "mountOptions": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of string mount options",
- "x-typespec-name": "string[]"
- }
- },
- "description": "Volume Properties",
- "required": [
- "labels",
- "capacityGiB",
- "volumeMode",
- "reclaimPolicy",
- "mountOptions"
- ]
- },
- "VolumeSnapshot": {
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "#/definitions/VolumeSnapshotProperties",
- "description": "The resource-specific properties for this resource.",
- "x-ms-client-flatten": true,
- "x-ms-mutability": [
- "read",
- "create"
- ]
- }
- },
- "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
- "allOf": [
- {
- "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
- }
- ]
- },
- "VolumeSnapshotListResult": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/VolumeSnapshot"
- },
- "description": "The VolumeSnapshot items on this page",
- "x-typespec-name": "VolumeSnapshot[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "The response of a VolumeSnapshot list operation.",
- "required": [
- "value"
- ]
- },
- "VolumeSnapshotProperties": {
- "type": "object",
- "properties": {
- "provisioningState": {
- "$ref": "#/definitions/ProvisioningState",
- "description": "The status of the last operation.",
- "readOnly": true
- },
- "source": {
- "type": "string",
- "description": "Reference to the source volume"
- },
- "volumeMode": {
- "$ref": "#/definitions/VolumeMode",
- "description": "Indicates how the volumes created from the snapshot should be attached"
- },
- "reclaimPolicy": {
- "$ref": "#/definitions/ReclaimPolicy",
- "description": "Reclaim Policy, Delete or Retain"
- },
- "mountOptions": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of string mount options",
- "x-typespec-name": "string[]"
- }
- },
- "description": "Volume Snapshot Properties",
- "required": [
- "source",
- "volumeMode",
- "reclaimPolicy",
- "mountOptions"
- ]
- },
- "VolumeSnapshotUpdate": {
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "#/definitions/VolumeSnapshotUpdateProperties",
- "x-ms-client-flatten": true
- }
- },
- "description": "The type used for update operations of the VolumeSnapshot."
- },
- "VolumeSnapshotUpdateProperties": {
- "type": "object",
- "properties": {
- "source": {
- "type": "string",
- "description": "Reference to the source volume"
- },
- "volumeMode": {
- "$ref": "#/definitions/VolumeMode",
- "description": "Indicates how the volumes created from the snapshot should be attached"
- },
- "reclaimPolicy": {
- "$ref": "#/definitions/ReclaimPolicy",
- "description": "Reclaim Policy, Delete or Retain"
- },
- "mountOptions": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of string mount options",
- "x-typespec-name": "string[]"
- }
- },
- "description": "The updatable properties of the VolumeSnapshot."
- },
- "VolumeUpdate": {
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "#/definitions/VolumeUpdateProperties",
- "x-ms-client-flatten": true
- }
- },
- "description": "The type used for update operations of the Volume."
- },
- "VolumeUpdateProperties": {
- "type": "object",
- "properties": {
- "labels": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "String KV pairs indicating labels",
- "x-typespec-name": "Record"
- },
- "capacityGiB": {
- "type": "integer",
- "format": "int64",
- "description": "Requested capacity in GiB"
- },
- "volumeMode": {
- "$ref": "#/definitions/VolumeMode",
- "description": "Indicates how the volume should be attached"
- },
- "reclaimPolicy": {
- "$ref": "#/definitions/ReclaimPolicy",
- "description": "Reclaim Policy, Delete or Retain"
- },
- "mountOptions": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of string mount options",
- "x-typespec-name": "string[]"
- }
- },
- "description": "The updatable properties of the Volume."
- },
- "WhenUnsatisfiable": {
- "type": "string",
- "description": "When request unsatisfiable",
- "enum": [
- "DoNotSchedule",
- "ScheduleAnyway"
- ],
- "x-ms-enum": {
- "name": "WhenUnsatisfiable",
- "modelAsString": true,
- "values": [
- {
- "name": "DoNotSchedule",
- "value": "DoNotSchedule",
- "description": "Do not schedule"
- },
- {
- "name": "ScheduleAnyway",
- "value": "ScheduleAnyway",
- "description": "Schedule anyway"
- }
- ]
- }
- }
- },
- "parameters": {}
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Operations_List_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Operations_List_MaximumSet_Gen.json
deleted file mode 100644
index e53c3a0372b3..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Operations_List_MaximumSet_Gen.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "title": "Operations_List_MaximumSet_Gen",
- "operationId": "Operations_List",
- "parameters": {
- "api-version": "2023-03-01-preview"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "name": "owtamtreuhzeozjyrtuzzzy",
- "isDataAction": true,
- "display": {
- "provider": "qbrtf",
- "resource": "lfvgfkoojojdmh",
- "operation": "hvhshxzzfqahja",
- "description": "ahsrxzaeoioiwywbzljjpyrrw"
- },
- "origin": "user",
- "actionType": "Internal"
- }
- ],
- "nextLink": "tgimrrxavadttwluarmurs"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Operations_List_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Operations_List_MinimumSet_Gen.json
deleted file mode 100644
index 89c6cd2706db..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Operations_List_MinimumSet_Gen.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "title": "Operations_List_MinimumSet_Gen",
- "operationId": "Operations_List",
- "parameters": {
- "api-version": "2023-03-01-preview"
- },
- "responses": {
- "200": {
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_CreateOrUpdate_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_CreateOrUpdate_MaximumSet_Gen.json
deleted file mode 100644
index da8c653a6e8f..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_CreateOrUpdate_MaximumSet_Gen.json
+++ /dev/null
@@ -1,161 +0,0 @@
-{
- "title": "Pools_CreateOrUpdate_MaximumSet_Gen",
- "operationId": "Pools_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-EXNI2WK48",
- "resource": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct"
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_CreateOrUpdate_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_CreateOrUpdate_MinimumSet_Gen.json
deleted file mode 100644
index 7cc22949265c..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_CreateOrUpdate_MinimumSet_Gen.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
- "title": "Pools_CreateOrUpdate_MinimumSet_Gen",
- "operationId": "Pools_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "J873cXX1w3sIX",
- "resource": {
- "location": "jdfanwoyiigytvanvct"
- }
- },
- "responses": {
- "200": {
- "body": {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Delete_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Delete_MaximumSet_Gen.json
deleted file mode 100644
index 3e62b608d59d..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Delete_MaximumSet_Gen.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "title": "Pools_Delete_MaximumSet_Gen",
- "operationId": "Pools_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "u0E5"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Delete_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Delete_MinimumSet_Gen.json
deleted file mode 100644
index 8172451478e1..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Delete_MinimumSet_Gen.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "title": "Pools_Delete_MinimumSet_Gen",
- "operationId": "Pools_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "HOL3KPOM7242-P-I--KH9E43"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Get_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Get_MaximumSet_Gen.json
deleted file mode 100644
index 93954f9702f4..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Get_MaximumSet_Gen.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Pools_Get_MaximumSet_Gen",
- "operationId": "Pools_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "ht5ZGIN6x25loiC"
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Get_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Get_MinimumSet_Gen.json
deleted file mode 100644
index 674b4aa1db3e..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Get_MinimumSet_Gen.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "title": "Pools_Get_MinimumSet_Gen",
- "operationId": "Pools_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "V9-7SH6R6I"
- },
- "responses": {
- "200": {
- "body": {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListByResourceGroup_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListByResourceGroup_MaximumSet_Gen.json
deleted file mode 100644
index 23f8069b33d7..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListByResourceGroup_MaximumSet_Gen.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "title": "Pools_ListByResourceGroup_MaximumSet_Gen",
- "operationId": "Pools_ListByResourceGroup",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/agz"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListByResourceGroup_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListByResourceGroup_MinimumSet_Gen.json
deleted file mode 100644
index cf40c1732333..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListByResourceGroup_MinimumSet_Gen.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "title": "Pools_ListByResourceGroup_MinimumSet_Gen",
- "operationId": "Pools_ListByResourceGroup",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListBySubscription_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListBySubscription_MaximumSet_Gen.json
deleted file mode 100644
index 942af39b73eb..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListBySubscription_MaximumSet_Gen.json
+++ /dev/null
@@ -1,68 +0,0 @@
-{
- "title": "Pools_ListBySubscription_MaximumSet_Gen",
- "operationId": "Pools_ListBySubscription",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "mzjpggkkungkugtucivmxfjnxmzdj"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "qvheujgnqksryltqtkjty"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "nvpe"
- ],
- "disks": [
- "zokpazvsbrjvkwhsss"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "gu",
- "resourceGroup": "bjdqfuspbvlgkhsyt",
- "volumeGroup": "csbzebtsmcnhxzqp"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/agz"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListBySubscription_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListBySubscription_MinimumSet_Gen.json
deleted file mode 100644
index 6e9b0d02391f..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_ListBySubscription_MinimumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "Pools_ListBySubscription_MinimumSet_Gen",
- "operationId": "Pools_ListBySubscription",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "location": "jdfanwoyiigytvanvct",
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Update_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Update_MaximumSet_Gen.json
deleted file mode 100644
index 7c18742fa7c4..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Update_MaximumSet_Gen.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
- "title": "Pools_Update_MaximumSet_Gen",
- "operationId": "Pools_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "Y-PF",
- "properties": {
- "tags": {
- "key7084": "iptnkecjrxqvxsrdytkdkpkmb"
- },
- "properties": {
- "poolType": 26,
- "zones": [
- "puufhsusjhvxxqww"
- ],
- "poolCapacityGiB": 12,
- "assignments": [
- "wmagvstbeupzrzfzioso"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "yfjqysccjrjyiylgfkwhe"
- ],
- "disks": [
- "vkkxfajasnwnynjrjtpluipqnizjy"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "uukitjcvismzmxhr",
- "resourceGroup": "myerdtpqquqjsejb",
- "volumeGroup": "vtxfikamxvskohdi"
- }
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "poolType": 26,
- "zones": [
- "puufhsusjhvxxqww"
- ],
- "poolCapacityGiB": 23,
- "assignments": [
- "wmagvstbeupzrzfzioso"
- ],
- "ephemeralPoolProperties": {
- "diskSelector": [
- "yfjqysccjrjyiylgfkwhe"
- ],
- "disks": [
- "vkkxfajasnwnynjrjtpluipqnizjy"
- ],
- "diskFormat": true
- },
- "diskPoolProperties": {
- "csiParams": {
- "key3964": "og"
- },
- "maxVolumeCapacityGiB": 11,
- "disks": [
- "wtsj"
- ]
- },
- "elasticSanPoolProperties": {
- "sanName": "uukitjcvismzmxhr",
- "resourceGroup": "myerdtpqquqjsejb",
- "volumeGroup": "vtxfikamxvskohdi"
- }
- },
- "tags": {
- "key5598": "fxughwwqpqkvojkkuur"
- },
- "location": "jdfanwoyiigytvanvct",
- "id": "hlogqumrvefltsn",
- "name": "rgzqqcqrypwtqhgnvcdilsbquamov",
- "type": "hmoqufjwfhcusabczwclqewun",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Update_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Update_MinimumSet_Gen.json
deleted file mode 100644
index 7ddaaad611b4..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Pools_Update_MinimumSet_Gen.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "title": "Pools_Update_MinimumSet_Gen",
- "operationId": "Pools_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "Q996I753P5F5",
- "properties": {}
- },
- "responses": {
- "200": {
- "body": {
- "location": "jdfanwoyiigytvanvct"
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json
deleted file mode 100644
index b128c88a1c6b..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "title": "VolumeSnapshots_CreateOrUpdate_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-1Jk-",
- "volumeSnapshotName": "XBOVLQ-UDJ2n5kod886SN",
- "resource": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json
deleted file mode 100644
index 99f07b5eef4e..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "title": "VolumeSnapshots_CreateOrUpdate_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "E-sfxFA3nN-FcID851Rq-Q3u",
- "volumeSnapshotName": "CjG-k-K4nWgGVV3VL-jT-5",
- "resource": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Delete_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Delete_MaximumSet_Gen.json
deleted file mode 100644
index 206dd595910b..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Delete_MaximumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "VolumeSnapshots_Delete_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-5-35-2U2E-CSe9",
- "volumeSnapshotName": "CB-C-4X2EX-O2V-772h-6K"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Delete_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Delete_MinimumSet_Gen.json
deleted file mode 100644
index b7820acd076b..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Delete_MinimumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "VolumeSnapshots_Delete_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "CE2Gd-F5Qhn62C-dFQMNs",
- "volumeSnapshotName": "8-YF-X-38TN4kHcjy"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Get_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Get_MaximumSet_Gen.json
deleted file mode 100644
index a590b5877c5a..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Get_MaximumSet_Gen.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "title": "VolumeSnapshots_Get_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "3S1S67z-KE-50",
- "volumeSnapshotName": "dg0-7-W2F-6S7V5Rp"
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Get_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Get_MinimumSet_Gen.json
deleted file mode 100644
index 36f5b85a896f..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Get_MinimumSet_Gen.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "title": "VolumeSnapshots_Get_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "ORF7-4iM",
- "volumeSnapshotName": "U43AU9-"
- },
- "responses": {
- "200": {
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json
deleted file mode 100644
index 2fa27d2e19ee..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_ListByPool_MaximumSet_Gen.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "title": "VolumeSnapshots_ListByPool_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "67lG-rcl6-2Y57-i-5m"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "ozllffotmjyosqwx"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json
deleted file mode 100644
index c54cb25e5809..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_ListByPool_MinimumSet_Gen.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "title": "VolumeSnapshots_ListByPool_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "992M7a117-M2---l623E8"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Update_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Update_MaximumSet_Gen.json
deleted file mode 100644
index dff1a86c6ab2..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Update_MaximumSet_Gen.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "VolumeSnapshots_Update_MaximumSet_Gen",
- "operationId": "VolumeSnapshots_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "q--0-FXNOU",
- "volumeSnapshotName": "KP7A-",
- "properties": {
- "properties": {
- "source": "pwgidsdrmnfv",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "lxarajxhe"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "source": "oytmtfvq",
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "lxarajxhe"
- ]
- },
- "id": "vdihfxdstmkozaxfocgt",
- "name": "nvn",
- "type": "clomxhdbhsjjkb",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Update_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Update_MinimumSet_Gen.json
deleted file mode 100644
index babc9f61de2d..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/VolumeSnapshots_Update_MinimumSet_Gen.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "title": "VolumeSnapshots_Update_MinimumSet_Gen",
- "operationId": "VolumeSnapshots_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "kd2Zk6-IlA7B54LjVU",
- "volumeSnapshotName": "HVQX-F5-3-2t-YEJ",
- "properties": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json
deleted file mode 100644
index 30473334b607..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_CreateOrUpdate_MaximumSet_Gen.json
+++ /dev/null
@@ -1,84 +0,0 @@
-{
- "title": "Volumes_CreateOrUpdate_MaximumSet_Gen",
- "operationId": "Volumes_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "L-7Vr5xE3",
- "volumeName": "y4borPc1GHLej48W3",
- "resource": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json
deleted file mode 100644
index 8fc2234cdcd4..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_CreateOrUpdate_MinimumSet_Gen.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "title": "Volumes_CreateOrUpdate_MinimumSet_Gen",
- "operationId": "Volumes_CreateOrUpdate",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "-3-0",
- "volumeName": "q-r6KY54UA6G5TPSTL83",
- "resource": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "201": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- },
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Delete_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Delete_MaximumSet_Gen.json
deleted file mode 100644
index 10e11a79badb..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Delete_MaximumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "Volumes_Delete_MaximumSet_Gen",
- "operationId": "Volumes_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "PtV22-U-SY3zstj5",
- "volumeName": "mm9Sj-3"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Delete_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Delete_MinimumSet_Gen.json
deleted file mode 100644
index 7b2ac7125812..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Delete_MinimumSet_Gen.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "Volumes_Delete_MinimumSet_Gen",
- "operationId": "Volumes_Delete",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "2O4W",
- "volumeName": "563---P1-R"
- },
- "responses": {
- "200": {},
- "202": {
- "headers": {
- "location": "https://contoso.com/operationstatus"
- }
- },
- "204": {}
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Get_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Get_MaximumSet_Gen.json
deleted file mode 100644
index 1c01e849757c..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Get_MaximumSet_Gen.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "title": "Volumes_Get_MaximumSet_Gen",
- "operationId": "Volumes_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "Y3U--n-tTd-6Kw5f",
- "volumeName": "4-8-qQ-n271-"
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Get_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Get_MinimumSet_Gen.json
deleted file mode 100644
index e2839c28b331..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Get_MinimumSet_Gen.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "title": "Volumes_Get_MinimumSet_Gen",
- "operationId": "Volumes_Get",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "7o-47nN4H4F1",
- "volumeName": "27RG-gCepP4"
- },
- "responses": {
- "200": {
- "body": {}
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_ListByPool_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_ListByPool_MaximumSet_Gen.json
deleted file mode 100644
index 7487d67b53a9..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_ListByPool_MaximumSet_Gen.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "title": "Volumes_ListByPool_MaximumSet_Gen",
- "operationId": "Volumes_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "2-47N73-6-rr28og"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "bztwmyruogigzqnwzpnjxjo"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- ],
- "nextLink": "https://microsoft.com/a"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_ListByPool_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_ListByPool_MinimumSet_Gen.json
deleted file mode 100644
index ea5fd01f8bea..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_ListByPool_MinimumSet_Gen.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "title": "Volumes_ListByPool_MinimumSet_Gen",
- "operationId": "Volumes_ListByPool",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "22J6--48-c8-3F4XQ-u63ko5"
- },
- "responses": {
- "200": {
- "body": {
- "value": [
- {
- "id": "a"
- }
- ]
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Update_MaximumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Update_MaximumSet_Gen.json
deleted file mode 100644
index 198259734aea..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Update_MaximumSet_Gen.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Volumes_Update_MaximumSet_Gen",
- "operationId": "Volumes_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "THTW6Q-MdHA-uGSHBNW3-8c",
- "volumeName": "95c1b7n6v36-dU-",
- "properties": {
- "properties": {
- "labels": {
- "key1348": "rykxllqddzkapmyyatmcsjstsyq"
- },
- "capacityGiB": 22,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "oyqneisrwfzqkoiqrxz"
- ]
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "properties": {
- "provisioningState": "Succeeded",
- "labels": {
- "key6929": "cylq"
- },
- "capacityGiB": 4,
- "volumeMode": "Filesystem",
- "reclaimPolicy": "Delete",
- "mountOptions": [
- "oyqneisrwfzqkoiqrxz"
- ]
- },
- "id": "uhsbnbojqymtspvbxzzjoepbyhgr",
- "name": "qw",
- "type": "lkenytlijokfqtqconztfgk",
- "systemData": {
- "createdBy": "nvbhamonwl",
- "createdByType": "User",
- "createdAt": "2023-03-06T18:31:46.331Z",
- "lastModifiedBy": "phtpjykzjrkgahpazxqnrp",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2023-03-06T18:31:46.331Z"
- }
- }
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Update_MinimumSet_Gen.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Update_MinimumSet_Gen.json
deleted file mode 100644
index b70f14484ca3..000000000000
--- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-03-01-preview/examples/Volumes_Update_MinimumSet_Gen.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "title": "Volumes_Update_MinimumSet_Gen",
- "operationId": "Volumes_Update",
- "parameters": {
- "api-version": "2023-03-01-preview",
- "subscriptionId": "898F98EB-4EB4-4FDB-9B85-F53156F1B5ED",
- "resourceGroupName": "rgcontainerstorage",
- "poolName": "44NPG8P2DT-DH73S8",
- "volumeName": "7eHg-KG-4X-YLrHc-80-4-m",
- "properties": {}
- },
- "responses": {
- "200": {
- "body": {}
- },
- "202": {
- "headers": {
- "Azure-AsyncOperation": "https://contoso.com/operationstatus"
- }
- }
- }
-}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json
new file mode 100644
index 000000000000..9c95de1b7e94
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json
@@ -0,0 +1,1963 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure-ContainerStorageRP",
+ "version": "2023-07-01-preview",
+ "description": "Azure Container Storage Resource Provider 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": "Operations"
+ },
+ {
+ "name": "Pools"
+ },
+ {
+ "name": "Volumes"
+ },
+ {
+ "name": "Snapshots"
+ }
+ ],
+ "paths": {
+ "/providers/Microsoft.ContainerStorage/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": "ARM 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.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerStorage/pools": {
+ "get": {
+ "operationId": "Pools_ListBySubscription",
+ "tags": [
+ "Pools"
+ ],
+ "description": "List Pool 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": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/PoolListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Pools_ListBySubscription_AzureDisk": {
+ "$ref": "./examples/Pools_ListBySubscription_AzureDisk.json"
+ },
+ "Pools_ListBySubscription_ElasticSan": {
+ "$ref": "./examples/Pools_ListBySubscription_ElasticSan.json"
+ },
+ "Pools_ListBySubscription_Ephemeral": {
+ "$ref": "./examples/Pools_ListBySubscription_Ephemeral.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools": {
+ "get": {
+ "operationId": "Pools_ListByResourceGroup",
+ "tags": [
+ "Pools"
+ ],
+ "description": "List Pool 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": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/PoolListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Pools_ListByResourceGroup_AzureDisk": {
+ "$ref": "./examples/Pools_ListByResourceGroup_AzureDisk.json"
+ },
+ "Pools_ListByResourceGroup_ElasticSan": {
+ "$ref": "./examples/Pools_ListByResourceGroup_ElasticSan.json"
+ },
+ "Pools_ListByResourceGroup_Ephemeral": {
+ "$ref": "./examples/Pools_ListByResourceGroup_Ephemeral.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}": {
+ "get": {
+ "operationId": "Pools_Get",
+ "tags": [
+ "Pools"
+ ],
+ "description": "Get a Pool",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Pool"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Pools_Get_AzureDisk": {
+ "$ref": "./examples/Pools_Get_AzureDisk.json"
+ },
+ "Pools_Get_ElasticSan": {
+ "$ref": "./examples/Pools_Get_ElasticSan.json"
+ },
+ "Pools_Get_Ephemeral": {
+ "$ref": "./examples/Pools_Get_Ephemeral.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Pools_CreateOrUpdate",
+ "tags": [
+ "Pools"
+ ],
+ "description": "Create a Pool",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Pool"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM update operation completed successfully",
+ "schema": {
+ "$ref": "#/definitions/Pool"
+ }
+ },
+ "201": {
+ "description": "ARM create operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Pool"
+ },
+ "headers": {
+ "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": {
+ "Pools_CreateOrUpdate_AzureDisk": {
+ "$ref": "./examples/Pools_CreateOrUpdate_AzureDisk.json"
+ },
+ "Pools_CreateOrUpdate_ElasticSan": {
+ "$ref": "./examples/Pools_CreateOrUpdate_ElasticSan.json"
+ },
+ "Pools_CreateOrUpdate_Ephemeral": {
+ "$ref": "./examples/Pools_CreateOrUpdate_Ephemeral.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "Pools_Update",
+ "tags": [
+ "Pools"
+ ],
+ "description": "Update a Pool",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PoolUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Pool"
+ }
+ },
+ "202": {
+ "description": "Resource update request accepted.",
+ "headers": {
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Pools_Update_AzureDisk": {
+ "$ref": "./examples/Pools_Update_AzureDisk.json"
+ },
+ "Pools_Update_ElasticSan": {
+ "$ref": "./examples/Pools_Update_ElasticSan.json"
+ },
+ "Pools_Update_Ephemeral": {
+ "$ref": "./examples/Pools_Update_Ephemeral.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "Pools_Delete",
+ "tags": [
+ "Pools"
+ ],
+ "description": "Compliant create or update template/**",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource deleted successfully."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Pools_Delete": {
+ "$ref": "./examples/Pools_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/snapshots": {
+ "get": {
+ "operationId": "Snapshots_ListByPool",
+ "tags": [
+ "Snapshots"
+ ],
+ "description": "List Snapshot resources by Pool",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SnapshotListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Snapshots_ListByPool": {
+ "$ref": "./examples/Snapshots_ListByPool.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/snapshots/{snapshotName}": {
+ "get": {
+ "operationId": "Snapshots_Get",
+ "tags": [
+ "Snapshots"
+ ],
+ "description": "Get a Snapshot",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "snapshotName",
+ "in": "path",
+ "description": "Volume Snapshot Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Snapshots_Get": {
+ "$ref": "./examples/Snapshots_Get.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Snapshots_CreateOrUpdate",
+ "tags": [
+ "Snapshots"
+ ],
+ "description": "Create a Snapshot",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "snapshotName",
+ "in": "path",
+ "description": "Volume Snapshot Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM update operation completed successfully",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "201": {
+ "description": "ARM create operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Snapshot"
+ },
+ "headers": {
+ "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": {
+ "Snapshots_CreateOrUpdate": {
+ "$ref": "./examples/Snapshots_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "Snapshots_Delete",
+ "tags": [
+ "Snapshots"
+ ],
+ "description": "Compliant create or update template/**",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "snapshotName",
+ "in": "path",
+ "description": "Volume Snapshot Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource deleted successfully."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Snapshots_Delete": {
+ "$ref": "./examples/Snapshots_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/volumes": {
+ "get": {
+ "operationId": "Volumes_ListByPool",
+ "tags": [
+ "Volumes"
+ ],
+ "description": "List Volume resources by Pool",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/VolumeListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Volumes_ListByPool": {
+ "$ref": "./examples/Volumes_ListByPool.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerStorage/pools/{poolName}/volumes/{volumeName}": {
+ "get": {
+ "operationId": "Volumes_Get",
+ "tags": [
+ "Volumes"
+ ],
+ "description": "Get a Volume",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "volumeName",
+ "in": "path",
+ "description": "Volume Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Volumes_Get": {
+ "$ref": "./examples/Volumes_Get.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Volumes_CreateOrUpdate",
+ "tags": [
+ "Volumes"
+ ],
+ "description": "Create a Volume",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "volumeName",
+ "in": "path",
+ "description": "Volume Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM update operation completed successfully",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "201": {
+ "description": "ARM create operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ },
+ "headers": {
+ "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": {
+ "Volumes_CreateOrUpdate": {
+ "$ref": "./examples/Volumes_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "Volumes_Update",
+ "tags": [
+ "Volumes"
+ ],
+ "description": "Update a Volume",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "volumeName",
+ "in": "path",
+ "description": "Volume Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VolumeUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "202": {
+ "description": "Resource update request accepted.",
+ "headers": {
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Volumes_Update": {
+ "$ref": "./examples/Volumes_Update.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "Volumes_Delete",
+ "tags": [
+ "Volumes"
+ ],
+ "description": "Compliant create or update template/**",
+ "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": "poolName",
+ "in": "path",
+ "description": "Pool Object",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ },
+ {
+ "name": "volumeName",
+ "in": "path",
+ "description": "Volume Resource",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource deleted successfully."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Volumes_Delete": {
+ "$ref": "./examples/Volumes_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "Assignment": {
+ "type": "object",
+ "description": "Assignment Properties",
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/AssignmentStatus",
+ "description": "Indicates if the assignment is in a usable state",
+ "readOnly": true
+ },
+ "id": {
+ "$ref": "#/definitions/AssignmentId",
+ "description": "Resource id for the assigned resource",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "AssignmentId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "A type definition that refers the id to an ARM resource.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.ContainerService/managedClusters"
+ }
+ ]
+ }
+ },
+ "AssignmentStatus": {
+ "type": "object",
+ "description": "Status of the assignment resource",
+ "properties": {
+ "state": {
+ "$ref": "#/definitions/AssignmentStatusState",
+ "description": "State of the assignment resource"
+ },
+ "message": {
+ "type": "string",
+ "description": "Reason for the status"
+ }
+ },
+ "required": [
+ "state"
+ ]
+ },
+ "AssignmentStatusState": {
+ "type": "string",
+ "description": "Status of the assignment resource",
+ "enum": [
+ "Assigning",
+ "Assigned",
+ "Unassigning",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "AssignmentStatusState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Assigning",
+ "value": "Assigning",
+ "description": "The assignment of the pool to the resource is in progress"
+ },
+ {
+ "name": "Assigned",
+ "value": "Assigned",
+ "description": "The assignment to the pool was successful."
+ },
+ {
+ "name": "Unassigning",
+ "value": "Unassigning",
+ "description": "The pool is being unassigned."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "The operation of assigning or unassigning the pool failed."
+ }
+ ]
+ }
+ },
+ "AzureDisk": {
+ "type": "object",
+ "description": "Azure Disk Pool Properties",
+ "properties": {
+ "resourceGroup": {
+ "type": "string",
+ "description": "Managed resource group for the pool.",
+ "readOnly": true
+ },
+ "skuName": {
+ "$ref": "#/definitions/AzureDiskSkuName",
+ "description": "Sku name",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "encryption": {
+ "$ref": "#/definitions/Encryption",
+ "description": "Encryption specifies the encryption configuration for the Azure Disk pool",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "disks": {
+ "type": "array",
+ "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
+ "items": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ }
+ },
+ "AzureDiskSkuName": {
+ "type": "string",
+ "description": "SKU of the underlying managed disk",
+ "enum": [
+ "Premium_LRS",
+ "Standard_LRS",
+ "StandardSSD_LRS",
+ "UltraSSD_LRS",
+ "Premium_ZRS",
+ "PremiumV2_LRS",
+ "StandardSSD_ZRS"
+ ],
+ "x-ms-enum": {
+ "name": "AzureDiskSkuName",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Premium_LRS",
+ "value": "Premium_LRS",
+ "description": "Premium_LRS SKU"
+ },
+ {
+ "name": "Standard_LRS",
+ "value": "Standard_LRS",
+ "description": "Standard_LRS SKU"
+ },
+ {
+ "name": "StandardSSD_LRS",
+ "value": "StandardSSD_LRS",
+ "description": "StandardSSD_LRS SKU"
+ },
+ {
+ "name": "UltraSSD_LRS",
+ "value": "UltraSSD_LRS",
+ "description": "UltraSSD_LRS SKU"
+ },
+ {
+ "name": "Premium_ZRS",
+ "value": "Premium_ZRS",
+ "description": "Premium_ZRS SKU"
+ },
+ {
+ "name": "PremiumV2_LRS",
+ "value": "PremiumV2_LRS",
+ "description": "PremiumV2_LRS SKU"
+ },
+ {
+ "name": "StandardSSD_ZRS",
+ "value": "StandardSSD_ZRS",
+ "description": "StandardSSD_ZRS SKU"
+ }
+ ]
+ }
+ },
+ "AzureDiskUpdate": {
+ "type": "object",
+ "description": "Azure Disk Pool Properties",
+ "properties": {
+ "disks": {
+ "type": "array",
+ "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
+ "items": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ }
+ },
+ "Disk": {
+ "type": "object",
+ "description": "Model for disk for that pool is using",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "ID is the disk identifier visible to the OS. It is typically the WWN or disk ID in formats such as eui.e8238fa6bf530001001b448b45263379 or 0x5002cf6cbc5dd460"
+ },
+ "reference": {
+ "type": "string",
+ "description": "Reference is the location of the disk in an external system."
+ }
+ },
+ "required": [
+ "id",
+ "reference"
+ ]
+ },
+ "DiskPoolProperties": {
+ "type": "object",
+ "description": "Properties shared between the azureDisk and ephemeralDisk",
+ "properties": {
+ "disks": {
+ "type": "array",
+ "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
+ "items": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ }
+ },
+ "ElasticSan": {
+ "type": "object",
+ "description": "Elastic San Pool Properties",
+ "properties": {
+ "resourceGroup": {
+ "type": "string",
+ "description": "Managed resource group for the pool.",
+ "readOnly": true
+ },
+ "skuName": {
+ "$ref": "#/definitions/ElasticSanSkuName",
+ "description": "Sku name",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "encryption": {
+ "$ref": "#/definitions/Encryption",
+ "description": "Encryption specifies the encryption configuration for the Azure Disk pool",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "ElasticSanSkuName": {
+ "type": "string",
+ "description": "ElasticSAN SKUs",
+ "enum": [
+ "Premium_LRS",
+ "Premium_ZRS"
+ ],
+ "x-ms-enum": {
+ "name": "ElasticSanSkuName",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Premium_LRS",
+ "value": "Premium_LRS",
+ "description": "Premium_LRS SKU"
+ },
+ {
+ "name": "Premium_ZRS",
+ "value": "Premium_ZRS",
+ "description": "Premium_ZRS SKU"
+ }
+ ]
+ }
+ },
+ "ElasticSanUpdate": {
+ "type": "object",
+ "description": "Elastic San Pool Properties",
+ "properties": {}
+ },
+ "ElasticSanVolumeProperties": {
+ "type": "object",
+ "description": "Properties of the ElasticSAN iSCSI target",
+ "properties": {
+ "targetIqn": {
+ "type": "string",
+ "description": "iSCSI Target IQN (iSCSI Qualified Name); example: \"iqn.2005-03.org.iscsi:server\""
+ },
+ "targetPortalHostname": {
+ "type": "string",
+ "description": "iSCSI Target Portal Host Name"
+ },
+ "targetPortalPort": {
+ "type": "integer",
+ "format": "int32",
+ "description": "iSCSI Target Portal Port"
+ }
+ },
+ "required": [
+ "targetIqn",
+ "targetPortalHostname",
+ "targetPortalPort"
+ ]
+ },
+ "Encryption": {
+ "type": "object",
+ "description": "Encryption key properties for the pool.",
+ "properties": {
+ "keyName": {
+ "type": "string",
+ "description": "The name of the key vault key."
+ },
+ "keyVaultUri": {
+ "type": "string",
+ "description": "The URI of the key vault."
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The managed service identities assigned to this resource."
+ }
+ },
+ "required": [
+ "keyName",
+ "keyVaultUri"
+ ]
+ },
+ "EphemeralDisk": {
+ "type": "object",
+ "description": "Ephemeral Disk Pool Properties",
+ "properties": {
+ "replicas": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The number of data copies. Default 3.",
+ "default": 3,
+ "minimum": 1,
+ "maximum": 3
+ },
+ "disks": {
+ "type": "array",
+ "description": "Only required if individual disk selection is desired. Path to disk, e.g. :/dev/sda or WWN. Supports specifying multiple disks (same syntax as tags).",
+ "items": {
+ "$ref": "#/definitions/Disk"
+ }
+ }
+ }
+ },
+ "Pool": {
+ "type": "object",
+ "description": "Pool resource",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PoolProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "PoolListResult": {
+ "type": "object",
+ "description": "The response of a Pool list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Pool items on this page",
+ "items": {
+ "$ref": "#/definitions/Pool"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "PoolProperties": {
+ "type": "object",
+ "description": "Pool Properties",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "The status of the last operation.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/ResourceOperationalStatus",
+ "description": "The operational status of the resource",
+ "readOnly": true
+ },
+ "zones": {
+ "type": "array",
+ "description": "List of availability zones that resources can be created in.",
+ "maxItems": 3,
+ "items": {
+ "$ref": "#/definitions/Zone"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "resources": {
+ "$ref": "#/definitions/Resources",
+ "description": "Resources represent the resources the pool should have."
+ },
+ "poolType": {
+ "$ref": "#/definitions/PoolType",
+ "description": "Type of the Pool: ephemeralDisk, azureDisk, or elasticsan."
+ },
+ "reclaimPolicy": {
+ "$ref": "#/definitions/ReclaimPolicy",
+ "description": "ReclaimPolicy defines what happens to the backend storage when StoragePool is deleted",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "assignments": {
+ "type": "array",
+ "description": "List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For ElasticSAN there can be many.",
+ "items": {
+ "$ref": "#/definitions/Assignment"
+ }
+ }
+ },
+ "required": [
+ "poolType"
+ ]
+ },
+ "PoolType": {
+ "type": "object",
+ "description": "Type of the Pool: ephemeralDisk, azureDisk, or elasticsan",
+ "properties": {
+ "azureDisk": {
+ "$ref": "#/definitions/AzureDisk",
+ "description": "Disk Pool Properties"
+ },
+ "elasticSan": {
+ "$ref": "#/definitions/ElasticSan",
+ "description": "Elastic San Pool Properties"
+ },
+ "ephemeralDisk": {
+ "$ref": "#/definitions/EphemeralDisk",
+ "description": "Ephemeral Pool Properties"
+ }
+ }
+ },
+ "PoolTypeUpdate": {
+ "type": "object",
+ "description": "Type of the Pool: ephemeralDisk, azureDisk, or elasticsan",
+ "properties": {
+ "azureDisk": {
+ "$ref": "#/definitions/AzureDiskUpdate",
+ "description": "Disk Pool Properties"
+ },
+ "elasticSan": {
+ "$ref": "#/definitions/ElasticSanUpdate",
+ "description": "Elastic San Pool Properties"
+ },
+ "ephemeralDisk": {
+ "$ref": "#/definitions/EphemeralDisk",
+ "description": "Ephemeral Pool Properties"
+ }
+ }
+ },
+ "PoolUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the Pool.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/PoolUpdateProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PoolUpdateProperties": {
+ "type": "object",
+ "description": "The updatable properties of the Pool.",
+ "properties": {
+ "resources": {
+ "$ref": "#/definitions/Resources",
+ "description": "Resources represent the resources the pool should have."
+ },
+ "poolType": {
+ "$ref": "#/definitions/PoolTypeUpdate",
+ "description": "Type of the Pool: ephemeralDisk, azureDisk, or elasticsan."
+ },
+ "assignments": {
+ "type": "array",
+ "description": "List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For ElasticSAN there can be many.",
+ "items": {
+ "$ref": "#/definitions/Assignment"
+ }
+ }
+ }
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the resource.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Updating",
+ "Deleting",
+ "Accepted"
+ ],
+ "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": "Provisioning",
+ "value": "Provisioning",
+ "description": "The resource is being provisioned"
+ },
+ {
+ "name": "Updating",
+ "value": "Updating",
+ "description": "The resource is updating"
+ },
+ {
+ "name": "Deleting",
+ "value": "Deleting",
+ "description": "The resource is being deleted"
+ },
+ {
+ "name": "Accepted",
+ "value": "Accepted",
+ "description": "The resource create request has been accepted"
+ }
+ ]
+ }
+ },
+ "ReclaimPolicy": {
+ "type": "string",
+ "description": "Reclaim policy",
+ "enum": [
+ "Delete",
+ "Retain"
+ ],
+ "x-ms-enum": {
+ "name": "ReclaimPolicy",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Delete",
+ "value": "Delete",
+ "description": "Delete resource"
+ },
+ {
+ "name": "Retain",
+ "value": "Retain",
+ "description": "Retain resource"
+ }
+ ]
+ }
+ },
+ "Requests": {
+ "type": "object",
+ "description": "Requests for capacity for the pool.",
+ "properties": {
+ "storage": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Requested capacity of the pool in GiB.",
+ "default": 1024,
+ "minimum": 1024,
+ "maximum": 65536
+ }
+ }
+ },
+ "ResourceOperationStatusState": {
+ "type": "string",
+ "description": "State of the resource.",
+ "enum": [
+ "Pending",
+ "Available",
+ "Unavailable"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceOperationStatusState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Pending",
+ "value": "Pending",
+ "description": "The resource is pending."
+ },
+ {
+ "name": "Available",
+ "value": "Available",
+ "description": "The resource is available."
+ },
+ {
+ "name": "Unavailable",
+ "value": "Unavailable",
+ "description": "The resource is unavailable."
+ }
+ ]
+ }
+ },
+ "ResourceOperationalStatus": {
+ "type": "object",
+ "description": "Status of the resource",
+ "properties": {
+ "state": {
+ "$ref": "#/definitions/ResourceOperationStatusState",
+ "description": "state of the resource"
+ },
+ "message": {
+ "type": "string",
+ "description": "Reason for state."
+ }
+ },
+ "required": [
+ "state"
+ ]
+ },
+ "Resources": {
+ "type": "object",
+ "description": "Resource Requests for the pool.",
+ "properties": {
+ "requests": {
+ "$ref": "#/definitions/Requests",
+ "description": "Requests for capacity for the pool."
+ }
+ }
+ },
+ "Snapshot": {
+ "type": "object",
+ "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SnapshotProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "SnapshotListResult": {
+ "type": "object",
+ "description": "The response of a Snapshot list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Snapshot items on this page",
+ "items": {
+ "$ref": "#/definitions/Snapshot"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "SnapshotProperties": {
+ "type": "object",
+ "description": "Volume Snapshot Properties",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "The status of the last operation.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/ResourceOperationalStatus",
+ "description": "The status of the resource.",
+ "readOnly": true
+ },
+ "source": {
+ "type": "string",
+ "description": "Reference to the source volume",
+ "minLength": 3,
+ "maxLength": 253,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "required": [
+ "source"
+ ]
+ },
+ "Volume": {
+ "type": "object",
+ "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/VolumeProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "VolumeListResult": {
+ "type": "object",
+ "description": "The response of a Volume list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Volume items on this page",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "VolumeProperties": {
+ "type": "object",
+ "description": "Volume Properties",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "The status of the last operation.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/ResourceOperationalStatus",
+ "description": "The status of the resource.",
+ "readOnly": true
+ },
+ "labels": {
+ "type": "object",
+ "description": "String KV pairs indicating labels",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "capacityGiB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Requested capacity in GiB",
+ "minimum": 1,
+ "maximum": 65536
+ },
+ "volumeType": {
+ "$ref": "#/definitions/VolumeType",
+ "description": "Properties of the volume",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "labels",
+ "capacityGiB"
+ ]
+ },
+ "VolumeType": {
+ "type": "object",
+ "description": "Properties of the volume",
+ "properties": {
+ "elasticSan": {
+ "$ref": "#/definitions/ElasticSanVolumeProperties",
+ "description": "Properties of the ElasticSAN iSCSI target",
+ "readOnly": true
+ }
+ }
+ },
+ "VolumeUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the Volume.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/VolumeUpdateProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "VolumeUpdateProperties": {
+ "type": "object",
+ "description": "The updatable properties of the Volume.",
+ "properties": {
+ "labels": {
+ "type": "object",
+ "description": "String KV pairs indicating labels",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "capacityGiB": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Requested capacity in GiB",
+ "minimum": 1,
+ "maximum": 65536
+ }
+ }
+ },
+ "Zone": {
+ "type": "string",
+ "description": "Availability Zones",
+ "enum": [
+ "1",
+ "2",
+ "3"
+ ],
+ "x-ms-enum": {
+ "name": "Zone",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Zone1",
+ "value": "1",
+ "description": "First availability zone."
+ },
+ {
+ "name": "Zone2",
+ "value": "2",
+ "description": "Second availability zone."
+ },
+ {
+ "name": "Zone3",
+ "value": "3",
+ "description": "Third availability zone."
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Operations_List.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Operations_List.json
new file mode 100644
index 000000000000..7d3686bd1631
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Operations_List.json
@@ -0,0 +1,28 @@
+{
+ "title": "Operations_List",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2023-07-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ContainerStorage/Volumes/Get",
+ "isDataAction": true,
+ "display": {
+ "provider": "Microsoft Container Storage",
+ "resource": "Operation",
+ "operation": "Get Operation",
+ "description": "Gets the status of an asynchronous operation"
+ },
+ "origin": "user",
+ "actionType": "Internal"
+ }
+ ],
+ "nextLink": "http://nextlink.contoso.com"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_AzureDisk.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_AzureDisk.json
new file mode 100644
index 000000000000..1183bd9ac3dd
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_AzureDisk.json
@@ -0,0 +1,205 @@
+{
+ "title": "Pools_CreateOrUpdate_AzureDisk",
+ "operationId": "Pools_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {}
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_ElasticSan.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_ElasticSan.json
new file mode 100644
index 000000000000..146393decfe8
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_ElasticSan.json
@@ -0,0 +1,193 @@
+{
+ "title": "Pools_CreateOrUpdate_ElasticSan",
+ "operationId": "Pools_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {}
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_Ephemeral.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_Ephemeral.json
new file mode 100644
index 000000000000..8dde161cb6f0
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_CreateOrUpdate_Ephemeral.json
@@ -0,0 +1,163 @@
+{
+ "title": "Pools_CreateOrUpdate_Ephemeral",
+ "operationId": "Pools_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Delete.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Delete.json
new file mode 100644
index 000000000000..275f44fdbbee
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Delete.json
@@ -0,0 +1,18 @@
+{
+ "title": "Pools_Delete",
+ "operationId": "Pools_Delete",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_AzureDisk.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_AzureDisk.json
new file mode 100644
index 000000000000..a6bdd67fa345
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_AzureDisk.json
@@ -0,0 +1,85 @@
+{
+ "title": "Pools_Get_AzureDisk",
+ "operationId": "Pools_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_ElasticSan.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_ElasticSan.json
new file mode 100644
index 000000000000..5ca01027d194
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_ElasticSan.json
@@ -0,0 +1,79 @@
+{
+ "title": "Pools_Get_ElasticSan",
+ "operationId": "Pools_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_Ephemeral.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_Ephemeral.json
new file mode 100644
index 000000000000..2302de06b726
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Get_Ephemeral.json
@@ -0,0 +1,69 @@
+{
+ "title": "Pools_Get_Ephemeral",
+ "operationId": "Pools_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_AzureDisk.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_AzureDisk.json
new file mode 100644
index 000000000000..f0cf491bff69
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_AzureDisk.json
@@ -0,0 +1,89 @@
+{
+ "title": "Pools_ListByResourceGroup_AzureDisk",
+ "operationId": "Pools_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_ElasticSan.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_ElasticSan.json
new file mode 100644
index 000000000000..2caf6097b23f
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_ElasticSan.json
@@ -0,0 +1,83 @@
+{
+ "title": "Pools_ListByResourceGroup_ElasticSan",
+ "operationId": "Pools_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_Ephemeral.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_Ephemeral.json
new file mode 100644
index 000000000000..f6964689b940
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListByResourceGroup_Ephemeral.json
@@ -0,0 +1,73 @@
+{
+ "title": "Pools_ListByResourceGroup_Ephemeral",
+ "operationId": "Pools_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_AzureDisk.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_AzureDisk.json
new file mode 100644
index 000000000000..77355ad0b4b7
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_AzureDisk.json
@@ -0,0 +1,88 @@
+{
+ "title": "Pools_ListBySubscription_AzureDisk",
+ "operationId": "Pools_ListBySubscription",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_ElasticSan.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_ElasticSan.json
new file mode 100644
index 000000000000..d60e1be2c0ad
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_ElasticSan.json
@@ -0,0 +1,82 @@
+{
+ "title": "Pools_ListBySubscription_ElasticSan",
+ "operationId": "Pools_ListBySubscription",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_Ephemeral.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_Ephemeral.json
new file mode 100644
index 000000000000..f9770f5d499c
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_ListBySubscription_Ephemeral.json
@@ -0,0 +1,72 @@
+{
+ "title": "Pools_ListBySubscription_Ephemeral",
+ "operationId": "Pools_ListBySubscription",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/as"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_AzureDisk.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_AzureDisk.json
new file mode 100644
index 000000000000..d0b19f06a1a6
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_AzureDisk.json
@@ -0,0 +1,114 @@
+{
+ "title": "Pools_Update_AzureDisk",
+ "operationId": "Pools_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "properties": {
+ "tags": {
+ "key7124": "value7124"
+ },
+ "properties": {
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {}
+ },
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "azureDisk": {
+ "resourceGroup": "test-rg2",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ },
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_ElasticSan.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_ElasticSan.json
new file mode 100644
index 000000000000..5cceffbef8ae
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_ElasticSan.json
@@ -0,0 +1,108 @@
+{
+ "title": "Pools_Update_ElasticSan",
+ "operationId": "Pools_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "properties": {
+ "tags": {
+ "key7124": "value7124"
+ },
+ "properties": {
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {}
+ },
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "elasticSan": {
+ "resourceGroup": "test-rg3",
+ "skuName": "Premium_LRS",
+ "encryption": {
+ "keyName": "test-key",
+ "keyVaultUri": "https://test-kv.vault.azure.net/",
+ "identity": {
+ "principalId": "14215384-6980-4e3c-8c58-c7738db7d34e",
+ "tenantId": "02cd8342-46ab-45d5-8cc4-2a80b9a90af5",
+ "type": "None",
+ "userAssignedIdentities": {
+ "key7678": {
+ "principalId": "6a6104be-65e4-48a8-919d-a88c1cd2a255",
+ "clientId": "5286d698-5b3d-4051-a280-2e4f20869426"
+ }
+ }
+ }
+ }
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_Ephemeral.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_Ephemeral.json
new file mode 100644
index 000000000000..76d4716247c3
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Pools_Update_Ephemeral.json
@@ -0,0 +1,100 @@
+{
+ "title": "Pools_Update_Ephemeral",
+ "operationId": "Pools_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "properties": {
+ "tags": {
+ "key7124": "value7124"
+ },
+ "properties": {
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3
+ }
+ },
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "zones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "resources": {
+ "requests": {
+ "storage": 15578
+ }
+ },
+ "poolType": {
+ "ephemeralDisk": {
+ "replicas": 3,
+ "disks": [
+ {
+ "id": "eui.e8238fa6bf530001001b448b45263379",
+ "reference": "/dev/sdk"
+ }
+ ]
+ }
+ },
+ "reclaimPolicy": "Delete",
+ "assignments": [
+ {
+ "status": {
+ "state": "Assigning",
+ "message": "The assignment of the pool to the resource is in progress"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerService/managedClusters/containerstoragetest"
+ }
+ ]
+ },
+ "tags": {
+ "key1888": "value1888"
+ },
+ "location": "eastus",
+ "name": "test-pool",
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool",
+ "type": "Microsoft.ContainerStorage/pools",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_CreateOrUpdate.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_CreateOrUpdate.json
new file mode 100644
index 000000000000..1e7d7b459e50
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_CreateOrUpdate.json
@@ -0,0 +1,72 @@
+{
+ "title": "Snapshots_CreateOrUpdate",
+ "operationId": "Snapshots_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "snapshotName": "test-snapshot",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_Delete.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_Delete.json
new file mode 100644
index 000000000000..6a517d277df0
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_Delete.json
@@ -0,0 +1,19 @@
+{
+ "title": "Snapshots_Delete",
+ "operationId": "Snapshots_Delete",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "snapshotName": "test-snapshot"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_Get.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_Get.json
new file mode 100644
index 000000000000..b31bb7d87c7d
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_Get.json
@@ -0,0 +1,36 @@
+{
+ "title": "Snapshots_Get",
+ "operationId": "Snapshots_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "snapshotName": "test-snapshot"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_ListByPool.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_ListByPool.json
new file mode 100644
index 000000000000..76ed8930f6ae
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Snapshots_ListByPool.json
@@ -0,0 +1,40 @@
+{
+ "title": "Snapshots_ListByPool",
+ "operationId": "Snapshots_ListByPool",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "source": "C0C6I6"
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/snapshots/test-snapshot",
+ "name": "test-snapshot",
+ "type": "Microsoft.ContainerStorage/pools/snapshots",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_CreateOrUpdate.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_CreateOrUpdate.json
new file mode 100644
index 000000000000..7b0d34b84e65
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_CreateOrUpdate.json
@@ -0,0 +1,95 @@
+{
+ "title": "Volumes_CreateOrUpdate",
+ "operationId": "Volumes_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume",
+ "resource": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user2",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "vyojfxtqmhxrdbmq",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Delete.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Delete.json
new file mode 100644
index 000000000000..4c681af48901
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Delete.json
@@ -0,0 +1,19 @@
+{
+ "title": "Volumes_Delete",
+ "operationId": "Volumes_Delete",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Get.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Get.json
new file mode 100644
index 000000000000..2b40410e7fd7
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Get.json
@@ -0,0 +1,46 @@
+{
+ "title": "Volumes_Get",
+ "operationId": "Volumes_Get",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_ListByPool.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_ListByPool.json
new file mode 100644
index 000000000000..bf58df418ed3
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_ListByPool.json
@@ -0,0 +1,50 @@
+{
+ "title": "Volumes_ListByPool",
+ "operationId": "Volumes_ListByPool",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Update.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Update.json
new file mode 100644
index 000000000000..1d801b4df88f
--- /dev/null
+++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/examples/Volumes_Update.json
@@ -0,0 +1,59 @@
+{
+ "title": "Volumes_Update",
+ "operationId": "Volumes_Update",
+ "parameters": {
+ "api-version": "2023-07-01-preview",
+ "subscriptionId": "bb4d87a2-4273-466c-a6ba-61d818061b3a",
+ "resourceGroupName": "test-rg",
+ "poolName": "test-pool",
+ "volumeName": "test-volume",
+ "properties": {
+ "properties": {
+ "labels": {
+ "key6684": "ssgphiygc"
+ },
+ "capacityGiB": 61986
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": {
+ "state": "Pending",
+ "message": "Operation is Pending"
+ },
+ "labels": {
+ "key2039": "value2039"
+ },
+ "capacityGiB": 25838,
+ "volumeType": {
+ "elasticSan": {
+ "targetIqn": "iqn.2027-01.net.windows.core.blob.ElasticSan.es-afdwfkuqnd28:test-volume",
+ "targetPortalHostname": "es-afdwfkuqnd28.z43.blob.storage.azure.net",
+ "targetPortalPort": 1826
+ }
+ }
+ },
+ "id": "/subscriptions/bb4d87a2-4273-466c-a6ba-61d818061b3a/resourceGroups/test-rg/providers/Microsoft.ContainerStorage/pools/test-pool/volumes/test-volume",
+ "name": "test-volume",
+ "type": "Microsoft.ContainerStorage/pools/volumes",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2023-07-17T21:48:26.401Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2023-07-17T21:48:26.401Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/containerstorage/resource-manager/readme.md b/specification/containerstorage/resource-manager/readme.md
index 83d171e466ec..c6bd1451bb64 100644
--- a/specification/containerstorage/resource-manager/readme.md
+++ b/specification/containerstorage/resource-manager/readme.md
@@ -23,16 +23,16 @@ These are the global settings for the containerstorage.
```yaml
openapi-type: arm
-tag: package-2023-03-01-preview
+tag: package-2023-07-01-preview
```
-### Tag: package-2023-03-01-preview
+### Tag: package-2023-07-01-preview
-These settings apply only when `--tag=package-2023-03-01-preview` is specified on the command line.
+These settings apply only when `--tag=package-2023-07-01-preview` is specified on the command line.
-```yaml $(tag) == 'package-2023-03-01-preview'
+```yaml $(tag) == 'package-2023-07-01-preview'
input-file:
- - Microsoft.ContainerStorage/preview/2023-03-01-preview/containerstorage.json
+ - Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json
```
---
diff --git a/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp b/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp
index d72c0506ebdd..45bebf834f68 100644
--- a/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp
+++ b/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp
@@ -9,21 +9,23 @@ using TypeSpec.Rest;
using TypeSpec.Versioning;
using Azure.Core;
+@useAuth(AadOauth2Auth<["https://contoso.azure.com/.default"]>)
@service({
title: "Contoso Widget Manager",
})
@versioned(Contoso.WidgetManager.Versions)
namespace Azure.Contoso.WidgetManager;
-#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107"
+@doc("Versions info.")
enum Versions {
+ @doc("The 2022-11-01-preview version.")
@useDependency(Azure.Core.Versions.v1_0_Preview_1)
v2022_11_01_Preview: "2022-11-01-preview",
}
@doc("A widget.")
@resource("widgets")
-model Widget {
+model WidgetSuite {
@key("widgetName")
@doc("The widget name.")
@visibility("read")
@@ -38,22 +40,22 @@ model Widget {
interface Widgets {
@doc("Fetch a Widget by name.")
- getWidget is ResourceRead;
+ getWidget is ResourceRead;
@doc("Gets status of a Widget operation.")
- getWidgetOperationStatus is GetResourceOperationStatus;
+ getWidgetOperationStatus is GetResourceOperationStatus;
@doc("Creates or updates a Widget asynchronously.")
@pollingOperation(Widgets.getWidgetOperationStatus)
- createOrUpdateWidget is LongRunningResourceCreateOrUpdate;
+ createOrUpdateWidget is LongRunningResourceCreateOrUpdate;
@doc("Delete a Widget asynchronously.")
@pollingOperation(Widgets.getWidgetOperationStatus)
- deleteWidget is LongRunningResourceDelete;
+ deleteWidget is LongRunningResourceDelete;
@doc("List Widget resources")
listWidgets is ResourceList<
- Widget,
+ WidgetSuite,
{
parameters: StandardListQueryParameters;
}
diff --git a/specification/contosowidgetmanager/Contoso.WidgetManager/tspconfig.yaml b/specification/contosowidgetmanager/Contoso.WidgetManager/tspconfig.yaml
index aeb43995f6ee..40b6e2c8b124 100644
--- a/specification/contosowidgetmanager/Contoso.WidgetManager/tspconfig.yaml
+++ b/specification/contosowidgetmanager/Contoso.WidgetManager/tspconfig.yaml
@@ -18,7 +18,7 @@ options:
package-mode: "dataplane"
package-name: "{package-dir}"
"@azure-tools/typespec-csharp":
- package-dir: "Azure.Contoso.WidgetManager"
+ package-dir: "Azure.Template.Contoso"
clear-output-folder: true
model-namespace: false
namespace: "{package-dir}"
diff --git a/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json b/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json
index 5500a93118d1..aca1698b9abb 100644
--- a/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json
+++ b/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json
@@ -18,6 +18,25 @@
"consumes": [
"application/json"
],
+ "security": [
+ {
+ "AadOauth2Auth": [
+ "https://contoso.azure.com/.default"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "AadOauth2Auth": {
+ "type": "oauth2",
+ "description": "The Azure Active Directory OAuth2 Flow",
+ "flow": "accessCode",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "https://contoso.azure.com/.default": ""
+ },
+ "tokenUrl": "https://login.microsoftonline.com/common/oauth2/token"
+ }
+ },
"tags": [],
"paths": {
"/widgets": {
@@ -33,51 +52,29 @@
"200": {
"description": "The request has succeeded.",
"schema": {
- "type": "object",
- "properties": {
- "value": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Widget"
- },
- "x-ms-identifiers": [],
- "description": "The Widget items on this page",
- "x-typespec-name": "Widget[]"
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items",
- "x-typespec-name": "TypeSpec.Rest.ResourceLocation"
- }
- },
- "description": "Paged collection of Widget items",
- "required": [
- "value"
- ],
- "x-typespec-name": "Azure.Core.Foundations.CustomPage"
+ "$ref": "#/definitions/PagedWidgetSuite"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
"x-ms-examples": {
"Widgets_ListWidgets": {
"$ref": "./examples/Widgets_ListWidgetsSample.json"
}
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
}
}
},
@@ -92,8 +89,8 @@
{
"name": "widgetName",
"in": "path",
- "required": true,
"description": "The widget name.",
+ "required": true,
"type": "string"
}
],
@@ -101,19 +98,19 @@
"200": {
"description": "The request has succeeded.",
"schema": {
- "$ref": "#/definitions/Widget"
+ "$ref": "#/definitions/WidgetSuite"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
@@ -126,6 +123,9 @@
"patch": {
"operationId": "Widgets_CreateOrUpdateWidget",
"description": "Creates or updates a Widget asynchronously.",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
"parameters": [
{
"$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
@@ -133,68 +133,66 @@
{
"name": "widgetName",
"in": "path",
- "required": true,
"description": "The widget name.",
+ "required": true,
"type": "string"
},
{
"name": "resource",
"in": "body",
- "required": true,
"description": "The resource instance.",
+ "required": true,
"schema": {
- "$ref": "#/definitions/WidgetUpdate"
+ "$ref": "#/definitions/WidgetSuiteUpdate"
}
}
],
"responses": {
"200": {
"description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/WidgetSuite"
+ },
"headers": {
"Operation-Location": {
- "description": "The location for monitoring the operation state.",
"type": "string",
- "format": "uri"
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
}
- },
- "schema": {
- "$ref": "#/definitions/Widget"
}
},
"201": {
"description": "The request has succeeded and a new resource has been created as a result.",
+ "schema": {
+ "$ref": "#/definitions/WidgetSuite"
+ },
"headers": {
"Operation-Location": {
- "description": "The location for monitoring the operation state.",
"type": "string",
- "format": "uri"
+ "format": "uri",
+ "description": "The location for monitoring the operation state."
}
- },
- "schema": {
- "$ref": "#/definitions/Widget"
}
},
"default": {
"description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
"headers": {
"x-ms-error-code": {
"description": "String error code indicating what went wrong.",
"type": "string"
}
- },
- "schema": {
- "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
}
}
},
- "consumes": [
- "application/merge-patch+json"
- ],
"x-ms-examples": {
"Widgets_CreateOrUpdateWidget": {
"$ref": "./examples/Widgets_CreateOrUpdateWidgetSample.json"
}
- }
+ },
+ "x-ms-long-running-operation": true
},
"delete": {
"operationId": "Widgets_DeleteWidget",
@@ -206,23 +204,17 @@
{
"name": "widgetName",
"in": "path",
- "required": true,
"description": "The widget name.",
+ "required": true,
"type": "string"
}
],
"responses": {
"202": {
"description": "The request has been accepted for processing, but processing has not yet completed.",
- "headers": {
- "Operation-Location": {
- "description": "The location for monitoring the operation state.",
- "type": "string",
- "format": "uri"
- }
- },
"schema": {
"type": "object",
+ "description": "Provides status details for long running operations.",
"properties": {
"id": {
"type": "string",
@@ -237,24 +229,29 @@
"description": "Error object that describes the error when status is \"Failed\"."
}
},
- "description": "Provides status details for long running operations.",
"required": [
"id",
"status"
- ],
- "x-typespec-name": "Azure.Core.Foundations.OperationStatus